- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机交通控制系统的通行方案设计
在繁忙的路口设计一个十字路口红绿灯控制器,能够控制十二盏交通信号灯的系统,以AT89S51单片机为核心进行的的控制系统,本系统利用单片机的定时器定时,令十字路口的红绿灯交替点亮,该测控系统具有如下基本功能与特点:
= 1 \* GB2 ⑴在十字路口东西南北各设置红、黄、绿三种信号灯,东西、南北方向轮流放行。当东西方向放行、南北方向禁行时,东西方向绿灯亮23秒,闪4秒,然后黄灯亮3秒,南北方向红灯亮30秒;当南北方向放行、东西方向禁行时,南北方向绿灯亮23秒,闪4秒,然后黄灯亮3秒,东西方向红灯亮30秒。如此循环,实现交通灯定时控制。
= 2 \* GB2 ⑵当有急救车到达时,路口的信号灯全部变红灯,以便急救车通过,急救车的通行时间为10秒,急救车过后,交通灯恢复先前状态。
= 3 \* GB2 ⑶具有结构简单、可靠性高、成本低、实时性好。
硬件电路设计
硬件电路从功能模块上划分有:
时钟电路
中断系统
显示电路
硬件功能结构框图,硬件功能结构框图如下图所示:
时钟电路:?时钟电路的作用是产生单片机工作所需要的时钟脉冲序列。?
中断系统:?中断系统的作用主要是对外部或内部的终端请求进行管理与处理。AT89S51共有5个中断源,其中又2个外部中断源和3个内部中断源。
时钟定时控制部分?
?????由于80C51单片机内部有一个用于构成振荡器的高增益反向放大器,此放大器的输入和输出端分别是引脚XTAL1和XTAL2,在XTAL1和XTAL2上外接时钟源即可构成时钟电路,该电路采用的是内部方式。
?
二极管的负极共阴极连接,正极分别通过上拉电阻接80C51单片机的外部接口P1.0、P1.1、P1.2、P1.3、P1.4、P1.5口,我们可以通过控制单片机P1口的数据输出来控制二极管的亮灭
80c51单片机芯片
VCC:电源电压?
GND:接地?
P0口:P0口是一组8位双向I/0口。P0口即可作地址/数据总线使用,又可以作为通用的I/O口使用。当CPU访问片外存储器时,P0口分时先作低8位地址总线,后作双向数据总线,此时,P0口就不能再作I/O口使用了。在访问期间激活要使用上拉电阻。?
P1口:Pl?是一个带内部上拉电阻的8准位双向I/O口,P1作为通用的I/O口使用。?
P2?口:P2?是一个带有内部上拉电阻的8?位准双向I/O?口,P2即可作为通用的I/O口使用,也可以作为片外存储器的高8位地址总线,与P0口配合,组成16位片外存储器单元地址。?
P3?口:P3?口是一组带有内部上拉电阻的8?位准双向I/0?口。P3?口除了作为通用的I/O口使用之外,每个引脚还具有第二功能。
XTAL1:振荡器反相放大器及内部时钟发生器的输入端。
8051有5个中断源,它们是两个外中断INT0(P3.2)和INT1(P3.3)、两个片内定时/计数器溢出中断TF0和TF1,一个是片内串行口中断TI或RI,这几个中断源由TCON和SCON两个特殊功能寄存器进行控制,
红黄绿灯显示电路
中断控制电路
系统软件程序的设计
定时器原理
定时器工作的基本原理其实就是给初值,让它不断加1直至减完为模值,这个初值是送到TH和TL中的。它是以加法记数的,并能从全1到全0时自动产生溢出中断请求。因此,我们可以把计数器记满为零所需的计数值,即所要求的计数值设定为C,把计数初值设定为TC?可得到如下计算通式:?
TC=M-C?
式中,M为计数器模值。计数值并不是目的,目的是时间值,设计1次的时间,即定时器计数脉冲的周期为T0,它是单片机系统主频周期的12倍,设要求的时间值为T,则有C=T/T0。计算通式变为:?
T=(M-TC)T0?
模值和计数器/定时器工作方式有关。。在方式0时M为8192;在方式1时M的值为65536;在方式2和3为256。就此可以算出各种方式的最大延时。如单片机的主脉冲频率为12MHZ,经过12分频后,若采用方式0最大延时只有8.129毫秒,采用方式1最大延时也只有65.536毫秒。
软件延时原理
MCS-51的工作频率为12MHZ,机器周期与主频有关,机器周期是主频的12倍,所以一个机器周期的时间为12*(1/12MHZ)=1us。我们可以知道具体每条指令的周期数,这样我们就可以通过指令的执行条数来确定延时的时间,但同时由于单片机的运行速度很快其他的指令执行时间可以忽略不计。
相应的程序(延时1ms):
?DELAY:???MOV?R7,#02H?
DL1:?????MOV?R6,#0FFH?
DL2:?????DJNZ?R6,DL2?????????
DJNZ?R7,DL1??????????
RET
中断原理
本系统主要使用了外部中断,中断信号有引脚INT0和INT1输入,
文档评论(0)