单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx

上传人:b****1 文档编号:5368099 上传时间:2023-05-05 格式:DOCX 页数:30 大小:251.69KB
下载 相关 举报
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第1页
第1页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第2页
第2页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第3页
第3页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第4页
第4页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第5页
第5页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第6页
第6页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第7页
第7页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第8页
第8页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第9页
第9页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第10页
第10页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第11页
第11页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第12页
第12页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第13页
第13页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第14页
第14页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第15页
第15页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第16页
第16页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第17页
第17页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第18页
第18页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第19页
第19页 / 共30页
单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx_第20页
第20页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx

《单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx》由会员分享,可在线阅读,更多相关《单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx(30页珍藏版)》请在冰点文库上搜索。

单片机课程设计任务书Proteus及KEIL仿真软件基于单片机的城市交通灯控制系统设计Word格式.docx

编写程序及调试;

周四:

撰写课程设计说明书;

周五:

课程设计答辩。

五、主要参考资料

[1]彭为等.单片机典型系统设计实例精讲[M].北京:

电子工业出版社,2006

[2]李群芳.单片机原理、接口及应用[M].北京:

清华大学出版社,2005

指导教师(签名):

教研室主任(签名):

1引言

交通灯是现代交通非常重要的一个组成部分,,一套好的交通灯系统往往对提升城市交通运输效率,降低事故发生率有至关重要的影响。

本系统由单片机系统、交通灯演示系统、按键系统、中断系统以及时钟电路、复位电路组成。

本文设计的智能交通灯系统采用Proteus设计与仿真,程序的编译与调试采用KeilC51来实现。

本文所设计的智能交通灯采用了单片机AT89C51,选用了LED灯和多位数码管来模拟显示的交通灯切换状态。

本系统除了实现最基本的交通灯功能以外,还有用来应对紧急情况的功能,这就是中断系统所实现的在有特定需要的情况下实现对交通灯状态的控制。

对于提高城市交通效率有非常重要的作用。

1.1课程设计任务

本课程设计的任务就是设计一个交通灯的控制系统,具体设计任务如下:

1.进行系统总体设计。

2.完成系统硬件电路设计。

3.完成系统软件设计。

4.撰写设计说明书。

1.2设计要求:

1.该控制系统能控制东西南北四个路口的红黄绿灯正常工作。

3.准行方向亮绿灯与禁行方向亮绿灯55s后,四个产品同时加亮一黄灯进行闪烁,以警告车辆及行人,准行方向与禁行方向即将改变。

4.四个道口无用数码管显示六人行或禁行的剩余时间

5.在交通情况特殊情况下可以通过K1、K2、K3按键对交通灯进行控制。

2设计方案简述

2.1总体思路

根据智能交通灯的具有的功能,将它主要分为三部分,包括数码管显示剩余时间部分、交通灯显示部分和按键实现中断部分。

总体设计思路和总体的电路分配如下所示:

图2-1总体设计思路

图2-2总体的电路分配图

2.2主要实现功能

5.在出现紧急状况时,可以通过人为操作进入特殊情况。

在此包含了4种特殊情况,包括加长东西南北方向的通行时间,四个方向均禁行,东西方向保持通行南北方向禁行,南北方向保持通行东西方向禁行。

当特殊情况结束时,人为操作进入正常状态。

2.3设计方案与意义

根据实际生活中使用的交通灯,在此次的智能交通灯的设计中也将具有显示时间的功能,使我们的设计与实际结合起来,在此部分LED灯将配合红黄绿灯的发光时间显示数据,对于每个数据将使用定时器来实现定时1秒,当1秒时间到达,LED上显示的时间自动减1,当时间减至为0,交通灯变换红黄绿灯。

基于传统交通灯控制系统设计过于死板,红绿灯交替是间过于程式化的缺点,智能交通灯控制系统的设计就更显示出了它的研究意义,它能根据道路交通拥护,交叉路口经常出现拥堵的情况。

利用单片机控制技术.提出了软件和硬件设计方案,能够实现道路的最大通行效率,使其满足交通需要。

3详细设计

3.1系统硬件电路设计

硬件电路由AT89C51单片机、4个4位共阳极的数码显示管、复位电路、时钟电路、按键电路以及交通灯演示系统组成。

框图如下:

图3-1总体硬件连接框图

3.2AT89C51芯片简介

芯片AT89C51的外形结构和引脚图如图3-1所示。

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM-FlashProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MC-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

图3-2AT89C51引脚图

3.2.1主要特性

8051CPU与MCS-51兼容

4K字节可编程FLASH存储器(寿命:

1000写/擦循环)

全静态工作:

0HZ-24KHZ

三级程序存储器保密锁定

128*8位内部RAM

32位可编程I/O线

两个16位定时器/计数器

5个中断源

可编程串行通道

低功耗的闲置和掉电模式

片内振荡器和时钟电路

3.2.2管脚说明

VCC:

供电电压

GND:

接地。

P0口:

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

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

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

在FLASH编程时,P0口作为原码输入口,当FLASH进行校验时,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口输出地址的高8位。

在给出地址“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口同时为闪烁编程和编程校验接收一些控制信号。

RST:

复位输入。

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

ALE/PROG:

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

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

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

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

然而它可用作对外部输出的脉冲或用于定是目的。

然而要注意的是:

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

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

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

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

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

:

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

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

有效。

但在访问外部数据存储器时,这两次有效的

信号将不出现。

/VPP:

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

注意加密方式1时,

将内部锁定为RESET;

端保持高电平时,此间内部程序存储器。

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

XTAL1:

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

XTAL2:

来自反向振荡器的输出引脚。

3.374LS273芯片

74LS273是8位数据/地址锁存器,如图3-3所示,它是一种带清除功能的8D触发器,下面介绍一下它的管脚图功能资料。

1脚是复位CLR,低电平有效,当1脚是低电平时,输出脚2(Q0)、5(Q1)、6(Q2)、9(Q3)、12(Q4)、15(Q5)、16(Q6)、19(Q7)全部输出0,即全部复位;

当1脚为高电平时,11(CLK)脚是锁存控制端,并且是上升沿触发锁存,当11脚有一个上升沿,立即锁存输入脚3、4、7、8、13、14、17、18的电平状态,并且立即呈现在在输出脚2(Q0)、5(Q1)、6(Q2)、9(Q3)、12(Q4)、15(Q5)、16(Q6)、19(Q7)上.

图3-374LS273引脚图

3.4单元电路设计

3.4.1多位数码显示管

LED显示器由共阳极七段发光二极管组成,排列成8字形状,因此也称为七段LED显示器。

为了显示数字或符号,要为LED显示器提供代码,即字形代码。

其段发光二极管,再加上一个小数点位,共计8段,因此提供的字形代码的长度正好是一个字节。

智能交通灯用到的数字0—9的共阳极字形代码如下表。

图3-4多位数码管引脚图

表3-1驱动代码表

显示数值

驱动代码(16进制)

1

2

3

4

5

6

7

8

9

C0H

F9H

A4H

B0H

99H

92H

82H

F8H

80H

90H

3.4.2时钟电路

MCS-51单片机芯片内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。

当使用内部振荡电路时,XTAL1和XTAL2引脚外接石英晶体和微调电容,如图所示,图中C2、C3大小一般为30pF。

还加了复位/备用电源引脚的接线方法,任何单片机在工作之前都要进行复位,以便CPU以及其他功能部件都处于一个确定的初始化状态,并从这个状态开始工作,也就是程序开始执行之前,单片机做好准备工作。

如何进行复位呢?

只能在单片机的RST引脚上保持两个机器周期(24个时钟周期)的高电平即可对单片机实现复位操作。

当主电源VCC发生掉电或者是电压降低到电平规定值时,VPD上外接的备用电源自动启用,为单片机内部RAM提供电源,以保护片内RAM中的信息不丢失,使系统在恢复上电后能正常运行。

图3-5时钟电路

3.4.3复位电路

AT89C51的复位是由外部的复位电路实现的。

复位电路通常采用上电复位和按钮复位两种方式。

在此次设计中,我使用了上电复位方式。

上电复位是通过外部复位电路的电容充电来实现的。

图3-6复位电路

3.5系统整体设计电路

结合各部分设计电路,得到交通灯硬件线路如下图所示:

图3-7硬件线路图

3.6系统软件功能设计

3.6.1程序设计思路

在这部分我使用了数码管动态显示方式来显示数据。

所谓动态显示方式,就是在某一时刻,只让某一位的位选线处于选通状态,而其他各位的位选线处于关闭状态,同时,段码线上输出相应为要显示的字符的段码。

这样,在同一时刻,LED中只有选通的那位显示出字符,而其他位则是熄灭的。

如此循环下去,就可以使各位显示出将要显示的字符。

设计思路如3-8所示:

图3-8LED显示流程图

3.6.2交通灯程序及设计思路

在这部分我设置南北方向通行,东西方向禁行为初始状态,持续时间为55s。

接下来黄灯闪烁5s,然后南北方向禁行,东西方向通行,持续时间仍为55s,最后黄灯闪烁5s,回到初始状态。

如此循环,程序流程图如图3-9所示。

图3-9交通灯程序流程图

3.6.3紧急情况程序及设计思路

当需要应对特殊情况时,在人为控制下,程序由中断入口地址切换到中断程序,根据实际情况的不同切换到不同的中断子程序,当紧急情况处理完,由人为控制返回原程序。

程序流程图如图3-10所示。

图3-10紧急情况程序设计流程图

4Proteus与KeilC51的操作

4.1KeilC51单片机软件开发系统

KeilC51工具包的整体结构中,其中uVision与Ishel1分别是C51forWindows和forDOS的集成开发软件(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。

开发人员可用IDE本身或其它编译器编译C或汇编源文件。

然后分别由C51及A51编译器编译生成目标文件(.obj)。

目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。

ABS文件由0H51转换成标准的Hex文件,以供调试器dScope51和tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存储器如EPROM中。

采用KEIL开发的89C51单片机应用程序步骤:

1.在uVision集成开发环境中创建新项目(Project),扩展文件名.UV2并为该项目选定合适的单片机CPU器件(本设计采用ATMEL公司下的AT89C51)

2.用uVision的文本编辑器编写源文件,可以是汇编文件(.ASM),也可以使C语言文件(扩展名.C),并将该文件添加到项目中去。

一个项目文件可以包括多个文件,除了源程序文件外,还可以是库文件、头文件或文本说明文件。

3.通过uVision2的相关选择项,配置编译环境、连接定位器以及Debug调试器的功能。

4.对项目中的源文件进行编译连接,生成绝对目标代码和可选的HEX文件,如果出现编译连接错误则返回到第2步,修改源文件中的错误后重构整个项目。

5.对没有语法错误的程序进行仿真调试,调试成功后将HEX文件写入到单片机应用系统的ROM中。

4.2单片机系统PROTEUS设计与仿真过程

Proteus强大的单片机系统设计与仿真功能,使它可成为单片机系统应用开发和改进手段之一。

全部过程都是在计算机上通过Proteus来完成的。

其过程一般也可分为三步:

1.在ISIS平台上进行单片机系统电路设计、选择元器件、接插件、连接电路和电气检测等。

简称Proteus电路设计。

2.在Keil平台上进行单片机系统程序设计、编译、汇编编译、代码级调试,最后生成目标代码文件(*.hex)。

简称Proteus源程序设计和生成目标代码文件。

3.在ISIS平台上将目标代码文件加载到单片机系统中,并实现单片机系统的实时交互、协同仿真。

它在相当程度上反映了实际单片机系统的运行情况。

简称Proteus仿真。

4.3仿真结果

将在Keil平台上生成目标代码文件(*.hex)加载到单片机系统中,点击运行按钮,运行结果显示如图4-1所示。

图4-1仿真图

开始运行后,南北方向通行,东西方向禁行,同时数码管从60显示,每隔一秒数码管减一,当减到0时,四路的黄灯开始闪烁,数码管同时从5开始减一,减到0时,南北方向禁行,东西方向通行,同时数码管从60显示,每隔一秒数码管减一,当减到0时,四路的黄灯开始闪烁,数码管同时从5开始减一,减到0时,返回初始状态,再没有外部中断的情况下如此循环下去。

图4-2四个方向禁行

K1为外部中断按钮,当按下K1时,数码管不再显示数,黄灯闪烁五秒后,四路灯都为红色。

当按下复位开关后,返回到初始状态。

图4-3南北通行东西禁行

K2为外部中断按钮,当按下K2时,数码管不再显示数,黄灯闪烁五秒后,南北方向保持通行,东西方向保持禁行。

图4-4南北禁行东西通行

K3为外部中断按钮,当按下K3时,数码管不再显示数,黄灯闪烁五秒后南北方向保持禁行,东西方向保持通行。

图4-5延长四个方向通行时间

K4为外部中断按钮,当按下K4时,南北东西方向的通行时间均延长至120s。

5总结

这次实习让我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步。

让我把以前学习到的知识得到巩固和进一步的提高认识,对已有知识有了更进一步的理解和认识。

通过这次课程设计我感觉到要想做成功,必须花时间多做准备,查阅大量资料,每个过程都很繁琐,都要认真地分析每一步每一个模块要实现大的功能,然后分步进行编写调试,最后整合成在一起。

这次完成了对单片机的整体设计,更加了解到单片机的各项功能和需要注意的问题,加深了对单片机的了解。

这次实习虽然时间不长但是我学到了很多东西,让我明白了无论做任何事情首先态度要端正,拥有一个好的态度就有一个好的开始。

在实习的过程中我也懂得耐心和细心的重要性,理论与实践结合的意义。

6参考文献

[1]彭为等。

单片机典型系统设计实例精讲[M]。

北京:

电子工业出版社,2006

[2]张毅刚等。

单片机原理与应用设计[M]。

电子工业出版社,2008

[3]王义军。

单片机原理及应用习题与实验指导书[M]。

北京:

中国电力出版社,2006

[4]刘乐善。

微型计算机接口技术及应用[M].武汉:

华中科技大学出版社,2000

[5]陈明荧。

8051单片机课程设计实训教材[M]。

清华大学出版社,2004

[6]杨莉。

基于单片机控制的步进电机转速控制系统[J]。

南昌工程学院学报,2005

7附录

汇编程序如下:

ORG0000H

LJMPMAIN

ORG0003H

LJMPDIP0

ORG000BH

LJMPTT0

MAIN:

MOVR4,#20

MOV40H,#00H

MOV44H,#00H

MOV45H,#00H

MOV46H,#00H

MOV47H,#00H

MOVR0,46H

CJNER0,#01H,XX

MOV41H,#04H

MOV42H,#08H

MOV43H,#08H

XX:

MOV41H,#09H

MOV42H,#03H

MOV43H,#09H

MOVTH0,#3CH

MOVTL0,#0B0H

MOVTMOD,#01H

SETBET0

SETBEX0

SETBIT0

SETBEA

SETBTR0

MOVP1,#00H

SETBP1.3

SETBP1.7

PLY:

MOVR0,45H

CJNER0,#01H,YY

CLRP1.1

CLRP1.2

CLRP1.0

AJMPPLY

YY:

SETBP1.0

MOVDPTR,#TAB

MOVA,41H

MOVCA,@A+DPTR

MOVDPTR,#7FFFH

MOVX@DPTR,A

LCALLDEL2MS

SETBP1.1

MOVA,42H

MOVX@DPTR,A

SETBP1.2

MOVA,43H

TT0:

CLREA

PUSHAcc

DJNZR4,RET1

MOVR4,#20

MOVR0,43H

CJNER0,#09H,L0

MOVR0,42H

MOVR0,41H

MOVR0,40H

CJNER0,#00H,L1

LCALLS0

INC40H

LJMPL0

L1:

CJNER0,#01H,L2

LCALLS1

L2:

CJNER0,#02H,L3

L3:

LCALLS2

L0:

INC41H

MOVR0,44H

CJNER0,#01H,L4

CPLP1.5

L4:

CJNER0,#0AH,RET1

MOV41H,#00H

INC42H

MOV42H,#00H

INC43H

MOV43H,#0AH

RET1:

CLREA

POPAcc

RETI

DIP0:

PUSHPSW

PUSH

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

当前位置:首页 > 医药卫生 > 中医中药

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2