新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 串行口动态扫描显示电路编程实例

串行口动态扫描显示电路编程实例

作者:时间:2011-05-06来源:网络收藏

单片机并行I/O口数量总是有限的,有时并行口需作其他更重要的用途,一般也不会用数量众多的并行I/O口专门用来驱动,能否用80C51的通信口加上少量I/O及扩展芯片用于呢?答案是肯定的。
80C51的通信口是一个功能强大的通信口,而且是相当好用的通信口,用于驱动再合适不过了,下面就根据这种需要设计一个用两个通信口线加上两根普通I/O口,设计一个4位LED显示电路。当然只要再加上两根I/O口线即可轻易实现8位LED的显示电路。

本文引用地址:http://www.eepw.com.cn/article/150792.htm

图4 串行LED电路
图4中采用C2051单片机,同时用廉价易得的74LS164和74LS138作为扩展芯片。74LS164是一个8位串入并出的移位寄存器,其此处的功能是将C2051串行通信口输出的串行数据译码并在其并口线上输出,从而驱动LED数码管。74LS138是一个3-8译码器,它将单片机输出的地址信号译码后驱动相应的LED。但74LS138电流驱动能力较小,为此,电路使用了未级驱动三极管2SA1015作为地址驱动。
将4只LED的段位都连在一起,它们的公共端则由74LS138分时选通,这样任何一个时刻,都只有一位LED在点亮,也即显示方式。使用串行口进行LED通信,程序编写相当简单,用户只需将需显示的数据直接送串口发送缓冲器,等待串行中断即可,看看下面的程序。 · 程序清单

DIY机械键盘相关社区:机械键盘DIY




评论


相关推荐

技术专区

关闭