51单片机实现交通信 灯

51单片机实现交通信 灯

文章目录

  • 51单片机实现交通信 灯
    • 实验环境
    • 仿真图
    • 实验原理
    • 代码实现
    • 成果图
    • 资源下载

实验环境


软件: Keil5+Proteus7

元件:

AT89C51 * 1,

BUTTON * 1,

7SEG-MPX2-CA * 1,

LED-GREEN * 8,

LED-RED * 4,

LED-YELLOW * 4

image-20220407211833462

实验原理


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进行处理,非常感谢!

上一篇 2022年5月12日
下一篇 2022年5月12日

相关推荐