找回密码
 注册
关于网站域名变更的通知
查看: 297|回复: 3
打印 上一主题 下一主题

利用80C31单片机串行口实现多个LED显示的一种简单方法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2016-8-15 15:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
摘要:介绍利用80C31单片机串行口、廉价的74HC164和74HC244集成块实现多个LED显示的一种简单方法,利用该方法设计的多路LED显示系统具有硬件结构简单、软件编程容易和价格低廉的特点。
& o4 z" W  x. |$ X( D3 X5 t    关键词:单片机  串行口  LED  显示  80C311 |7 x& B4 t0 Y8 S) L/ }$ S! B
在单片机系统中,常常用数码管(LED)做显示器。一般的显示器为4位或8位,即需要4个或8个LED。实现这种显示的方法比较多,也比较简单。但是,对于多个LED显示,就必须采取必要的措施才能实现。本文介绍一种设计方法,利用该方法设计的多路LED显示系统具有硬件结构简单,软件编程方便,价格低廉的特点,经在储蓄所大屏幕利率显示屏中应用,效果很好。
2 v; u2 h  x6 r; t$ H1 硬件电路# n! n4 o1 F2 @6 E. M
80C31单片机是MCS-51系列单片机的一种,它广泛应用于各种小型控制系统中。我们知道,80C31单片机有一个串行口可用于串行通讯,笔者发现它在方式0状态下,还可以扩展并行I/O口,从而实现多个LED显示,其硬件原理如图1所示。其中,74HC164为串行输入、并行输出移位寄存器,74HC164为单向总线驱动器,LED采用5EF1183KR型共阴极数码管。
: P( m; x9 l3 \" r8 s, Q5 N当80C31单片机复位时,串行口为方式0状态,即工作在移位寄存器方式,波特率为振荡频率的十二分之一。参看图2,器件执行任何一条将SBUF作为目的寄存器的命令时,数据便开始从RXD端发送。在写信号有效时,相隔一个机器周期后发送控制端SEND有效,即允许RXD发送数据,同时,允许从TXD端输出移位脉冲。第一帧(8位)数据发送完毕时,各控制信号均恢复原状态,只有TI保持高电平,呈中断申请状态。第一个74HC164把第一帧数据并行输出,LED1显示该数据(发送时序如图2所示)。然后,用软件将TI清零,发送第二帧数据。第二帧数据发送完毕,LED1显示第二帧数据,第一帧数据串行输入给第二个74HC164,LED2显示第一帧数据。依此类推,直到把数据区内所有数据发送出去。应该注意,数据全部发送完后,第一帧数据在最后一个LED显示。由于TXD端最多可以驱动8个TTL门,当LED显示器超过8个时,我们采用74HC244芯片驱动。每个74HC244有8路驱动,每一路可驱动8个LED,即每增加一个74HC244,可增加64个LED驱动。
' r0 H: V7 X$ `9 T. k6 n& Q2 软件编程. e  B' n/ [( i! w
该软件程序采用MCS-51系列单片机汇编语言编制,并把显示程序作为一个子程序,以便在主程序中调用。设LED为共限极显示器,共有64个,显示区首地十在内部RAM 20H单元,需显示的数据以BCD码依次存放在显示区,软件清单如下:
: Q1 V. V/ q6 w9 Y主程序9 \. [: u  K' d# C# b& |6 X0 `
ORG 0000H
* W2 W3 f# K) k  N" KSJMP START
$ m3 ^, t4 O/ }1 X( L! z5 @6 V; b. `ORG 0020H
) V: h7 z# H  s) [MOV R6,#40H
+ R+ p! G) s9 U$ Q; iMOV R0,#20H- K5 ^$ Y! K$ e8 R- e7 ?; I2 m  Q1 o
LCALL TRXD1 O$ \3 u% l6 u9 J. n
SJMP $% _  w* H0 w5 {9 D6 C9 s# S! A
显示子程序; {6 M9 G: B% y6 z- Q% R
TRXD:MOV DPTR,#DTAB8 l3 P6 B7 c/ p
DL0:MOV A,@R0
* E& f# j- B! u& o+ f2 PMOVC A,@A+DPTR
" U6 u, z6 V7 R3 w1 c2 ?MOV SBUF,A0 J( W& c; c' _* ~" C- N$ R0 I7 ]
DL1:JNB TI,DL11 U5 D* @6 b1 n& Y% w
CLR TI) K3 R" w# e4 a
INC RO
6 g3 v" i; E. Q3 DDJNZ R6,DL09 \  b$ z6 J; q# z
RET( Y! V( r6 y6 }+ Q4 F6 p7 e
DTAB:3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH

该用户从未签到

2#
发表于 2016-8-16 11:33 | 只看该作者
谢谢O(∩_∩)O哈哈~谢谢O(∩_∩)O哈哈- _, o" I1 T1 l- w' T

该用户从未签到

3#
发表于 2016-11-30 10:21 | 只看该作者
谢谢O(∩_∩)O

该用户从未签到

4#
发表于 2016-12-6 10:48 | 只看该作者
谢谢O(∩_∩)O
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-6 10:50 , Processed in 0.140625 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表