交通灯设计报告(初稿)--改

交通灯设计报告(初稿)--改

ID:33651289

大小:1.64 MB

页数:34页

时间:2019-02-28

交通灯设计报告(初稿)--改_第1页
交通灯设计报告(初稿)--改_第2页
交通灯设计报告(初稿)--改_第3页
交通灯设计报告(初稿)--改_第4页
交通灯设计报告(初稿)--改_第5页
资源描述:

《交通灯设计报告(初稿)--改》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、东南大学仪器科学与工程学院学院课程设计报告课程设计名称:交通信号灯控制器设计小组成员:指导老师:王澄非报告日期:2013/12/7目录34一、设计任务……………………………..…...........................3二、总体方案………………………………………………….4三、原理图和硬件电路设计……………………………….....6四、软件&各模块功能实现……………………………….9五、设计总结………………………………………………….18六、参考文献………………………………………………….19七、附件材料………………………………....

2、........................334一、设计任务1.1题目要求利用51系列单片机、三原色发光二极管、八段数码管等器件,设计交通信号灯控制器,控制十字路口的交通秩序。该交通信号灯控制器(开机默认状态下)控制功能如下:(1)南北方向红灯亮,东西方向绿灯亮26s;南北方向红灯亮,东西方向绿灯闪烁2s;南北方向红灯亮,东西方向黄灯亮2s;东西方向红灯亮,南北方向绿灯亮26s;东西方向红灯亮,南北方向绿灯闪烁2s;东西方向红灯亮,南北方向黄灯亮2s;(2)每个方向用2个数码管显示对应亮灯到计时。(3)每个方向用3个三色发光管显示对应颜色(红色

3、、绿色和黄色)。(4)设置倒计时时间。为实现该功能,系统可以设置3个功能键,即:S1—设置键、S2—数值增加、S3—数值减小。通过对数字键操作,可以设定倒计时时间;通过S1的操作次序确定当前的显示和调整内容,由S2和S3进行调整。S1可以有4种状态,对应调整内容见下表:(红灯时间为绿灯时间、绿灯闪烁时间及黄灯时间之和)S1的操作次序调整内容0正常显示倒计时1绿灯时间调整2绿灯闪烁时间调整3黄灯时间调整(5)倒计时时间也可通过串行通信接口来实现。1.2设计任务分析本项目主要实现交通灯的六种状态显示及三个控制按键功能。六种状态红、黄、绿灯之间的交替关系如

4、下表:南北路(SN)东西路(EW)状态值S1红灯亮30s倒计时绿灯亮26s26s倒计时S2红灯亮绿灯闪烁2s2s倒计时34S3红灯亮黄灯亮2s2s倒计时S4绿灯亮26s26s倒计时红灯亮30s倒计时S5绿灯闪烁2s2s倒计时红灯亮S6黄灯亮2s2s倒计时红灯亮二、总体方案2.1.设计流程图342.2.方案选择2.2.1MCS-51资源分配总体设计可以分为MCU控制模块,数码管倒计时显示模块,LED交通灯模块和按键调整模块。针对上述4个模块,合理分配I/O引脚资源,这样不仅能简化电路设计,节约资源,而且能缩短软件开发周期。具体I/O引脚资源分配如下:l

5、数码管倒计时显示模块:采用共阴极数码管显示倒计时,使用P0口作为七段数码管的段选信号控制端(使用74HC573进行数据锁存),选用P1^0~P1^2作为4个数码管的位选信号控制端(使用74HC138进行译码)。lLED交通灯模块:使用P2口作为LED灯的控制信号端。结合现有的硬件资源,采用贴片式发光二极管设计。l按键调整模块:由于只需3个按键,数目较少,拟采用独立按键进行设计。独立按键相比矩阵键盘不仅结构简单,而且软件操作也较为简单。lMCU控制模块:结合题目要求,采用STC89C51单片机设计。加上必要的晶振电路和复位电路,构成51单片机最小系统。

6、其中外围晶振采用11.05926MHZ。(出于计算方便,在计算定时器T1初值时以12MHZ计算)2.2.2软件设计功能子函数针对课程设计要求,对方案确定的4个模块和方案的不同功能,设计不同的功能子函数来实现。l功能1:每隔1s数码管显示数值减1:利用定时器/计数器T0产生。T0计数50000次,产生50ms定时。溢出中断产生20次,即产生准确的50ms*20=1s的计时。设置中断函数“timer0()interrupt1using1”来实现该功能。l功能2:数码管显示倒计时:设置显示函数Display(uchara,ucharb)来对南北SN和东西E

7、W方向的状态进行倒计时显示。l功能3:LED交通灯红黄绿灯亮灭和闪烁:实现该功能,只需要在主函数进程中对P2口进行赋值即可,此处不设置单独的功能子函数。l功能4:按键调整功能:采用P3口进行控制,利用查询方式进行按键处理。通过子函数KEY()来实现。功能1的实现功能1:每隔1s数码管显示数值减1:利用定时器/计数器T0产生。T0计数50000次,产生50ms定时。溢出中断产生20次,即产生准确的50ms*20=1s的计时。设置中断函数“timer0()interrupt1using1”来实现该功能。34说明:在硬件电路中实际晶振值为11.05926M

8、Hz。但为了计算方便,在定时器T0初值计算时采用12MHz计算。timer0()interrupt1usin

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。