1、3.4单片机的特点与应用7四绘制软件流程图并对软件流程图进行说明74.1软件设计74.2电路连接分配84.3主程序流程图8五程序的源代码清单9六上机调试运行结果及分析13七课程设计的经验教训总结14 参考文献15交通灯课程设计功能描述红黄绿交通灯控制器采用单片机及程序存储器的扩展控制,实现控制器的功能要求,例如红黄绿灯的交替闪烁,定时等等。单片机将CPU,存储器,定时器计数器及各接口电路组成,具有良好的性价比。利用51单片机设计一个简易交通灯系统,定时时间为20秒,红绿灯交换时,黄灯闪烁三秒,时间通过4位共阳数码管显示。本控制器可分时段进行道路的管制,还可在紧急时刻进行手动控制,实施道路路况的
2、控制。交通信号灯控制方式很多。本系统采用MSC-51系列单片机ATSC51和可编程并行I/O接口芯片8255A为中心器件来设计交通灯控制器,实现了能根据实际车流量通过8051芯片的P1口设置红、绿灯燃亮时间的功能;红绿灯循环点亮,倒计时剩5秒时黄灯闪烁警示(交通灯信号通过PA口输出,显示时间直接通过8255的PC口输出至双位数码管);车辆闯红灯报警;绿灯时间可检测车流量并可通过双位数码管显示。本系统实用性强、操作简单、扩展功能强。1.1芯片简介MSC-51芯片简介8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。8051单片机包含中央处理器、程序存储器(ROM)
3、、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:中央处理器:中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。数据存储器(RAM):8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型
4、表。程序存储器(ROM):8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。定时/计数器(ROM):8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。并行输入输出(I/O)口:8051共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。全双工串行口:8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。中断系统:8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。时钟电路:8
5、051内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容。单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。INTEL的MCS-51系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。 图1.1 8051内部结构1.2技术指标设计一个十字路口的交通灯控制电路,每条道路上各配有一组红、黄、绿交通信号灯,其中红灯亮,表示该道路禁止通行;黄灯亮表示该道路上未过
6、停车线的车辆禁止通行,已过停车线的车辆继续通行;绿灯表示该道路允许通行。该电路自动控制十字路口两组红、黄、绿交通灯的状态转换,实现十字路口自动化。 图1.2 十字路交通灯控制课程设计分析设计2.1设计分析实现红、绿、黄灯的循环控制。要实现此功能需要表示三种不同颜色的LED灯分别接在P1个管脚,用软件实现。要求东西车道和南北车道上的车辆交替运行,每次通行时间为20s;要求黄灯先亮5秒种,才能变换车道;黄灯亮时要求每秒闪亮一次;要求绘出原理图;根据设计要求和技术指标设计好电路;绘制硬件图并对硬件电路进行说明3.1 MCS-51单片机内部结构在MCS-51系列单片机中,有2个系列:子51系列和52子
7、系列。每个系列有若干种型号。51系列有8051、8751、8031、87C51、和80C31。 我们以MCS-51系列单片机的典型型号80C51为例来介绍其结构和功能。MCS-51的内部结构框图如下: 图3.1 MCS-51单片机内部结构分析上图,并按其功能部件划分可以看出,MCS-51系列单片机是由8大部分组成的。这8大部分是:1.一个8位中央处理器CPU(有成为微处理器)CPU的内部结构是有运算器和控制器组成,是单片机的核心部件。其中包括算术逻辑运算单元、ALU、累加器ACC、程序状态字寄存器PSW、堆栈指针SP、寄存器SP、寄存器B、程序计数器(指令指针)PC、指令寄存器IR、暂存器等部
8、件。2.128个字节的片内数据存储器RAM 片内数据存储器用于存放数据、运算结果。3.4KB的片内程序存储器ROM或EPROM 用于存放程序、原始数据和表格。现在的改进产品里一般都换成了Flash存储器。4.18个特殊功能寄存器SFR。 CPU内部包含了一些外围电路的控制寄存器、状态寄存器以及数据输入/输出寄存器,这些外围电路的寄存器构成了CPU内部的特殊功能寄存器。18个特殊功能寄存器SFR有3个是16位的,共占了21个字节。5.4个8位并行输入输出I/O接口。P0口、P1口、P2口、P3口(共32线),用于并行输入或输出数据。6.1个串行I/O接口,完成单片机与其他微机之间的串行通信 。7
9、.2个16位定时器/计数器T0、T1。8.一个具有5个(52子系列为6个或7个)中断源,2 个可编程优先级的中断系统。 它可以接收外部中断申请、定时器/计数器中断申请和串行口终端申请。3.2 MCS-51单片机芯片引脚位置及功能符号如下图所示 图 3.2 MCS-51单片机芯片引脚位置 MCS-51系统的引脚说明:MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,图二是它们的引脚配置,40个引脚中,正电源和底线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。8951的抚慰方式可以自动复位,也可以是手动复位,见下图
10、。除此之外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可以接上没用电源,以保证单片机内部RAM的数据不丢失。 在编程时,EA/Vpp脚还需加上21V的编程电压3.3 51系列单片机运行的硬件条件51系列单片机内部配有ROM和RAM,单片机能够运行的最基本配置是:1.配有为单片机提供时钟信号的振荡电路,如下图所示。2.配有上电复位或按键复位电路。3.要对脚进行处理,选择外部或内部程序存储器。4.要为单片机提供一个稳定的、满足单片机工作电压的工作电源。STC89C52单片机芯片一个、MAX232芯片一个、LED四位数码显示管一个,串口、USB接口、USB电源接口、开关各一个、晶振一个,电
11、阻、电容、排针及导线若干,红、绿、黄灯各两个。 图3.3 单片机接线图3.4单片机的特点与应用1.单片机的特点(1).控制功能强。(2).抗干扰性强,可靠性高,工作温度范围宽。(3).开发周期短,性价比高,易于产品化。 2.单片机的应用领域(1).智能化仪表。(2).实时工业控制。(3).机电一体化产品。(4).智能接口。(5).办公自动化。(6).商业营销。(7).家用电器。绘制软件流程图并对软件流程图进行说明4.1软件设计先了解实际交通灯的变化规律,假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯;然后转状态1南北绿灯通车,东西红灯。过一段时间转状态2,南北绿灯闪几次转黄灯,
12、延时几秒,东西仍然红灯。再转状态3,东西绿灯通车,南北红灯。过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯,最后回到状态1,不断循环。(1)当东西方向为红灯,此道车辆禁止通行,东西道行人可通过;南北道为绿灯,此道车辆通过,行人禁止通行。时间为20秒。(2)黄灯闪烁5秒,警示车辆和行人红、绿灯的状态即将切换。(3)当东西方向为绿灯,此道车辆通行;南北方向为红灯,南北道车辆禁止通过,行人通行。 东西方向车流大 通行时间长。(4)这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。4.2电路连接分配 图4.1电路连接分配通过单片机的P1口控制实验仪上6
13、个LED按照交通灯的变化规律循环发光,模拟十字路口L2、L1、L0模拟南北方向交通灯。通过一条SETB指令,可使某一灯亮,通过一条CLR指令,可使某一灯灭4.3主程序流程图图4.2 程序流程图程序的源代码清单 #include#includesbit D1=P21; /led灯引脚定义sbit D2=P23;sbit D3=P22;sbit LS138A=P24; /数码管引脚定义sbit LS138B=P25;sbit LS138C=P26;void delay(unsigned int i);unsigned char aa,num,num1,a;unsigned int LedOut2;
14、unsigned char code Disp_Tab = 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; /09数模void main() unsigned char i; TMOD=0x01,TH0=0x3c,TL0=0xb0, EA=1; /定时器初始化(50ms中断一次) ET0=1; TR0=1; num = 40; D1=0;D2=0;D3=1; /led灯初始化 while(1) num1=num/2; LedOut0=Disp_Tabnum1/10; LedOut1=Disp_Tabnum1%10; for( i=0; i2
15、; i+) /实现8位动态扫描循环 P0 = LedOuti; /将字模送到P0口显示 switch(i) case 0:LS138A=0; LS138B=0; LS138C=1; break; case 1: LS138B=1; LS138C=0; delay(10);void timer0(void) interrupt 1 TH0=0x3c,TL0=0xb0; aa+; if(aa = 10) /如果到了0.5s aa = 0; num-; if(num 0; i-) for(j = 200; j j-);上机调试运行结果及分析 图6.3 PCB图 经过在仿真软件上的仿真,已经按实验要求
16、得到了预期的结果,可以成功的控制十字交通路口的交通秩序。课程设计的经验教训总结通过这次课程设计,加强了我动手、思考和解决问题的能力。电路原理和连接,和芯片上的选择,也略懂。巩固数字逻辑电路的理论知识,并对芯片有了新的认识,懂得它的功能与其它芯片替换等. 更重要的是如何将逻辑电路灵活运用于实际生活。协作的重要性。我沉得做课程设计同时也是对课本知识的巩固和加强,平时看课本时,有时问题老是弄不懂,做完课程设计,那些问题就迎刃而解了。而且还可以记住很多东西。比如一些芯片的功能,平时看课本,这次看了,下次就忘了,主要是因为没有动手实践过吧!认识来源于实践,实践是认识的动力和最终目的,实践是检验真理的唯一
17、标准。故一个小小的课程设计,对我们的作用是如此之大。本次关于简易交通灯的设计与制作是在 指导老师以及其他辅导老师的精心指导下,和同组内其他成员的共同交流下才得以顺利完成。经过本次设计把我在大学所学的理论知识转化为实际应用,既锻炼了我们的实际操作能力,又使理论知识得以加强和升华,激发了创新意识。特别感谢与我同组的其他组员,在工作中我们积极配合、勇于创新。通过本次设计使我们自身的动手能力得到了很大的提高,使我们走出了实践的盲区,为以后的毕业设计及工作后的动手打下了坚实的基础。最后感谢学院为我们提供了难得的机会。再次感谢各位老师和同学们的帮助! 参考文献1. 李 明,毕万新.单片机原理与接口技术.大
18、连:大连理工大学出版社,20092. 张靖武,周灵彬.单片机系统的Proteus设计与仿真.北京:电子工业出版社,2008.3. 周 坚.单片机项目教程.北京:北京航空航天大学出版社,2008.4. 胡 健.单片机原理与接口技术实践教程.北京:机械工业出版社,2004.5. 胡汉才.单片机原理及系统设计.北京:清华大学出版社,2002.6. 侯玉宝等.基于Proteus8051系列单片机设计与仿真.北京:电子工业出版2006.7. 周润景.PEOTEUS在MCS-51&ARM7系统中的应用百例M.北京:电子工业出版社,2006.8. 朱承高.电工及电子技术手册M.北京:高等教育出版社,1990.9. 姜武中.单片机原理与接口技术.大连:大连理工大学出版社,2002
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1