【单片机自学笔记】(8):c51中的复合赋值运算符,开发版上的数码管、74HC245、74HC138的使用方法,结构体数组

/ 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] = {   };
 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值