版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、-. z.学院课程设计课 程 单片机课程设计 题 目 交通灯系统 院 系 机电系 专业班级 学生* 学生* 指导教师 2016年 03月 20日目录TOC o 1-3 h u HYPERLINK l _Toc21529 摘要 PAGEREF _Toc21529 3 HYPERLINK l _Toc10411 引言 PAGEREF _Toc10411 3 HYPERLINK l _Toc181 1.设计目的 PAGEREF _Toc181 4 HYPERLINK l _Toc30536 2.设计要求 PAGEREF _Toc30536 4 HYPERLINK l _Toc22441 3.系统总体
2、方案硬件设计 PAGEREF _Toc22441 4 HYPERLINK l _Toc27050 3.1设计思想及总体设计 PAGEREF _Toc27050 4 HYPERLINK l _Toc23529 3.2硬件设计 PAGEREF _Toc23529 5 HYPERLINK l _Toc1877 3.3复位电路 PAGEREF _Toc1877 9 HYPERLINK l _Toc19909 3.4数码管显示 PAGEREF _Toc19909 9 HYPERLINK l _Toc29392 3.5 红绿灯显示 PAGEREF _Toc29392 10 HYPERLINK l _Toc
3、25422 3.6键盘:独立键盘+中断 PAGEREF _Toc25422 10 HYPERLINK l _Toc22754 3.7系统原理图 PAGEREF _Toc22754 11 HYPERLINK l _Toc12589 4软件设计 PAGEREF _Toc12589 11 HYPERLINK l _Toc4777 4.1总体流程 PAGEREF _Toc4777 11 HYPERLINK l _Toc11984 4.2循环流程控制思路 PAGEREF _Toc11984 12 HYPERLINK l _Toc22904 4.3源程序 PAGEREF _Toc22904 12 HYPE
4、RLINK l _Toc22871 5调试运行 PAGEREF _Toc22871 17 HYPERLINK l _Toc8867 5.1正常运行状态 PAGEREF _Toc8867 17 HYPERLINK l _Toc21171 5.2左右行显示 PAGEREF _Toc21171 18 HYPERLINK l _Toc10909 5.3黄灯闪烁显示 PAGEREF _Toc10909 18 HYPERLINK l _Toc1731 6.设计心得体会 PAGEREF _Toc1731 19 HYPERLINK l _Toc12821 7参考文献 PAGEREF _Toc12821 19摘
5、要交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是表达的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。本系统采用单片机AT89C51为中心器件来设计交通灯控制器,系统实用性强、操作简单、扩展强。本设计就是采用单片机模拟十字路口交通灯的各种状态显示以及倒计时时间。本设计系统由单片机,交通灯状态显示系统、LED数码显示系统等几大局部组成。系统除根本的交通灯功能外,还具有倒计时、紧急情况处理等功能,较好的模拟实现了十字路口可能出现的状况。本系统采用单片机C语言编写,主要编写了主程序,LED数码管显示程序等。总体上
6、完成了软件的编写。关键词:交通灯;控制;AT89C51;倒计时显示引言近年来随着科技的飞速开展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件构造,以及针对具体应用对象特点的软件结合,加以完善。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果交通信号灯在大多数城市得到了广泛的应用。传统的交通信号灯控制一般采用了电子线路和继电器控制,构造复杂,可靠性低,故障率高。本次设计是基于AT89C51单片机的交通灯控制系统
7、,东西南北的通行时间可调,倒计时显示通行时间灯功能,该系统具有设计周期短、可靠性高维护方便、使用简单等优点。1.设计目的1.1稳固和加深对单片机原理和接口技术知识的理解; 1.2培养根据课题需要选学参考书籍、查阅手册和文献资料的能力; 1.3学会方案论证的比拟方法,拓宽知识,初步掌握工程设计的根本方法; 1.4掌握常用仪器、仪表的正确使用方法,学会软、硬件的设计和调试方法;1.5能按课程设计的要求编写课程设计报告,能正确反映设计和实验成果,能用计 算机绘制电路图和流程图。 2.设计要求 1东西干道和南北干道的通行分左行,右行,直行,其中左行,右行固定15秒;直行固定30秒。 2信号灯分绿灯,红
8、灯,黄灯,每次绿灯换红灯时,黄灯亮3秒。 3东西干道和南北干道交替控制,每次干道绿灯交替时,有3秒钟所有干道的交通灯都是黄灯闪烁3秒钟,提示已经进入路口的车辆迅速通过。 4)当遇到突发状况时,各个方向静止通行,显示红灯,并维持5秒倒计时。3.系统总体方案硬件设计3.1设计思想及总体设计 1分析目前交通路口的根本控制技术以及各种通行方案,并以此为根底提出自己的交通控制的初步方案。2确定系统交通控制的总体设计,包括,十字路口具体的通行禁行方案设计以及系统应拥有的各项功能,在这里,本设计除了有信号灯状态控制能实现根本的交通功能,还增加了倒计时显示提示。3进展显示电路,灯状态电路,按键电路的设计和各器
9、件的选择及连接,大体分配各个器件及模块的根本功能要求。4进展软件系统的设计,对于本系统,本人采用C语言编写,对单片机部构造和工作情况做了充足的研究,了解定时器,中断以及延时原理,总体上完成了软件的设计。中断键盘 单片机LED数码管显示复位电路LED指示灯晶振电路图1 系统框图 3.2硬件设计 1单片机选型:AT89C51与MCS-51单片机产品兼容,8k字节在系统可编程Flash存储器,1000次可檫写周期,全静态操作:0Hz33Hz,三级加密程序存储器,32个可编程I/O口线,三个16位定时器/计数器八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双
10、数据指针、掉电标识符。功能特性描述:AT89C51是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完 全兼容。片上Flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统 可编程Flash,使得AT89C51为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89C51具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量
11、2级中断构造,全双工串行口, 片晶振及时钟电路。另外,AT89C51 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停顿工作,允许RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM容被保存,振荡器被冻结, 单片机一切工作停顿,直到下一个中断或硬件复位为止。8 位微控制器 8K 字节在系统可编程 Flash AT89C52 P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写1时,引脚用作高阻抗输入。 当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下, P0具有部上
12、拉电阻。 在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。 P1 口:P1 口是一个具有部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个 TTL 逻辑电平。对P1 端口写1时,部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于部电阻的原因,将输出电流IIL。 此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入P1.0/T2和时器/计数器2的触发输入P1.1/T2E*,具体如下表所示。 在flash编程和校验时,P1口接收低8位地址字节。 引脚号第二功能 P1.0 T2定时器/计数器T
13、2的外部计数输入,时钟输出 P1.1 T2E*定时器/计数器T2的捕捉/重载触发信号和方向控制 P1.5 MOSI在系统编程用 P1.6 MISO在系统编程用 P1.7 SCK在系统编程用 P2 口:P2 口是一个具有部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个 TTL 逻辑电平。对P2 端口写1时,部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于部电阻的原因,将输出电流IIL。 在访问外部程序存储器或用16位地址读取外部数据存储器例如执行MOV* DPTR 时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的部上拉发送1。在使用8位
14、地址如MOV* RI访问外部数据存储器时,P2口输出P2锁存器的容。 在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。 P3 口:P3 口是一个具有部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写1时,部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于部电阻的原因,将输出电流IIL。 P3口亦作为AT89C51特殊功能第二功能使用,如下表所示。在flash编程和校验时,P3口也接收一些控制信号。 端口引脚 第二功能 P3.0 R*D(串行输入口) P3.1 T*D(串行输出口) P3.2 INT
15、O(外中断0) P3.3 INT1(外中断1) P3.4 TO(定时/计数器0) P3.5 T1(定时/计数器1) P3.6 WR(外部数据存储器写选通) P3.7 RD(外部数据存储器读选通) 此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。 RST复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。 ALE/PROG当访问外部程序存储器或数据存储器时,ALE地址锁存允许输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个A
16、LE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲PROG。如有必要,可通过对特殊功能存放器SFR区中的8EH单元的D0位置位,可制止ALE操作。该位置位后,只有一条MOV*和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE制止位无效。PSEN程序储存允许PSEN输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令或数据时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。EA/VPP外部访问允许,欲使CPU仅访问外部程序存储器地址为0000H-FFFFH,EA端必须保
17、持低电平接地。需注意的是:如果加密位LB1被编程,复位时部会锁存EA端状态如EA端为高电平接Vcc端,CPU则执行部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。 引脚图如下:图2 89C51引脚图3.3复位电路 图3 复位电路当8051的ALE及/PSEN两引脚输出高电平,RST引脚高电平到时,单片机复位。RST/VPD端的高电平,假设直接由启动瞬间产生,则为启动复位,假设通过按动按钮产生高电平复位称手动复位。图中,上电时,接通电源,电容器C相当于瞬间短路,+5V加到了RST/VPD端,该高电平使8051全机复
18、位。假设运行过程中,需要程序从头执行,只需按动按钮S,则直接把+5V加到了RST/VPD端,从而复位。显然,该电路即可以上电复位,也可以手动复位,是常用复位电路之一。3.4数码管显示图4 数码管显示 此处采用的数码管时共阴极数码管,G、F、E、D、C、B、A七个端口是输入端口,对其各位进展赋值,置位则亮,复位则灭,用此来显示出相应的数字;1、2两端用来控制高位和低位的选通显示,只要对端口置位,便可以选择该端口,并对其所代表的位进展赋值,显示。正常通行状况下,数码管从30秒开场倒计时,各个方向,对应点亮红绿黄灯。遇到突发状况,数码管从5秒开场倒计时,各方向制止通行,点亮红灯。3.5 红绿灯显示图
19、5 红绿灯显示每个路口都采用了3个LED灯来显示,分别代表红绿黄三种灯,来模拟路口交通的变换。其中D7和D8表示转弯模块。以南北方向举例,正常状况下,从30秒开场倒计时,南北方向可直行,即绿灯D6)亮起,东西方向制止通行,亮红灯(D2)。当显示至15秒时,南北方向可直行和转弯,即两个绿灯(D6和D7)亮起,东西方向制止通行,亮红灯D2)。当显示至3秒时,通知车辆快速通过,南北黄灯D5)闪烁,东西方向制止通行,亮红灯D2)。3.6键盘:独立键盘+中断图6 独立键盘+中断采用开关来控制进入中断,可以在路口出现紧急情况时,拉动开关。使红绿灯发生相应的改变,已处理紧急情况下车辆通行。当发生突发情况时,
20、如救护车通过,接通上面的按键,各个方向中止当前状态,即制止通行,各个方向点亮红灯,并维持5秒倒计时。当完毕5秒倒计时,各个方向恢复到中止前的状态。3.7系统原理图图7 总电路图开 始 4软件设计4.1总体流程南北绿东西红30s倒计时显示黄灯亮3s南北红东西绿30s倒计时显示黄灯亮3s图8 流程图 4.2循环流程控制思路东西红灯南北绿灯东西红灯南北黄灯闪东西绿灯南北红灯东西黄灯闪南北绿灯东西红灯南北及转弯绿灯东西及转弯绿灯南北红灯中断图9 流程控制图4.3源程序#include #include #define uint unsigned int #define uchar unsigned c
21、har uchar temp,aa,nn; sbit rn=P20; sbit nb=P21; sbit gn=P22; sbit rw=P23; sbit d*=P24; sbit gw=P25; sbit shi=P36; sbit ge=P37; /*对要使用的单片机各个口进展定义*/ bit flag=0; ucharcodetable=0*3f,0*06,0*5b,0*4f,0*66,0*6d,0*7d,0*07,0*7f,0*6f,0*77,0*7c,0*39,0*5e,0*79,0*71; /*将数字0123456789的16进制数定义成数组用以显示*/ void delay(u
22、int z); void disp(uint n); void nb_flash(void); void d*_flash(void); void *int0();void timer0(); void LED_ON(); void *int1(); void nanbei(); void dong*i();/*将所使用的子函数定义*/ void main() uint num; num=0; aa=0; TMOD=0*01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1; E*0=1; IT0=0; E*1=
23、1; IT1=1; /*中断初始化*/while(1) nanbei(); nb_flash(); dong*i(); void delay(uint z) uint *,y;for(*=z;*0;*-)for(y=110;y0;y-); void timer0() interrupt 1 TH0=(65536-50000)/256;TL0=(65536-50000)%256;aa+; if(aa=9) aa=0; flag=1; void disp(uint n) /*显示子函数*/ while(!flag) ge=0; P0=tablen%10; delay(50); shi=1;ge=1
24、; shi=0; P0=tablen/10; delay(50); shi=1;ge=1; if(flag=1) flag=0; void nanbei() /*南北方向的红绿灯和数码管显示子函数*/ uint num; num=30; disp(num); while(num15) num-; P2=0*f3; disp(num); while(num4) /*南北方向及转弯的红绿灯和数码管显示子函数*/ num-; P2=0*b3; disp(num); void nb_flash(void) /*南北方向的黄灯和数码管显示子函数*/ uint a; for(a=3;a0;a-) P2=0
25、*f5; nb=1; delay(100); nb=0; disp(a); void dong*i() /*东西方向的红绿灯和数码管显示子函数*/ uint num; num=30; while(num15) P2=0*de; disp(num); num-; while(num3) /*东西方向及转弯的红绿灯和数码管显示子函数*/ num-; P2=0*5e; disp(num); while(num0) /*东西方向的黄灯和数码管显示子函数*/ P2=0*ee; d*=1; delay(100); d*=0; disp(num); num-; void *int0() interrupt
26、2 /*中断定义*/ TH0=(65536-50000)/256; TL0=(65536-50000)%256; LED_ON(); void LED_ON() uint b; rn=0; rw=0; gn=1; gw=1; nb=1; d*=1; for(b=5;b0;b-) ge=0;shi=1; P0=tableb; delay(1000); ge=1;shi=1; return; 5调试运行5.1正常运行状态图10 正常运行状态5.2左右行显示图11 左右行显示 5.3黄灯闪烁显示图12 黄灯闪烁显示6.设计心得体会一周的单片机课程设计很快就完毕了,在这一周当中,虽然开场有点困难,但是
27、经过我们们分工合作,合理地进展设计安排,再加上教师的耐心指导,我们们终于顺利地完成了本次单片机课程设计,同时也学到了很多东西。在本次课程设计中,我们通过动手实践操作,进一步学习和掌握了单片机原理的有关知识,特别是程序的编程方面,加深了对单片机原理及应用技术的认识,进一步稳固了对单片机知识的理解,掌握简单单片机应用系统的设计、制作、调试的方法。在设计时根据课题要求,复习相关的知识,查询相关的资料。根据实验条件,找到适合的方案,找到需要的元器件及工具,进展实验。这次的单片机课程设计重点是通过实践操作和理论相结合,提高动手实践能力,提高科学的思维能力,更在一周的时间了解了更多的有关单片机的知识,使知识更加丰富,使自己更加充实。与此同时,我们也对团队分工合作有了进一步的认识,只有通过合理的分工合作,我们们才能够在短短一周的时间完成设计任务,相信这对以后在社会上工作和学习会有很多帮助,让我们能更好的进入工作状态。最重要的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度年福建省高校教师资格证之高等教育心理学能力提升试卷A卷附答案
- 2024年度山西省高校教师资格证之高等教育法规模拟考核试卷含答案
- 2024年度年福建省高校教师资格证之高等教育学测试卷(含答案)
- 2024年现场总线计算机通讯模板项目资金需求报告代可行性研究报告
- 四年级数学(简便运算)计算题专项练习与答案
- 终身教育视角下职业教育提质培优路径探析
- 2024年商品买卖协议模板2
- 2024年工程监理外部合作协议
- 2024年专业有机肥购销协议详细样本
- 2024年真石漆外墙施工协议
- 干部人事档案任前审核登记表范表
- 北京市道德与法治初一上学期期中试卷及答案指导(2024年)
- 高校实验室安全基础学习通超星期末考试答案章节答案2024年
- 四川省绵阳市高中2025届高三一诊考试物理试卷含解析
- 朗致集团逻辑测评试卷2024
- 焦化厂生产工序及工艺流程图
- 汽车排放控制系统的检修
- 《新能源》题库(试题及答案29个)
- (完整版)油罐换底工程施工方案
- 悬吊技术的临床应
- 精益管理与精益服务
评论
0/150
提交评论