单片机急救车优先通过交通灯设计.docx

上传人:b****3 文档编号:5068693 上传时间:2022-12-13 格式:DOCX 页数:26 大小:627.40KB
下载 相关 举报
单片机急救车优先通过交通灯设计.docx_第1页
第1页 / 共26页
单片机急救车优先通过交通灯设计.docx_第2页
第2页 / 共26页
单片机急救车优先通过交通灯设计.docx_第3页
第3页 / 共26页
单片机急救车优先通过交通灯设计.docx_第4页
第4页 / 共26页
单片机急救车优先通过交通灯设计.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

单片机急救车优先通过交通灯设计.docx

《单片机急救车优先通过交通灯设计.docx》由会员分享,可在线阅读,更多相关《单片机急救车优先通过交通灯设计.docx(26页珍藏版)》请在冰豆网上搜索。

单片机急救车优先通过交通灯设计.docx

单片机急救车优先通过交通灯设计

 

《单片机原理及应用》课程设计

——急救车优先的交通灯控制系统设计

 

班级:

测控071

学号:

*********42

**********

 

完成日期:

2010年6月

 

一、课程设计目的和基本要求........................................3

1、课程设计目的................................................3

2、课程设计基本要求...........................................3

二、题目描述及要求................................................3

1、题目要求....................................................3

2、设计方案选择与论证..........................................4

三、LED灯简介.....................................................5

1、LED的结构及发光原理.......................................5

2、LED光源的特点.............................................5

3、单色光LED的种类及其发展历史...............................6

四、芯片的选择与简介...............................................6

1、核心芯片AT89C51单片机的说明.................................6

2、中央处理器(CPU)............................................9

3、存储器.......................................................10

4、定时器/计数器...............................................11

5、中断系统....................................................11

6、内部总线....................................................11

7、AT89C51单片机工作方式......................................12

五、系统设计.......................................................13

1、系统方框图..................................................13

2、工作原理....................................................14

3、交通灯状态分析...............................................14

六、电路原理图....................................................16

1、单片机最小系统............................................16

2、交通灯电路图...............................................17

3、总的电路图.................................................18

4、救护车来时处理.............................................19

七、程序流程图....................................................19

八、程序源代码....................................................21

九、程序仿真......................................................24

十、课程设计总结..................................................28

十一、参考文献....................................................29

 

急救车优先的交通灯控制系统设计

一、课程设计目的和基本要求:

1、课程设计目的

大学本科学生动手能力的培养和提高是大学本科教育的一个重要内容,《单片机原理及应用》是一门应用性较强的课程。

如何让学生在学好基础知识的同时,迅速掌握应用技术,实验与课程设计环节起着非常重要的作用。

本课程设计的目的,是让学生通过课程设计,首先建立起单片机应用系统的概念,根据实际的系统设计要求,掌握初步的单片机系统设计方法,从硬件系统和软件系统设计两个方面得到实际的提高,为今后的毕业设计打下良好的基础。

2、课程设计基本要求:

1)在课程设计过程中,运用89S51单片机,根据设计要求绘制系统电路图、编制系统程序流程图、根据系统程序流程图编制汇编源程序(或C51程序),进行运行调试(运用仿真软件proteus或在单片机实验平台上)进行调试运行,最后提供课程设计报告。

在此过程中,学生必须学会手册的使用及相应绘图软件的使用方法,使各方面的实际能力上得到一定的提高。

2)课程设计应由学生本人独立完成完成,严禁抄袭(对自己的设计不熟悉,读不懂设计中的关键功能部分,对设计的结构不清楚,对设计的功能不了解等),一经验收教师认定其抄袭行为,成绩即为不及格。

3)认真编写课程设计报告,课程设计报告的书写格式见附录2

二、题目描述及要求

1、题目要求

请设计一个交通灯控制电路,并且编写相应的软件,完成交通灯的管理任务。

该控制任务应该完成下列功能:

1)控制LED灯,完成交通灯的管理任务;

2)允许急救车优先通过的要求。

有急救车到达时,所有的交通信号灯为红灯,以便让急救车通过。

假定急救车通过路口时间为20秒,急救车通过后交通灯恢复中断前状态;

3)按照分析、设计、调试和测试的软、硬件开发过程完成这个控制任务。

4)根据交通灯控制变化规律。

假设一个十字路口为东西南北走向。

初始状态0为东西红灯,南北红灯。

然后转状态1南北绿灯通车,东西红灯。

过20秒钟转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍然红灯。

再转状态3,东西绿灯通车,南北红灯。

过20秒钟转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯。

最后循环至状态1;

5)以按键为中断申请,表示有急救车通过,所有的交通信号灯全红20秒钟。

2、设计方案选择与论证:

交通灯控制系统,可由多种电路来构成,我们这里提供三种方案供选择:

方案一:

由普通的数字电路集成芯片组成

这种方案的特点是:

硬件设计思路简单,但用元器件多,电路比较复杂,焊接调试容易出错,而且不利于智能控制,调时电路复杂。

方案二:

用VHDL语言编程控制

这种方案的特点是:

硬件设计简单,电路结构清晰,电路比较复杂,VHDL语言编程控制硬件,可方便的进行仿真,调试。

方案三:

单片机控制

采用单片机控制,可提高电路的可靠性与稳定性,硬件电路比较简单,主要用软件来控制,控制方式灵活多样,能满足不同情况的控制,可利用中断等方式通过程序来方便的实现调时。

综合以上三种方案的特点,结合我们自身的知识结构,我们采用方案三,选择常用的51系列单片机构成。

三、LED灯简介

1、LED的结构及发光原理

50年前人们已经了解半导体材料可产生光线的基本知识

,第一个商用二极管产生于1960年。

发光二极管的核心部分是由p型半导体和n型半导体组成的晶片,在p型半导体和n型半导体之间有一个过渡层,称为

图1发光二极管的构造图

p-n结。

在某些半导体材料的PN结中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。

PN结加反向电压,少数载流子难以注入,故不发光。

这种利用注入式电致发光原理制作的二极管叫发光二极管,通称LED。

当它处于正向工作状态时(即两端加上正向电压),电流从LED阳极流向阴极时,半导体晶体就发出从紫外到红外不同颜色的光线,光的强弱与电流有关。

2、LED光源的特点

  1).电压:

LED使用低压电源,供电电压在6-24V之间,根据产品不同而异,所以它是一个比使用高压电源更安全的电源,特别适用于公共场所。

  2).效能:

消耗能量较同光效的白炽灯减少80%

  3).适用性:

很小,每个单元LED小片是3-5mm的正方形,所以可以制备成各种形状的器件,并且适合于易

  变的环境

  4).稳定性:

10万小时,光衰为初始的50%

  5).响应时间:

其白炽灯的响应时间为毫秒级,LED灯的响应时间为纳秒级

  6).对环境污染:

无有害金属汞

  7).颜色:

改变电流可以变色,发光二极管方便地通过化学修饰方法,调整材料的能带结构和带隙,实现红黄

绿兰橙多色发光。

如小电流时为红色的LED,随着电流的增加,可以依次变为橙色,黄色,最后为绿色

  8).价格:

LED的价格比较昂贵,较之于白炽灯,几只白炽灯的价格就可以与一只LED灯的价格相当,而通

常每组信号灯需由上300~500只二极管构成。

图2LED灯

3、单色光LED的种类及其发展历史

  最早应用半导体P-N结发光原理制成的LED光源问世于20世纪60年代初。

当时所用的材料是GaAsP,发红光(λp=650nm),在驱动电流为20毫安时,光通量只有千分之几个流明,相应的发光效率约0.1流明/瓦。

70年代中期,引入元素In和N,使LED产生绿光(λp=555nm),黄光(λp=590nm)和橙光(λp=610nm),光效也提高到1流明/瓦。

到了80年代初,出现了GaAlAs的LED光源,使得红色LED的光效达到10流明/瓦。

90年代初,发红光、黄光的GaAlInP和发绿、蓝光的GaInN两种新材料的开发成功,使LED的光效得到大幅度的提高。

在2000年,前者做成的LED在红、橙区(λp=615nm)的光效达到100流明/瓦,而后者制成的LED在绿色区域(λp=530nm)的光效可以达到50流明/瓦

四、芯片的选择与简介

1、核心芯片AT89C51单片机的说明

(1).主要特性:

·与MCS-51兼容

·4K字节可编程闪烁存储器

·寿命:

1000写/擦循环

·数据保留时间:

10年

·全静态工作:

0Hz-24Hz

·三级程序存储器锁定

·128*8位内部RAM

·32可编程I/O线

·两个16位定时器/计数器

·5个中断源

·可编程串行通道

·低功耗的闲置和掉电模式

·片内振荡器和时钟电路

(2).管脚说明:

VCC:

供电电压。

GND:

接地。

AT89C51图3

P0口:

P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表所示:

口管脚备选功能

P3.0RXD(串行输入口)

P3.1TXD(串行输出口)

P3.2/INT0(外部中断0)

P3.3/INT1(外部中断1)

P3.4T0(记时器0外部输入)

P3.5T1(记时器1外部输入)

P3.6/WR(外部数据存储器写选通)

P3.7/RD(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

图4

RST:

复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:

当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:

每当用作外部数据存储器时,将跳过一个ALE脉冲。

如想禁止ALE的输出可在SFR8EH地址上置0。

此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:

外部程序存储器的选通信号。

在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。

但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:

当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。

注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。

在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:

反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:

来自反向振荡器的输出。

(3).振荡器特性:

XTAL1和XTAL2分别为反向放大器的输入和输出。

该反向放大器可以配置为片内振荡器。

石晶振荡和陶瓷振荡均可采用。

如采用外部时钟源驱动器件,XTAL2应不接。

有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。

(4).芯片擦除:

整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。

在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。

此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。

在闲置模式下,CPU停止工作。

但RAM,定时器,计数器,串口和中断系统仍在工作。

在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。

2、中央处理器(CPU)

CPU是单片机内部的核心部件,是一个8位二进制数的中央处理单元,主要由运算器、控制器和寄存器阵列构成。

2.1运算器

运算器用来完成算术运算和逻辑运算功能,它是AT89C51内部处理各种信息的主要部件。

运算器主要由算术逻辑单元(ALU)、累加器(ACC)、暂存寄存器(TMP1、TMP2)和状态寄存器(PSW)组成。

(1)算术逻辑单元(ALU):

AT89C51中的ALU由加法器和一个布尔处理器组成。

(2)累加器(ACC):

用来存放参与算术运算和逻辑运算的一个操作数或运算结果。

(3)暂存寄存器(TMP1、TMP2):

用来存放参与算术运算和逻辑运算的另一个操作数,它对用户不开放。

(4)状态寄存器(PSW):

PSW是一个8位标志寄存器,用来存放ALU操作结果的有关状态。

2.2控制器

控制器是单片机内部按一定时序协调工作的控制核心,是分析和执行指令的部件。

控制器主要由程序计数器PC、指令寄存器IR、指令译码器ID和定时控制电路等构成。

程序计数器PC是专门用于存放现行指令的16位地址的。

CPU就是根据PC中的地址到ROM中去读取程序指令码和数据,并送给指令寄存器IR进行分析。

指令寄存器IR用于存放CPU根据PC地址从ROM中读出的指令操作码。

指令译码器ID是用于分析指令操作的部件,指令操作码经译码后产生相应于某一特定操作的信号。

定时控制逻辑中定时部件用来产生脉冲序列和多种节拍脉冲。

2.3寄存器

寄存器阵列是单片机内部的临时存放单元或固定用途单元,包括通用寄存器组和专用寄存器组。

通用寄存器组用来存放过渡性的数据和地址,提高CPU的运行速度。

专用寄存器组主要用来指示当前要执行指令的内存地址,存放特定的操作数,指示指令运行的状态。

3、存储器

AT89C51单片机内部有256个字节的RAM数据存储器和4Kb的闪存程序存储器(Flash),当不够使用时,可分别扩展为64Kb外部存储器和64Kb外部程序存储器,它们的逻辑单元是分开的,并有各自的寻址机构和寻址方式。

这种结构的单片机称为哈弗型结构的单片机。

程序存储器是可读不可写的,用于存放编好的程序和表格常数。

数据存储器是即可读也可写的,用于存放运算的中间结果,进行数据暂存和数据缓冲等。

AT89C51单片机对外部电路进行控制或交换信息都是通过I/O端口进行的。

单片机的I/O端口分为并行I/O端口和串行I/O端口,它们的结构和作用并不相同。

(1)并行I/O端口

AT89C51有四个8位并行I/O端口,分别命名为P0口、P1口、P2口和P3口,它们都是8位准双向口,每次可以并行输入或输出8位二进制信息。

(2)串行I/O端口

AT89C51有一个全双工的可编程串行I/O端口,它利用了P3口的第二功能,即将P3.1引脚作为串行数据的发送线TXD,将P3.0引脚作为串行数据的接收线RXD。

4、定时器/计数器

AT89C51内部有两个16位可编程定时器/计数器,简称为定时器0(T0)和定时器1(T1),T0和T1分别由两个8位寄存器构成,其中T0由THO(高8位)和TL0(低8位)构成,T1由TH1(高8位)和TL1()低8位构成。

TH0、TL0、TH1、TL1都是SFR中的特殊功能寄存器。

T0和T1在TCON和TMOD的控制下可工作在定时器模式下或计数器模式下,每种模式下又有不同的工作方式。

当定时或计数益处时可申请中断。

5、中断系统

单片机中的中断系统指CPU暂停在正在执行的程序转而为中断源服务(执行中断服务程序),在执行完终端服务程序后再回到原程序继续执行。

中断系统是指能够处理上述中断过程所需要的部分电路。

AT89C51的中断系统由中断源、中断允许控制器IE、中断优先控制器IP、定时器控制器TCON(中断标志寄存器)等构成,IE、IP、TCON均为SFR特殊功能寄存器。

6、内部总线

总线是用于传送信息的公共途径,总线可分为数据总线、地址总线和控制总线。

单片机内的CPU、存储器、I、O接口等单元部件都通过总线连接到一起。

采用总线结构可以减少信息传输线的根据,提高系统可靠性,增强系统灵活性。

AT89C51单片机内部总线是单总线结构,即数据总线和地址总线是公用的。

7、AT89C51单片机工作方式

复位方式

单片机在开机时或在工作中因干扰而使程序失控或工作中程序处于某种死循环状态等情况下都需要复位。

复位的作用是使中央处理器CPU以及其他功能部件都恢复到一个确定的初始状态,从这个状态开始工作。

(1)复位原理

AT89C51单片机的复位靠外部电路实现,信号由RESET(RST)引脚输入,高电平有效,在振荡器工作时,只要保持RST引脚高电平两个机器周期,单片机即复位。

复位后,PC程序计数器的内容为0000H。

片内RAM中内容不变。

(2)常用复位电路

一般有上电复位、手动开关复位和自动复位电路三种,如图所示。

图5单片机复位电路

(3)AT89C51时钟电路

振荡器于时钟电路

单片机内各部件之间有条不紊的协调工作,其控制信号是在一种基本节拍的指挥下按一定时间顺序发出的,这些控制信号在时间上的相互关系就是CPU时序。

而产生这种基本节拍的电路就是振荡器和时钟电路。

AT89C51单片机内部有一个用于构成振荡器的单级反向放大器,如图所示:

图6AT89C51内部振荡电路图

引脚XTAL1为反相器输入端,XTAL2为反相器输出端。

当在放大器两个引脚上外接一个晶体和电容组成的并联谐振电路作为反馈元件时,便构成一个自激振荡器,如下图所示:

图7内部振荡器等效电路图

五、系统设计

1、系统方框图

图8

2、工作原理

交通灯的亮、灭由P0口引脚P0.0、P0.4、P0.2、P0.3、P0.4、P0.5

的高、低电平控制,高电平时亮,低电平时灭。

东西红灯亮P0.0=1东西红灯灭P0.0=0

东西绿灯亮P0.2=1东西绿灯灭P0.2=0

东西黄灯亮P0.1=1东西黄灯灭P0.1=0

南北红灯亮P0.3=1南北红灯灭P0.3=0

南北绿灯亮P3.5=1南北绿灯灭P3.5=0

南北黄灯亮P3.4=1南北黄灯亮P3.4=0

3、交通灯状态分析

十字路口交通灯如下图所示,将12个交通灯进行编号

图9

这12个交通灯共有四个状态:

状态1(S1):

东西红灯(4、10)亮,南北绿灯(3、9)亮。

状态2(S2):

南北绿灯(3、9)灭,黄灯(2、8)亮,东西仍为红灯(4、10)亮。

状态3(S3):

南北红灯(1、7)亮,东西绿灯(6、12)亮。

状态4(S4):

东西绿灯(6、12)灭,黄灯(5、11)亮,南北仍为红灯(1、7)亮。

具体的延时程序:

movtmod,#01h;定时器T0工作方式

movth0,#03ch

movtl0,#0b0h;延时ms

setbtr0;启动T0工作

loop1:

jbctf0,loop2;100ms到,即TF0=1,转到loop2,并清TF0

sjmploop1;未到ms,再检查TF0

loop2:

以上程序延时100毫秒,用软件循环的方法,循环几次就是几百毫秒,如下

loop0:

movtmod,#01h;定时器T0工作方式

movth0,#03ch

movtl0,#0b0h;延时ms

setbtr0;启动T0工作

loop1:

jbctf0,loop2;100ms到,即TF0=1,转

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1