购买

¥ 30.0

加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 单片机课程设计--交通灯控制系统

单片机课程设计--交通灯控制系统.docx

单片机课程设计--交通灯控制系统

is_691147
2019-03-01 0人阅读 举报 0 0 暂无简介

简介:本文档为《单片机课程设计--交通灯控制系统docx》,可适用于工程科技领域

单片机课程设计报告目录概述本次课程设计的内容与目的交通灯简介本交通灯系统的特点系统硬件设计系统工作原理系统电路原理图硬件各部分组成及功能系统的工作过程系统软件设计软件功能及结构软件源程序系统调试调试步骤调试过程课程设计的体会.参考文献概述本设计是根据单片使机原理就交通灯的系统作出的由于车辆的增多所以交通灯在现代道路交通中起着越来越重要的作用。为了解决这些问题我们更应该提高交通控制和管理水平合理使用现有交通设施充分发挥其能力提高交通效率促进和谐交通的建立。本次课程设计的内容与目的本次课程设计的题目是mdashmdash交通灯控制系统的设计。主要内容包括:利用实验箱上的单片机、LED指示灯、数码管显示器模拟十字路口交通灯控制时序用个LED指示灯分别模拟A、B道的红、黄、绿指示灯用四个七段LED显示器分别显示A、B道的通放行时间A、B道轮流放行。通过本次课程设计旨在达到以下目的:进一步熟悉和掌握单片机的结构及工作原理掌握单片机的接口技术及相关外围芯片的特性控制方法掌握以单片机核心的电路设计的基本方法和技术了解有关电路参数的计算方法通过实际程序设计和调试逐步掌握模块化程序设计方法和调试技术通过完成一个包括电路设计和程序开发的完整过程使学生了解开发一单片机应用系统的全过程为今后从事相应工作打下基础培养学生综合运用所学知识分析问题和解决问题的能力。交通灯简介交通灯在城市交通中起着重要的作用它与人们日常生活密切相关是人们出行的安全保障。如今随着人们生活水平的提高对交通管制也提出了更高的要求因此提供一个可靠、安全、便捷的多功能交通灯控制系统有着现实的必要性。该设计在熟练掌握单片机原理及其应用技术的使用方法基础上综合应用单片机原理、微机原理、微机接口技术、proteus软件等课程方面的知识设计一个采用ATC单片机控制的交通灯控制电路。能方便的对交通灯进行控制使交通更和谐。本交通灯系统的特点本系统结构简单操作方便可实现自动控制具有一定的智能性对优化城市交通具有一定的意义。本设计将各任务进行细分包装使各任务保持相对独立能有效改善程序结构便于模块化处理使程序的可读性、可维护性和可移植性都得到进一步的提高。系统硬件设计系统工作原理本系统利用实验箱上的单片机、LED指示灯、数码管显示器模拟十字路口交通灯控制时序用个LED指示灯分别模拟A、B道的红、黄、绿指示灯用四个七段LED显示器分别显示A、B道的通放行时间。系统原理框图如图():ATC单片机ATC数据信号LED数码管段码振荡电路片选盏LED图()系统原理框图系统电路原理图系统完整的电路原理图如图():图()系统电路原理图硬件各部分组成及功能()时钟电路部分本系统采用内部时钟产生方式:在和两端跨接陶瓷谐振器与内部反相器构成稳定的自激振荡器采。晶振采用MHz的振荡频率和两个Pf瓷片电容C、C两个电阻对频率有微调作用。其电路如图():图()晶体振荡电路()路口指示灯部分采用红黄绿三种颜色的发光二极管共个分为组代表路口的交通灯其中每一组控制一个路口,由单片机的P口驱动电路图如图():图()路口指示灯电路()显示部分采用四位一体共阴数码管,分别显示南北和东西灯的剩余时间片选部分和数码段显示部分,分别接单片机管脚的P口和P口,具体的共阴数码管管脚分布位置见图():图()数码管显示电路()定时电路采用定时器计数器嵌套的方式实现秒精确定时具体原理是:定时器T实现ms定时并在定时时间到达时将P口取反输出周期为ms的方波信号P接计数器T计数脉冲输入端P计数周期为次。从而实现秒定时该部分电路如图()图()定时电路系统的工作过程本系统的工作过程共包含个状态而且始终循环。这个状态的内容如下图()所示。状态编号东西方向道路南北方向道路绿灯亮显示器倒计时s红灯亮显示器倒计时s绿灯闪每隔s闪一次显示器倒计时s红灯亮显示器继续倒计时黄灯亮显示器倒计时s红灯亮显示器继续倒计时红灯亮显示器倒计时s绿灯亮显示器倒计时s红灯亮显示器继续倒计时绿灯闪每隔s闪一次显示器倒计时s红灯亮显示器继续倒计时黄灯亮显示器倒计时s图()系统工作过程系统软件设计软件功能及结构本程序主要实现定时和状态切换两大功能。其中定时功能由中断程序实现而状态切换则在中断服务子程序中完成主程序负责循环显示功能。程序流程图如下图()所示。开始初始ATC初始化显示器、定时计数器YN循环显示当前计时值s定时是否到达?两通道计时值同时减同时送到显示器显示控制外部盏LED灯调整两通道计时值图()系统程序流程图其中s定时器的程序采用定时计数器嵌套的方式编写定时计数器工作在定时方式定时初值为CBH定时计数器工作在计数方式初值为FH。程序结构如流程图():P=装入T计数初值启动T装入T初值并启动TN定时时间是否到?YP取反N计数次数到了吗?秒定时到图()定时程序流程图软件源程序ORGHAJMPMAINORGBHAJMPITI计数器中断ORGBHAJMPITI定时器中断LEDMAP:DBFH,H,BH,FH,H,DH,DH,H,FH,FH到八段管显示码DELAY:MOVR,#H显示延时子程序DELAY:MOVR,#AHDELAY:DJNZR,DELAYDJNZR,DELAYRETDISPLAYLED:MOVR,#HMOVR,#H共个八段管MOVR,#H从左边开始显示LOOP:MOVDPTR,#HMOVA,#HMOVXDPTR,A关所有八段管MOVA,RMOVDPTR,#H段控制口MOVXDPTR,AMOVDPTR,#H位控制口MOVA,RMOVXDPTR,A显示一位八段管ACALLDELAYMOVA,RRRA显示下一位MOVR,AINCRDJNZR,LOOPRETMAIN:MOVH,#H显示清零MOVH,#HMOVH,#HMOVH,#HMOVH,#HMOVH,#HSETBF设置标志位区分当前是东西红灯还是南北红灯SETBEASETBETSETBET开中断允许MOVR,#每次定时sMOVR,#南北通道定时值MOVR,#东西通道定时值DELAY:SETBPms方波输出端口接PMOVTMOD,#HT工作在定时方式T工作在计数方式MOVTH,#FHMOVTL,#FH计数值为SETBTRT开始计数DELAY:MOVTH,#CHMOVTL,#BH定时时间为msSETBTR开始定时MLOOP:ACALLDISPLAYLEDAJMPMLOOP循环显示八段管ITI:CPLP每ms将P取反MOVTH,#CHMOVTL,#BH重装定时初值RETIITI:DECRDECRDECR两个通道计时均减MOVA,RMOVB,#DIVABMOVDPTR,#LEDMAPMOVCA,ADPTRMOVH,AMOVA,BMOVCA,ADPTRMOVH,A将南北通道当前计时值送出显示MOVA,RMOVB,#DIVABMOVDPTR,#LEDMAPMOVCA,ADPTRMOVH,AMOVA,BMOVCA,ADPTRMOVH,A东西通道当前计时值送出显示JBF,DXF=为南北红灯NB:CJNER,#,NB南北绿灯是否已经亮满s若不是则跳转MOVR,#南北绿灯闪烁s东西红灯亮MOVP,#HCPLPSETBPRETINB:CJNER,#,NB判断南北当前定时值是否大于sNB:JCNB小于s跳转到NBMOVP,#HSETBP东西红灯亮SETBP南北绿灯未亮满s,则继续亮RETINB:CJNER,#,NB计时值是否到达s不是则转移MOVR,#计时值到达秒将置入南北计时值AJMPNBNB:MOVP,#HSETBP东西红灯亮SETBP南北黄灯亮CJNER,#H,NB计时s是否结束若不是则退出CPLFs计时完成切换两通道标志位MOVR,#MOVR,#MOVR,#重置初值NB:RETINB:JCNB计时值小于s则跳转CPLP南北绿灯闪烁SETBP东西红灯亮RETIDX:CJNER,#,DX判断计时是否到达s若不是则跳转MOVR,#计时到达s后东西绿灯闪烁sMOVP,#HCPLPSETBPRETIDX:CJNER,#,DXDX:JCDXMOVP,#H东西绿灯亮s南北红灯持续亮SETBPSETBPRETIDX:CJNER,#,DXMOVR,#AJMPDXDX:MOVP,#H东西黄灯亮s南北红灯继续亮SETBPSETBPCJNER,#H,DXCPLFMOVR,#MOVR,#MOVR,#重置计时初值DX:RETIDX:JCDXCPLPSETBPRETI东西绿灯闪南北红灯亮系统调试调试步骤①连接好实验箱相关元件检查用到的元件是否完好无损②输入完整程序编译后全部执行观察执行结果比较其是否符合预期③显示结果与要求出现明显区别选择跟踪单步执行发现有问题的程序部分进行修改④执行修改后的程序实现所要求的交通灯控制功能。调试过程①建立程序。新建一个源程序窗口输入完整程序将文件名后缀改为asm后保存之后选好编译器然后进行编译。编译过程中如果出现错误会在信息窗口中显示出来双击错误信息可以在源程序中定位所在行纠正错误后再次编译知道没有错误并进行下一步执行。②编译无误后执行源程序第一次编译执行后发现译码管数字显示很淡于是改变了译码管的显示时间使其显示时间增长。③同时红绿灯显示不正确在东西方向或者南北方向中的一个方向上显示红灯时另外一个方向在黄灯显示时出现问题另外在进入交通灯显示的第二个循环时译码管显示结果出现一段时间的错误乱码。我们修改了延时程序以及程序后半部分的判断程序选择跟踪单步执行结果观察每一步程序执行后相关寄存器内的存储值并与理论值进行比较再对程序中对应的数值进行修改。中间我们发现程序在执行时在一个调用程序处进入了死循环导致后边的所有程序都无法正常执行。后来我们在程序中加入了中断控制程序使交通灯在进入第二个循环后正确显示同时解决了译码管的乱码显示。④设计源程序时漏掉了一个功能导致译码管只显示了一个路口的时间计数而另外一个路口没有时间计数显示。我们在程序中加入相应显示程序使得译码管可以对两个方向路口的红绿灯同时计数显示。⑤修改完成后先设置一个较短的时间进行循环观察显示灯的颜色显示以及译码管时间计数是否正确循环是否正常。之后慢慢增加设置时间至要求大小显示灯以及译码管均正确显示调试工作完成。课程设计的体会本次课程设计mdashmdash交通灯控制系统是以单片机ATC芯片为核心部件盏LED灯以及四个八段数码管作为外设实现了通过C芯片设置来控制十字路口红、黄、绿灯点亮时间来进行交通控制。本次课程设计使我对单片机的工作原理有了更深刻的认识例如对晶振电路、定时器电路的理解。我深刻的理解到单片机的价值在于灵活运用它的IO端口以及其千变万化的程序。本设计中我们用IO端口驱动数码管以及引接外部LED灯。掌握了许多在以前学习中混淆不清的知识点。整个实验过程不仅锻炼了自己的动手能力而且真正作到了理论联系实际的重要性体会到了其中失败与成功的滋味收益匪浅。同时在调试程序的过程中虽然遇到许多意想不到的错误但是凭着坚持不懈的毅力以及巧妙的调试步骤最终都予以克服。当最终看到八段数码管正确计时的时候我的心中非常激动!同时我也认识到自己的知识不足例如刚开始设计程序时没有正确使用中断导致数码管的显示异常这令我们百思不得其解最终在同学和老师的指点下程序改用中断方式编写解决了这一问题。因此深刻理解软硬件结合的含义提高程序设计的水平这将是我以后努力提高的方面。在此也对在课设过程中帮助过我们的老师和同学表示深深的谢意。.参考文献【】《单片机原理与应用设计》张毅刚、彭喜元编著电子工业出版社。【】单片机原理及应用实验指导书(第二版)自动化学院测试工程系南京航空航天大学。

VIP尊享8折文档

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/16

单片机课程设计--交通灯控制系统

¥30.0

会员价¥24.0

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利