单片机实验——数码管显示
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机实验——数码管显示
数码管显示
一、数码管静态显示
1、电路图
图1
2、电路分析
该电路采用串行口工作方式进行串行显示实验,串行传输数据为8位,只能从RXD端输
入输出,TXD端用于输出同步移位脉冲。当CPU 执行一条写入发送缓冲器SBUF的指令时,产生一个正脉冲,串行口开始将发送缓冲器SBUF 中的8位数据按照从低位到高位依次发送出去,8位数据发送完毕,发送结束标志TI置1,必须由软件对它清0后才能启动发送下一帧数据。
因此,当输完8个脉冲后,再一次来8个脉冲时,第一帧的8位数据就移到了与之相连的第二个74LS164中,其他数据依此类推。
3、流程图
发送数据
二、数码管动态显示
1、电路图
图2
2、电路分析
R1-R7电阻值计算:一个7-seg 数码管内部由8段LED 组成,因此导通电压和电流与LED 灯相同,LED 导通压降大概在 1.5V-2.2V ,电流3mA-30mA ,单片机的工作电压是5V ,
所以
一般取Rmin 和Rmax 中间值,330Ω、470Ω、510Ω。
由于P0口内部没有上拉电阻,所以在P0
口接1003025Im min 1325Im max =-===-==mA V V an U R K mA
V V in U R
排阻,上拉电压。如果没有排阻的话,接上拉电阻时需要考虑数码管的电流,如果太小的话,是驱动不了数码管的。如图3:
发现电流大于5mA时,数码管才能亮,与前面电流最小3mA不符,因此计算数码管电流时使其在10mA-20mA之间,确保能驱动数码管亮。
两个74HC573实现对六位数码管的段选和位选,控制端为LE(第11脚)。
3、思路分析
先使第一个573输出同步,把数据送入573中,然后锁存,第二个573输出同步,打开第一个数
码管,这样就把第一个数显示在了第一个数码管上,然后以此类推,把数据送到相应的数码管上显示,进行短暂的延时,在频率快的时候,人的眼睛看的是数码管一直在显示,实际上是以特别快的频率在闪烁。(必须进行一个短暂的延时,延时时间可根据实际情况调整。如果没有延时的话,数码管上的电流在瞬间是达不到LED的导通电流,所以数码管不会显示,经过proteus仿真实验论证确实如此。)
4、动态显示流程图
开始
初始化
573
段选573锁存,位选573打
开,送入数据选择数码管
延时
结束
5、实验总结
在用proteus仿真用573搭载电路的动态数码管显示时,有的数字显示不出来,但是在低频的时候会显示出来,然后频率逐渐变快,数字就没有了,比如:要求六位数码管以次显示123456,结果显示的是1234 6,5是显示不出来的,经过多次调试,发现一般只能显示出来偶数。
附:
74LS164引脚图及功能介绍
引
脚图
功能图
74LS164为TTL 单向8位移位寄存器,可实现串行输入,并行输出。其中A 、B (第1、2脚)为串行数据输入端,2个引脚按逻辑与运算规律输入信号,共一个输入信号时可以并接。T (第8脚)为时钟输入端,可连接到串行口的TXD 端。每一个时钟信号的上升沿加到T 端时,移位寄存器移一位,8个时钟脉冲过后,8位二进制数全部移入74LS164中。R (第9脚)为复位端,当R=0时,复位;R=1时,允许脉冲。
功能表
74HC573脚图及功能介绍
SL74HC573 跟LS/AL573 的管脚一样。器件的输入是和标准CMOS 输出兼容
的;加上拉电阻,他们能和LS/ALSTTL 输出兼容。
当锁存使能端为高时,这些器件的锁存对于数据是透明的(也就是说输出同
步)。当锁存使能变低时,符合建立时间和保持时间的数据会被锁存。
输出能直接接到CMOS,NMOS 和TTL 接口上
操作电压范围:2.0V~6.0V
低输入电流:1.0uA
CMOS 器件的高噪声抵抗特性.