51单片机实现交通信 灯
文章目录
- 51单片机实现交通信 灯
-
- 实验环境
- 仿真图
- 实验原理
- 代码实现
- 成果图
- 资源下载
实验环境
软件: Keil5+Proteus7
元件:
AT89C51 * 1,
BUTTON * 1,
7SEG-MPX2-CA * 1,
LED-GREEN * 8,
LED-RED * 4,
LED-YELLOW * 4

实验原理
7SEG-MPX2-CA数码管
7SEG-MPX2-CA数码管是一个两位数的阳极数码管,有10个针脚,通过标 a-dp八个针脚控制,LED灯的显示,通过标 为1,2的针脚控制显示的是个位或是十位的数码管。
要通过数码管显示具体数字,7SEG-MPX2-CA由于是一个阳极的数码管,所以需要接收在针脚上接收相应的低电平来显示,如如果要显示数字0,则标 a-dp的针脚需要接收1100 0000也就是0xF9的信 ,同时如果不设置针脚1,2信 ,便会个,十位都显示相同的数字1,于是需要通过对针脚1设置低电平,针脚2设置为高电平实现个位的发光,相反设置则十位的发光。
通过人眼的余晖效应,我们可以设置1,2信 变化,来让两个单片机显示自己想要的不同数字,由于人眼的分辨频率,远远跟不上数码管闪烁的频率,虽然是个十位数码管,不同时间进行闪烁,但在人眼看来仿佛是一起亮起来的。
计时器/计数器
定时/计数器T0和T1分别是由两个8位的专用寄存器组成,即定时/计数器T0由TH0和TL0组成,T1由TH1和TL1组成。此外,其内部还有2个8位的特殊功能寄存器TMOD和TCON,TMOD负责控制和确定T0和T1的功能和工作模式,TCON用来控制T0和T1启动或停止计数,同时包含定时/计数器的状态。
16位的定时器/计数器实质上就是一个加1计数器,其控制电路受软件控制、切换。 当定时器/计数器为定时工作方式时,计数器的加1信 由振荡器的12分频信 产生,即每过一个机器周期,计数器加1,直至计满溢出为止。
定时器的定时时间与系统的振荡频率有关。因一个机器周期等于12个振荡周期,所以计数频率fcount=1/12osc。
-
两个字节最大数据为65536(十进制),或者0FFFFH。
-
高字节为TH0=(65536-X)/256,就是除以256后的整数部分。
-
低字节为TL0=(65536-X)%256,减去高字节后余下的部分。
代码实现
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!