模拟交通灯系统Word文档下载推荐.docx

上传人:b****3 文档编号:8144217 上传时间:2023-05-10 格式:DOCX 页数:15 大小:289.25KB
下载 相关 举报
模拟交通灯系统Word文档下载推荐.docx_第1页
第1页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第2页
第2页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第3页
第3页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第4页
第4页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第5页
第5页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第6页
第6页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第7页
第7页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第8页
第8页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第9页
第9页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第10页
第10页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第11页
第11页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第12页
第12页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第13页
第13页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第14页
第14页 / 共15页
模拟交通灯系统Word文档下载推荐.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

模拟交通灯系统Word文档下载推荐.docx

《模拟交通灯系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《模拟交通灯系统Word文档下载推荐.docx(15页珍藏版)》请在冰点文库上搜索。

模拟交通灯系统Word文档下载推荐.docx

5.4仿真结果.............................................8

六.致谢..................................................9

七.参考文献..............................................9

八.附录.................................................10

原理图.................................................10

仿真图................................................11

程序.................................................12

一.课程设计题目:

题目:

模拟交通灯管理系统。

二.课程设计目的意义:

2.1目的意义

本次课程设计是对理论讲授的一个应用的过程,通过此次课程设计一方面使学生对课堂所学单片机原理知识进一步巩固和验证,另一方面也增加学生的感性认识,有助于加深对所学知识的理解,同时锻炼学生的实际动手能力和分析问题解决问题的能力。

交通灯模拟系统的课程设计既让学生巩固了课本学到的理论,还让学生学习了单片机硬件电路设计和用户程序设计的整个过程,同时学习了查阅资料、参考资料的方法。

单片机的课程设计主要是通过学生独立设计方案并自己动手用计算机电路设计软件,编写和调试用户程序,来加深对单片机的认识,充分发挥学生的个体创新能力。

2.2内容

设计一种用AT89C51系列单片机控制的交通灯系统,东西和南北两路的通车时间可调,时间可倒计时显示。

某十字路口东西、南北方向装设红、黄、绿灯和显示器,红、黄、绿灯按照一定的时序轮流发亮,显示器对每个方向的信号接通时间进行倒计时显示。

十字路口交通灯的亮灭规律是,初始状态是四个路口(东西南北)的红灯全亮,之后是南北路口的绿灯亮,东西方向的红灯亮,南北方向通车。

延时一段时间后,南北路口的绿灯灭,同时黄灯开始闪烁,闪烁若干次后,红灯亮;

同时东西路口的绿灯亮,东西方向通车。

延时一段时间后,东西路口的绿灯灭,同时黄灯开始闪烁,闪烁若干次后,红灯亮;

同时南北路口的绿灯亮,南北方向通车。

之后,重复上述过程。

三.课程设计要求

(1)简述设计目的;

(2)阐述设计原理;

(3)按步骤设计;

(4)绘制硬件原理图;

(5)用protues仿真;

(6)给出程序清单;

(7)字迹工整,文句通顺,内容涉及公式部分一律用公式编辑器编辑,

正文用宋体小四字,标题一律用黑体四号字。

同时写出课程设计过程中的运行结果,现象,体验与收获;

(8)报告要用A4纸打印,统一封皮,装档上交。

四.设计原理

4.1总体设计方案

本次题目要求某十字路口东西、南北方向装设红、黄、绿灯和显示器,红、黄、绿灯按照一定的时序轮流发亮,显示器对每个方向的信号接通时间进行倒计时显示。

初始状态四个路口(东西南北)的红灯全亮,之后是南北路口的绿灯亮,东西方向的红灯亮,南北方向通车。

根据十字路口交通灯的要求,可将系统分为三个模块。

第一个模块是控制模块,主要负责整个系统的控制和运算,从而使各个模块正常工作,包括按键和复位电路;

第二个模块是显示模块,包括LED灯和数码管;

第三个模块是电源模块,给各个模块供电,让各个模块工作。

系统设计结构如图:

电源模块北显示模块

控制模块西显示模块东显示模块

南显示模块

工作状态显示

图4.1系统设计结构图

4.2硬件设计

4.2.1主控单片机AT89C51

图4.2AT89C51单片机引脚图

AT89C51是一种带4K字节的低电压、高性能CMOS8位微处理器。

单片机的可擦除只读存储器可以反复擦除1000次。

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

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。

AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

(1)主要特性:

与MCS-51兼容;

4K字节可编程闪烁存储;

三级程序存储器锁定;

128*8位内部RAM;

32可编程I/O线;

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

5个中断源;

可编程串行通道;

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

片内振荡器和时钟电路

(2)管脚说明:

VCC:

供电电压。

GND:

接地。

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

RST:

复位输入。

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

ALE/PROG:

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

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

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

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

然而要注意的是:

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

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

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

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

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

/PSEN:

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

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

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

XTAL1:

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

XTAL2:

来自反向振荡器的输出。

4.2.2单片机最小系统

(1)复位电路

在振荡器运行时,有两个机器周期以上的高电平出现在此引脚是,单片机复位。

复位后P0-P3口均置1引脚表现为高电平。

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

复位电路如下图所示:

图4.3复位电路

(2)按键电路

由于按键数量不多,选择独立式按键口线,每个按键的工作不会影响其他I/O口线的工作状态。

K1(减一键):

在设置状态时,每按一次递减键,初始值的数字减1。

K2(增一键):

在设置状态时,每按一次递增键,初始值的数字增1。

K3(确认键):

在设置状态时,按下此键后,单片机按照新的初始值进行倒计时及显示倒计时的数字。

如果已经处于计时状态则此键无效。

在实现键盘的扫描和运行模式的切换时,主程序在初始化一些变量和寄存器之后,需要不断循环地读取键盘的状态和动态扫描数码管显示相应的数字,根据键盘的键值实现设置状态、计时的切换。

按键电路图如下:

图4.4按键电路图

(3)显示电路

显示器用于直观的显示数字系统的运行状态和工作数据,采用四个LED显示器和共阴极数码管组成显示电路。

控制发光段明暗来显示数字计时,控制灯的变化。

设计中采用LED为发光二极管,可以把电能转化成光能,与普通二极管一样是由一个PN结组成,也具有单向导电性。

本次设计中采用的数码管是一种半导体发光器件,其基本单元是发光二极管。

数码管实际上是由七个发光管组成8字形而构成的,加上小数点就是8个。

发光二极管单元连接方式可分为共阳极数码管和共阴极数码管。

共阳极数码管。

共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管,共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮,当某一字段的阴极为高电平时,相应字段就不亮。

显示电路图如下:

图4.5显示电路

五.仿真

单片机体积小,重量轻,具有很强的灵活性而且价格便宜,具有逻辑判断,定时计数等多种功能,广泛应用于仪器仪表,家用电器,医用设备的智能化管理和过程控制等领域。

以单片机为核心的嵌入式系统已经成为目前电子设计最活跃的领域之一。

在嵌入式系统的中,开发板成本高,特别是对于大量的初学者而言,还可能由于设计的错误导致开发板损坏。

利用Proteus我们可以很好地解决这个问题,由此我们可以快速地建立一个仿真系统。

5.1Proteus介绍

Proteus是英国LabcenterElectro-nics公司开发的一款电路仿真软件,软件由两部分组成:

一部分是智能原理图输入系统ISIS(IntelligentSchematicInput 

System)和虚拟系统模型VSM(Virtual 

ModelSystem);

另一部分是高级布线及编辑软件ARES(Adv-Ancd 

RoutingandEditing 

Software)也就是PCB.

Proteus可以仿真模拟电路及数字电路,也可以仿真模拟数字混合电路。

Proteus可提供30多种元件库,超过8000种模拟、数字元器件。

可以按照设计的要求选择不同生产厂家的元器件。

此外,对于元器件库中没有的元件,设计者也可以通过软件自己创建。

除拥有丰富的元器件外,Proteus还提供了各种虚拟仪器,如常用的电流表,电压表,示波器,计数/定时/频率计,SPI调试器等虚拟终端。

支持图形化的分析功能等。

Proteus特别适合对嵌入式系统进行软硬件协同设计与仿真,其最大的特点是可以仿真8051,PIA,AVR,ARM等多种系列的处理器。

Protues包含强大的调试工具,具有对寄存器和存储器、断点和单步模式IARC-SPY,Keil、MPLAB等开发工具的源程序进行调试的功能;

能够观察代码在仿真硬件上的实时运行效果;

对显示,按钮,键盘等外设的交互可视化进行仿真。

5.2ProteusPCB

Proteus的PCB设计除了有自动布线仿真功能外,还集成了PCB设计,支持多达16个布线层,可以任意角度放置元件和焊接连线;

集成了高智能的布线算法,可以方便地进行PCB设计。

5.3软件的编写

本例题采用可调电阻调节电压值作为模拟信号的输入量,通过A/D转换芯片AD0808把模拟信号转换为数字量传送到单片机的P1口,并在P0口把转换的结果显示出来。

软件的编写可以在KeilC51环境下进行,芯片的型号选择AT89C51,编写data.c文件,利用KeilC51进行编译,编译成功后生成data.hex文件。

5.4仿真结果

在绘制完电路原理图,将程序编译后生成HEX代码。

将程序导入AT89C51单片机中,开始仿真,并观察仿真结果。

初始时,每个路口都是红灯。

然后南北方向转变成绿灯,我设定绿灯时间是30秒,黄灯时间是30秒,10秒后,南北方向黄灯开始闪烁,闪烁3秒,变成红灯,南北方向禁止通行,东西方向放行,变成绿灯,9秒后黄灯闪烁,闪烁3秒,东西方向变成红灯,禁止通行,南北方向放行,如此循环。

不过我的按键不太灵敏,出现了不能调试的问题。

经过修改还是存在瑕疵。

仿真过程如下图所示:

图5.1电路仿真图

六.现象体验收获

单片机是一门深奥实用的学科,经过本次课程设计让我对单片机的应用有了更深刻的认识。

首先我对51单片机的端口重新记忆,对其功能有了深刻的记忆。

在设计过程中也出现了设计错误,思路的不断完善使方案有所改变。

一开始我只用了一块LED屏,没有考虑到每个红绿交通灯的分别控制需求,后开经过老师的指导修改,改变了思路成功调试。

一开始的整体设计是非常折磨的,先想到需要的整体模块还算简单,但是具体的连接,接线顺序,都是需要耐心和细心一点点纠正修改的。

12个灯在接线的时候第一次也是接乱了,后来通过同学的老师的帮助将顺序屡清楚了,经过两周的学习查阅资料,我终于顺利完成了初步的设计,后期有修改了一下,但是中间得到的知识是非常让人欣慰又激动的。

这种课程设计是非常和有趣生动的活动,在理论学习的同时又有实践结合,软件的操作。

之前我并不擅长使用软件进行画图设计,甚至在网上看视频教程来学习了软件制作电路图仿真。

当做完以后心里是无法言以表达的激动。

对我以后的设计思想、设计方法、设计过程都将会产生深远的影响。

学会查阅资料是我在这次设计中的最大收获,毕竟一个人的知识水平有限,资料在设计中的作用可以说是举足轻重。

不断地收集和查阅资料使我知识面不断拓宽,为以后也打下了良好的基础。

虽然在制作的过程中有过困惑有过怀疑,但是通过自己的学习和同学老师的引导,终于成功仿真出结果的时候内心真的是非常激动有成就感的。

七.致谢

非常感谢老师的细心指导,迟老师非常认真的为我们每个人的方案逐一指导。

在一开始的方案中我的布线比较乱,老师指出了正确的方式并耐心讲解了各个模块该有的功能安排。

感谢老师为我们付出的时间和辛劳,让我们在这次课程设计中收获了难忘的经历,相信在今后的设计和工作中都会有积极的影响。

也感谢同学对我的帮助,大家一起讨论出现的错误,寻找解决的方法。

这种互相学习,互相成长的时光也是大学生活中珍贵的回忆。

八.参考文献

1.齐志才MCS-51系列单片机原理及接口技术中国建筑工业出版社2005

2.阎石数字电子技术基础高等教育出版社2003

3.蔡美琴MCS--51系列单片机原理及应用高等教育出版社1999

4.张毅刚单片机原理及应用高等教育出版社2004

5.张友德单片微型机原理、应用与试验复旦大学出版社2000

五.附录

原理图

仿真图

程序

#include<

reg51.h>

#defineuintunsignedint

#defineucharunsignedchar

sbitwei_1=P2^0;

sbitwei_2=P2^1;

sbitns_R=P1^2;

sbitns_Y=P1^3;

sbitns_G=P1^4;

sbitew_R=P1^5;

sbitew_Y=P1^6;

sbitew_G=P1^7;

uinti,j;

inty,m,n;

ucharcodetable[]={0Xc0,0Xf9,0Xa4,0Xb0,0X99,0X92,0X82,0Xf8,0X80,0X90/*0x3f,0x06,0x56,0x4f,0x66,0x6b,0x7d,0x07,0x7f,0x6f*/};

voiddelay(uinta)

{for(i=0;

i<

100;

i++)for(j=0;

j<

a;

j++);

}

voiddaoshi_99()

{for(m=9;

m>

=0;

m--)

for(n=9;

n>

n--)

{wei_1=0;

wei_2=1;

P0=table[m];

delay

(1);

wei_1=1;

wei_2=0;

P0=table[n];

}}

voiddaoshi_3()

{for(y=3;

y>

y--)

{wei_1=1;

P0=table[0];

wei_1=0;

P0=table[y];

voidinit()

{P0=0X90;

P1=0X00;

P2=0X00;

P3=0X00;

voidmain()

{init();

ns_R=1;

ns_Y=0;

ns_G=0;

ew_R=0;

ew_Y=0;

ew_G=1;

daoshi_99();

ew_Y=1;

ew_G=0;

daoshi_3();

ns_R=0;

ns_G=1;

ew_R=1;

ns_Y=1;

}

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

当前位置:首页 > 外语学习 > 韩语学习

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

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