1、C51数据类型扩充sfr 声明8位寄存器sfr16 声明16为寄存器sbit 声明寄存器中某一位,某IO口bit 位变量声明用sbit声明某一个端口
sbit LED = P1^0;2、74HC573(锁存器)
WR端通过J13一直接地Y4~Y7端通过138译码器接P25~P27
控制部分代码:
P2 |= 0xe0; //选为Y7,使Y7=0P0 = 0xc0; //传输到锁存器的数据P2 &= 0X1F; //锁存,数据为第一行的取反3、数码管
数码管采用共阴级
数据:char code num[] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
com1~com7为位选,置高为选通:控制流程:
P2 |= 0Xc0; //Y6C = 1P0 = 0X01; //钻中第一位数码管com1P2 &= 0X3F; //Y6C = 0; LOCKP0 = 0xff; //消隐//当 P2 |= ...不起作用时,可能是P2之前的数据不对,导致无法用或操作修改为正确的数据;换成=即可P2 |= 0XF0; //Y7C = 1;P0 = num[3]; //数字数据P2 &= 0X0F; //Y7C = 0; LOCKdelay();//TODO:设置其他位4、ULN2003(反相器)
5、继电器/蜂鸣器蜂鸣器采用有源蜂鸣器
P2 = 0xa0; //Y5Cbuzz = 0; //close;open=1P2 &= 0x5f;P2 = 0xa0; //Y5Crelay = 0; //close;open=1P2 &= 0x5f;
新闻热点
疑难解答