您好,欢迎访问三七文档
单片机课程设计1第1章概述1.1题目的意义随着社会的发展,科学技术水平的日益提高。当前,大量的信号灯电路正向着数字化、小功率、多样化、方便人、车、路三者关系的协调,多值化方向发展随着社会经济的发展,城市交通问题越来越引起人们的关注。这些城市纷纷修建城市高速道路,在高速道路建设完成初期,它们也曾有效地改善了交通状况。然而,随着交通量的快速增长和缺乏对高速道路的系统研究和控制,高速道路没有充分发挥出预期的作用。而城市高速道路在构造上的特点,也决定了城市高速道路的交通状况必然受高速道路与普通道路耦合处交通状况的制约。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。在现代化的大城市中,十字交叉路口越来越多,在每个交叉路口都需要使用红绿灯进行交通指挥和管理,红、黄、绿灯的转换要有一个准确的时间间隔和转换顺序,这就需要有一个安全、自动的系统对红、黄、绿灯的转换进行管理,该系统是用于城市交通数据检测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。1.2系统的主要功能该系统能够自动且准确无误的控制路口的各个方向的红绿灯的亮灭和准确的车辆的行与等待时间及人行道通行与等待的控制,且能够一直的循环下去。不受外界的干扰。与设计要求相比,本设计加了一个行人或突发事件暂停车辆通行的按键,比较具有人性化。确定了设计课题后,我首先研究如何来达到设计要求。为实现设计结果,我应该使用到哪些电子元器件。当我思考明了后我开始为达到本设计的设计要求,查阅了大量的相关设计。在查阅相关设计的同时我也翻看了许多本设计中使用到的模块,研究它们的使用原理,如何与单片机的相应管脚相连。当搞清楚这些后,我开始使用Proteus进行电路设计。再设计程序之前我首先单片机课程设计2在稿纸勾画出了本设计当中应该涉及到的程序单元,以及各个部分应该如何衔接。做完这些工作之后我开始用keil软件来设计我的程序。1.3方案设计本设计以AT89C51为核心芯片来控制整个电路的正常工作。应用数码管来显道路当前通行状态所剩的时间,红、绿、黄灯作为指示当前通行状态的。本设计根据日常生活中的交通规则设计而成,由生活的启发,本设计一个采用了四组交通指示设备,因为所有的交通路口的显示时间相同,所以为了方便设计,本设计里只使用了一组数码管进行显示。根据人性化的设计,以人为本,本设计采用了一个紧急按键,如果有行人想要通过时,按下按键道路变为禁止车辆通行状态,保持此状态20秒。使用单片机来控制电路,电路简单而且省去了很多复杂的线路,使电路简明易懂。本设计采用的是C语言编程,C语言是一种高级语言,与人类的思维习惯相近,所以编程的时候比较简单,而且C语言的可移植性比较好,所以本设计采用了c语言作为编程语言。1.4组成框图按键显示电路指示灯AT89C51复位晶振图1组成框图单片机课程设计3第2章硬件电路设计2.1交通灯控制器原理图交通灯控制器的仿真原理图如图2所示,由于元器件的排布问题,我并没有将所有连线与对应管脚相连,一部分元器件的管脚我只是标出了对应管脚。由于交通灯的只是电路的排布原因,我没有画在一起。COL1COL2COL3COL4ROW1ROW2ROW3ROW4EA/VPP31XTAL119XTAL218RST/VPD9P3.7/RD17P3.6/WR16P3.2/INT012P3.3/INT113P3.4/T014P3.5/T115P1.0/T1P1.1/T2P1.23P1.34P1.45P1.56P1.67P1.78P0.039P0.138P0.237P0.336P0.435P0.534P0.633P0.732P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29ALE/PROG30P3.1/TXD11P3.0/RXD10Vcc40Gnd20AT89S5XAT89S5X12YCC4.7KR?10uFCVCCGNDGNDa11b7c4d2e1f10g5A12B9C8D6DS?LEDQ?R?RES2P2.0P1.1KEY4SWSPSTVCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6Q?R?RES2P2.0VCCGND图2交通灯控制器的原理图2.2显示电路设计八段数码显示器是微机系统常用的输出设备。数码管是一种半导体发光器件,其基本单元是发光二极管。引线已在内部连接完成,只需引出它们的各个笔划,公共电极。数码管实际上是由七个发光管组成8字形构成的,加上小数点就是8个。这些段分别由字母a,b,c,d,e,f,g,dp来表示。多个发光二极管封装在一起的八段数。数码显示器按其连接形式可分为共阳显示器和共阴显示器共阳极数码管的8个发光二极管的阳极(二极管正端)连接在一起形成公共阳极(COM)的数码管,共阴极数码管的8个发光二极管的阴极(二极管负端)连接在一起形成公共阴极(COM)的数码管。本设计采用的为共阳极数码管。单片机课程设计4a11b7c4d2e1f10g5A12B9C8D6DS?LEDQ?R?RES2P2.0P1.1P0.0P0.1P0.2P0.3P0.4P0.5P0.6Q?R?RES2P2.0VCC图3显示电路本次基于单片机的实验板用的是四位八段数码管,四位既是四个位数,八段为算小数点在内,每一位由八个发光管组成。工作时应先位选后段选。使能端由P1口控制,输出的显示字符由P0口控制。2.3独立按键电路设计独立式按键是指用I/0口线构成的单个按键电路,每个独立式按键单独占有一根I/0口线,每根I/0口线上按键的工作状态不会影响其他I/O口线的工作状态,即一个按键对应着-个端口输入,每一个按键都有一个按键电路来判断其是否按下。本设计采用的是接在P3口的四个独立按键,来实现查看、定时、切换和校时。2.4交通灯电路本设计使用的红、绿、黄小灯与我们单片机实验板上所使用的小灯的工作原理相同,所以在这里不再赘述。图4指示电路单片机课程设计5第3章软件设计流程3.1软件程序的内容本设计的软件程序包括1个中断子程序、延时子程序、交通状态转变子程序、显示子程序和主程序组成。3.2程序流程图开始初始化定时器和INT0判断是否还剩10秒显示当前所剩时间全变黄灯正常显示图5程序流程图单片机课程设计6指示子函数南北通行,东西禁行判断是否剩余时间大于十秒且是刚执行判断时间是否少于10秒全黄灯判断时间是否大于10秒且再次执行东西通行,南北禁行结束图6交通灯程序3.3主要程序段(1)显示子程序voidTraffic_Light(){if(num=50&&num10&&M%2==0){RED_A=1;YELLOW_A=1;GREEN_A=0;RED_B=0;YELLOW_B=1;GREEN_B=1;}if(num=10&&num0){RED_A=1;YELLOW_A=0;GREEN_A=1;RED_B=1;YELLOW_B=0;GREEN_B=1;}单片机课程设计7if(num=50&&num10&&M%2==1){RED_A=0;YELLOW_A=1;GREEN_A=1;RED_B=1;YELLOW_B=1;GREEN_B=0;}}(2)主程序voidmain(){T0_init();a=0;num=50;M=0;TR0=1;gao=0;di=0;while(1{P0=table[num/10];P2=table[num%10];if(a==20){a=0;num--;Traffic_Light();if(num==0){num=50;M++;}}单片机课程设计8}}(3)外部中断服务子程序voidit0()interrupt0{num=7;while(num){if(a==20){a=0;num--;}P0=table[num/10];P2=table[num%10];RED_A=0;YELLOW_A=1;GREEN_A=1;RED_B=0;YELLOW_B=1;GREEN_B=1;}}单片机课程设计9第4章调试、仿真调试结果4.1调试图图7程序调试图4.2仿真调试结果图8刚启动图单片机课程设计10图9剩余10秒图10改变交通图11有行人终止行车单片机课程设计11第5章总结本设计还存在一个小小的问题,我认为是软件的问题,有一组交通灯总是红绿灯一起亮。我仔细检查了电路图和程序,发现没有问题,所以我认为是软件里的bug。经过一系列的学习,使我对单片机有了初步的认识,了解了一些软件编程的技巧。通过本次课程设计,使我学会了课堂上学不到的知识。对单片机又有了更深的认识掌握单片机设计步骤,知道这门课程在工作中的重要性,我更加体会到理论知识与动手能力相结合的重要性,而且设计过程中使我懂得在设计程序之前,务必要对所用单片机的内部结构有一个系统的了解,知道该单片机片内有哪些资源,懂得设计的关键是要有一个清晰的思路和一个完整的软件流程图。在设计程序时,不能妄想一次就将整个程序设计好,“反复修改,不断改进”是程序设计的必经之路。要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便。在整个设计的过程中,还是碰到了一些问题。课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。随着科学技术发展的日新日异,单片机已经成为当今计算机,通信等应用中空前活跃的领域。因此掌握单片机的开发技术是十分重要的。比如,对于键盘的延时防抖问题不能较好的解决,对于编程的顺序及各模块程序调用掌握得还不够好,对于一些相关的应用软件没能熟练掌握。通过这几天的反复思考,以及参考网上的程序,最终还是完成了设计。设计中我最大的收获就是自己的动手能力和独立解决问题的能力得到了很大的提高,在动手的过程中,不仅能增强实践能力,而且在理论上可以有更深的认识;这次设计给了我极大的鼓舞和信心,相信在以后的学习中可以通过不断的学习和实践来提高专业方面的知识。单片机课程设计12第6章完整原理图COL1COL2COL3COL4ROW1ROW2ROW3ROW4EA/VPP31XTAL119XTAL218RST/VPD9P3.7/RD17P3.6/WR16P3.2/INT012P3.3/INT113P3.4/T014P3.5/T115P1.0/T1P1.1/T2P1.23P1.34P1.45P1.56P1.67P1.78P0.039P0.138P0.237P0.336P0.435P0.534P0.633P0.732P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29ALE/PROG30P3.1/TXD11P3.0/RXD10Vcc40Gnd20AT89S5XAT89S5X12YCC4.7KR?10uFCVCCGNDGNDa11b7c4d2e1f10g5A12B9C8D6DS?LEDQ?R?RES2P2.0P1.1KEY4SWSPSTVCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6Q?R?RES2P2.0VCCGND图12完整原理图图13仿真原理图单片机课程设计13参考文献[1]周航慈.单片机应用程序设计基础[M].北京:电子工业出版社,1997年7月[2]朱承高.电工及电子技术手册[M].北京:高等教育出版社,1990[3]阎石.数字电子技术基础(第三版)[M].北京:高等教育出版社,1989[4]廖常初.现场总线概述[J].电工技术,1999.6[5]李朝青.单片机原理及接口技术(第三版)[M].北京;北京航空航天大学出版社,2005年10月[6]NiggemannE.Highperformancenickel-metalhydridebatteryforelectricandhybridvehicles[Z].EVS215,Bruxelles,1998.[7]FederDO.CharacteristicofNickelMetalHydrid
本文标题:交通灯管理电路设计
链接地址:https://www.777doc.com/doc-2743713 .html