欢迎来到天天文库
浏览记录
ID:58863737
大小:275.53 KB
页数:22页
时间:2020-09-22
《基于51单片机的红绿灯模拟系统.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于增强型8051单片机的红绿灯模拟控制系统2012年11月13日目录系统功能介绍21.1系统结构框图21.2各部分功能说明3二、系统方案32.1系统设计与结构框图32.2方案论证与比较32.2.1虚拟仿真模块32.2.2控制器模块42.2.3交通灯显示模块52.2.4数码管显示模块62.2.5蜂鸣器模块82.2.6矩阵键盘模块8三、方案不足与改进方案93.1控制器模块93.2显示输出模块(数码管模块、红绿灯模块)93.3输入模块(矩阵键盘模块)93.4拓展模块9四、项目清单与注意事项104.1项目清单104.2
2、注意事项104.2.1模拟仿真104.2.2连接电路104.2.3软件调试与故障排除10五、程序代码10附录、相关芯片资料2174HC573中文资料21摘要:本系统是以STC公司的STC12C5A60S2单片机为主控制器,通过74HC573驱动4位数码管显示红绿灯倒计时,能实现红绿灯的模拟控制,并具有比较强的适应性和可调性。关键词:4×4矩阵键盘;STC12C5A60S2;74HC573。系统功能介绍1.1系统结构框图1.2各部分功能说明(1)红绿灯模块可以实现红绿灯系统的显示模拟,在黄灯亮时,另一个方向上的红灯
3、会闪烁;(2)数码管模块可以显示路口各个方向红灯、黄灯和绿灯的持续时间,并进行倒计时;(3)矩阵键盘模块可以进行对倒计时时间的修改,修改的时间可由数码管显示;(4)蜂鸣器在交通灯的状态发生改变时,会有不同的声音提示。二、系统方案2.1系统设计与结构框图根据题目要求,本系统主要由虚拟仿真模块,控制器模块,交通灯显示模块,数码管显示模块,蜂鸣器模块,矩阵键盘模块组成。2.2方案论证与比较2.2.1虚拟仿真模块我们决定先通过proteus软件仿真,设计好电路与程序,再动手焊接系统板。因为通过软件仿真,设计系统时灵活性会
4、大一些,可以提前选择好硬件,便于硬件部分的修改,也可以做到软件部分的即时调试。仿真时的状况如图2-2所示:图2-1Proteus软件欢迎界面图2-2Proteus仿真情况2.2.2控制器模块控制器模块我们决定选择STC公司的STC12C5A32S2单片机。STC12C5A60S2/AD/PWM系列单片机是STC生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍。内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D
5、转换(250K/S,即25万次/秒),针对电机控制,强干扰场合。(《STC12C5A32S2系列单片机器件手册》);内部结构相对简单,可用作入门级芯片;而且我们手中已经有几块STC12C5A32S2系列单片机最小应用系统,便于硬件电路的焊接。最小系统电路图参考图2-3:图2-3最小系统电路图2.2.3交通灯显示模块方案一:采用四组红黄绿三色二极管,通过10K的排阻分别连至单片机的P1.0-P1.6口,通过改变P1.1-P1.6的输出电平控制交通灯的亮灭。缺点是占用I/O口较多,但易于编程控制;方案二:采用74HC
6、573芯片控制四组发光二极管。通过P0.0-P0.5向74HC573发送信号,P2中某一I/O口控制芯片的开启和关闭。优点是能比较大的节约I/O口,缺点是会增加编程复杂度。由于单片机的I/O口足够用来实现系统的基本功能,所以我们决定采用方案一。如果之后扩展功能时还会需要更多的I/O口时,可以考虑换成方案二。方案一的电路图如下:图2-4交通灯模块电路图(方案一)2.2.4数码管显示模块方案一:采用两片74HC595芯片驱动共阳极四位数码管。一片控制段选,一片控制位选。位选信号通过三极管9012放大。优点是占用I/O
7、口较少,但在仿真过程中出现了一些问题。问题如下:静态显示时数码管显示正常,但动态仿真时虽然单片机的各个引脚的电平变化正常,但位选信号(9012的基极输入信号)的一直为零。更改限流电阻以后,数码管全部显示8。经查阅资料,得知在程序和硬件电路正常显示的情况下,数码管不正常显示的原因,可能是因为数码管的响应时间过短,对PNP三极管的仿真速度太低。资料中建议使用NPN型三极管,并将数码管的minimumTriggerTime值调高。这也说明了仿真与硬件电路之间的不统一。电路图如下图所示:方案二:采用两片74HC573芯片
8、驱动共阴极四位数码管。一片控制段选,一片控制位选。通过P0口控制输出电平,故需要上拉电阻。上拉电阻采用10K的排阻。优点是软件控制比较简单,但相比方案一要占用更多的I/O口。此方案在仿真时也出现了问题,即数码管显示乱码。之后通过对数码管进行软件清屏的方法使数码管显示正常。方案二的电路图如下图所示:为了使硬件电路与仿真有较高的统一性,我们决定采用方案二。图2-5数码管电路仿
此文档下载收益归作者所有