- 4
- 0
- 约1.19千字
- 约 24页
- 2016-07-22 发布于湖北
- 举报
键盘与显示接口概论
单片机原理及应用;9.1 键盘接口;9.1 键盘接口;9.1 键盘接口;9.1 键盘接口;;9.1 键盘接口;9.1 键盘接口;9.1 键盘接口;9.2 LED数码管显示接口;§9.1.1 数码管结构及显示原理;COM;共阴极和共阳极的段选码互为反码 。;§9.1.2 数码管的静态显示方式; 在实际应用中,静态显示通常利用单片机的串口工作方式0,利用串并转换电路实现。如图9-7所示,利用4个74LS164的输出端口分别驱动4个LED数码管,74LS164的数据输出端口D0-D7分别与数码管的a~h相连,只要在该位的段选线上保持段选码电平,该位就能保持相应的显示字符。由于每一位由一个8位输出口控制段选码,所以在同一时刻各位可以显示不同的字符。 ;例9-1 串行接口控制的静态LED显示。89C51单片机串口工作在移位寄存器方式(方式0),扩展74LS164来驱动LED静态显示。工作在移位寄存器方式时,串行口的TXD端输出移位同步时钟,RXD端输出串行数据,即??选码数据。 0-9999的四位数显示程序如下: ;9.2 LED数码管显示接口;§9.1.3 数码管的动态显示方式;位选线的驱动
位选线为什么需要驱动?
位选线如何驱动?ULN2003—7位达林顿驱动器;9.2 LED数码管显示接口;1.查段选码:
2. P2输出段选码
3. P1输出位选码
注意:位选码的值总是只有1个位为1。;4. 扫描一次;void disp( void)
{uchar i,zf,wxm;
wxm=0x01;
for(i=0;i6;i++)
{P1=0; //关显示
zf=DBYTE[0x30+i]; //取待显示字符
P2=table[zf]; //去段选码输出
P1=wxm; //输出位选码
wxm = wxm 1; //位选码左移一位
delay1ms( ); } };void main( void)
{ DBYTE[0x30]=0;
DBYTE[0x31] =1;
DBYTE[0x32] =2;
DBYTE[0x33]=3;
DBYTE[0x34] =4;
DBYTE[0x35] =5;
while(1) disp( );
}
原创力文档

文档评论(0)