/ C51中的复合赋值运算符 /
变量 复合运算符 表达式
先把变量与后边的表达式进行某种运算,然后将运算的结果赋给前面的变量。
+= 加法赋值 ?+ 减法赋值
*= 乘法赋值 /= 除法赋值
%= 取模赋值 &= 逻辑与赋值
|= 逻辑或赋值 ~=逻辑非赋值
>>= 右移位赋值 <<= 左移位赋值
^= 逻辑异或赋值 逻辑异或不同为1,相同为0;
1^1=0 1^0=1 0^1 = 1 0^0=0
/开发板上的数码管及相关控制芯片/
开发板上的数码管3461AS-1是共阴极的。段选都是共线的,位选(每位数码管的阴极)跟led是共线的
74HC245
双向三态数据缓冲器,其作用是给低输出能力芯片增强驱动能力。(段选用)
管脚定义说明
符号 | 管脚名称 | 管脚号 | 说明 |
A0—A7 | 数据输入/输出 | 2—9 | |
B0— | 数据输入/输出 | 18—11 | |
OE(带上划线) | 使能输出 | 19 | OE=0, 正常工作 OE = 1,高阻态 |
DIR | 方向控制 | 1 | DIR=1,A入B出 DIR=0,A出B入 |
GND | 逻辑地 | 20 | |
VDD | 逻辑电源 | 10 |
74HC138
三输入,八输出,节省引脚资源。(位选用)
管脚说明
名称 | 功能说明 | 管脚号 |
Y0-Y6,Y7 | 数据输出 | 15-9,7 |
A0-A2 | 数据输入 | 1-3 |
E1(带上划线),E2(带上划线),E3 | 使能控制 | 4-6 |
VDD GND | 逻辑电源 逻辑地 | 16 8 |
让E1.E2引脚低电平,E3引脚高电平(否则不管A0-A2咋样,Y0-Y7都是高电平),A0、A1、A2输入就相当于3位二进制数,A0是低位,A1是次高位,A2是高位。Y0-Y7具体哪一个输出有效电平(低电平),就看输入二进制数对应的十进制数值。(000-111分别对应Y0-Y7)
c语言:结构体
"."是成员运算符,它是所有运算符中优先级最高的,因此它两边的东西可以当成一个整体来看。
引用结构体变量:
结构体变量名.成员名
例如:Student1.age++;
可以引用结构体变量的地址,也可以引用结构体变量的地址。
scanf("%d", &student1.num); //输入Student1.num的值
printf("%o",&student1); //输出结构体变量Student1的起始地址
结构体变量 的地址主要用作函数参数,传递结构体 变量的地址
结构体数组定义结构体数组的一般形式
第一种:
struct 结构体名
{成员表列} 数组名【数组长度】;
第二种
先定义一种结构体类型,之后再用此类型去定义结构体数组。
struct Person leader[3] = { };