单片机课程设计交通灯控制系统.docx
- 文档编号:3262834
- 上传时间:2022-11-21
- 格式:DOCX
- 页数:21
- 大小:1.38MB
单片机课程设计交通灯控制系统.docx
《单片机课程设计交通灯控制系统.docx》由会员分享,可在线阅读,更多相关《单片机课程设计交通灯控制系统.docx(21页珍藏版)》请在冰豆网上搜索。
单片机课程设计交通灯控制系统
单片机课程设计(论文)
论文(设计)题目:
交通灯控制系统的设计
院系:
信息工程学院
专业:
计算机科学与技术
姓名:
李雨晴
学号:
031040109
指导教师:
陶勇
2013年5月10日
致谢
在论文的写作过程中,有很多困难,无论是在理论学习阶段,还是在课题论文的选题、资料查询、开题、研究和撰写的每一个环节,无不得到指导师的悉心指导和帮助。
借此机会我向陶勇老师表示衷心的感谢!
当然,正是由于陶勇老师的传道、授业、解惑,让我学到了专业知识,并从他身上学到了如何求知治学、如何为人处事。
他为人随和热情,治学严谨细心。
在闲聊中他总是能像知心朋友一样鼓励你,在论文的写作和措辞等方面他也总会以“专业标准”严格要求你,从选题、定题开始,一直到最后论文的反复修改、润色始终认真负责地给予我深刻而细致地指导,帮助我开拓研究思路,精心点拨、热忱鼓励。
正是陶老师的无私帮助与热忱鼓励,我的课题论文才能够得以顺利完成!
同时,我也要感谢给予过我帮助的同学,他们为我撰写论文提供了不少建议和帮助。
他们的支持及与他们之间的情感,是我永远值得珍惜的财富。
摘要
稳压电源是各种电子的动力源,被人称为电路的心脏,所有用电设备,包括电子仪器仪表,家用电器等对供电电压都有一定的要求。
至于精密的电子仪器,对供电电压的要求更为严格。
所谓的DC/DC直流稳压是指电压或电流的变化小到可允许的程度,并不是绝对的不变。
目前,随着单片开关电源集成电源的应用,开关电源正朝着短、小、轻、薄的方向发展。
单片开关电源自20世纪90年代中期问世以来便显示出来强大的生命力,它作为一项颇具发展和影响力的新产品,引起了国内外电源界的普遍重视。
尤其是最近两年来,国外一些著名的芯片厂家又竞相推出了一大批单片开关电源集成电路,更为新型开关电源的推广及奠定了良好的基础。
单片开关电源具有集成度高、高性价化、最简外围电路,最佳性能等指标,现已成为开发中小功率开关电源、精密开关电源及电源模块的优选集成电路。
【关键词】:
稳压电源;DC/DC直流稳压电源;单片开关电源
Abstract
Powersupplyisapowersourceforavarietyofelectronic,hasbeencalledtheheartofthecircuit,allelectricalequipment,includingelectronicinstrumentation,andhouseholdappliancestothesupplyvoltagehascertainrequirements.Theso-calledDC/DCvoltageorDCcurrentissmallchangetotheextentpermissible,notabsolutechange.
Withthesingleapplicationofintegratedpowerswitchingpowersupply,switchingpowersupplyismovingintheshort,small,light,thindirection.Chipswitchingpowersupplysincethemid-20thcentury,90haveshownsincetheadventofgreatvitality,asaconsiderabledevelopmentandimpactofnewproducts,thepowersectorattractedwidespreadattentionathomeandabroad.Especiallyinthelasttwoyears,foreignmanufacturersandsomewell-knownchipintroducedalargenumberofcompetingsingle-chipswitchingpowersupplyintegratedcircuit,morepromotionofthenewswitchingpowersupplyandlayagoodfoundation.Chipswitchingpowersupplywithhighintegration,highprice,themostsimpleexternalcircuit,thebestperformanceandotherindicators,hasnowbecomethedevelopmentofsmallandmedium-powerswitchingpowersupply,precisionandpowermodulesswitchingpowersupplyintegratedcircuitoptimization.
【Keywords】:
PowerSupply;DC/DCPowerSupply;Chipswitchingpowersupply
引言
随着微控技术的日益完善和发展,单片机的应用在不断走向深入。
它的应用比定导致传统的控制技术从根本上发生变革。
也就是说单片机应用的出现是对传统控制技术的革命。
它在工业控制、数据采集、智能化仪表、机电一体化、家用电器等领路得到了广泛应用,极大的提高了这些领域的技术水平和自动化控制。
因此单片机的开发应用已成为高技术工程领域的一项重大课题。
因此了解单片机知识,掌握单片机的应用技术具有重大的意义。
同时,随着我国社会经济的发展,城市化、城镇化进程的加快,道路交通堵塞问题日趋严重,如何对交通进行合理的管理和调度而尽可能减少堵车现象成为目前我国很多地方尤其是特大城市急需解决的问题,显然交通灯在其中起着不可或缺的作用。
本文设计了一个以单片机为核心的交通灯控制系统,来实现十字路口交通的智能化管理。
目录
论文(设计)题目:
交通灯控制系统的设计1
致谢2
摘要3
Abstract4
引言5
目录6
1.1设计内容本6
1.2设计任务和要求7
1.3设计意义7
第二章系统总体方案及硬件设计7
2.1系统总体方案设计7
2.2硬件电路总体设计方案8
2.3硬件电路设计9
2.3.1电源晶振及复位部分9
2.3.2中央单片机部分10
2.3.3交通灯与计时牌部分11
第三章软件设计12
3.1软件总体设计方案12
3.2软件系统设计具体过程13
第四章PROTEUS仿真14
4.1PROTEUS简介14
4.2仿真过程14
第五章硬件的焊接与调试16
第六章结论17
参考文献17
附录一(单片机程序代码实现)18
第一章概述
1.1设计内容本
设计是基于AT89S52单片机的十字路口交通灯控制系统,利用12个发光二极管模拟交通灯,另用两个7段共阴极LED作为显示倒计时的器件,用于显示每次允许通过的时间与变换道路通断许可的时间,倒计时应为可调控,有一个开关用于实现调控倒计时的功能。
其次,为了模拟道路出现的各种情况,设定了1个开关模拟主干道无车情况,使整个系统更加灵活、有效,同时,由于单片机的种种优点,该系统操作简洁,安装方便。
1.2设计任务和要求
(1)任务:
设计一个十字路口单片机交通灯控制系统。
(2)要求:
、南北方向(主干道)车道和东西方向(支干道)车道两条交叉道路上的车辆交替运行,红灯时间都设为30秒、绿灯时间为25秒,时间可设置修改。
、在绿灯转为红灯时,要求黄灯先亮5秒钟,才能变换运行车道;
、东西方向、南北方向车道除了有红、黄、绿灯指示外,每一种灯亮的时间都用显示器进行显示(采用计时的方法)。
、一道(南北方向)有车而另一道(东西方向)无车(用按钮开关控制),交通灯控制系统能立即让有车道放行。
1.3设计意义
课程设计使我们进一步熟悉和掌握了单片机的内部结构和工作原理,了解了单片机应用系统设计的基本方法和步骤,掌握了单片机仿真软件Proteus的使用方法,键盘和显示器在的单片机控制系统中的应用以及撰写课程设计报告的方法。
此次设计很好的将书本上的理论知识和实践有机的联系了起来,是我们对理论知识有了更进一步的掌握,锻炼了我们的动手能力,同时也让我们懂得了理论与实际相结合的意义。
为以后的工作和学习提供了宝贵的经验。
第二章系统总体方案及硬件设计
2.1系统总体方案设计
本系统由硬件系统和软件系统组成,硬件系统包括按键控制模块、中央处理系统和指示灯倒计时显示模块;而为了实现相应功能软件系统包括软件系统包括主程序、定时器0中断服务程序、定时器1中断服务程序、延时程序、外部中断0服务程序、外部中断1服务程序和显示程序。
采用at89c51单片机作为控制器,通行倒计时显示采用16×16点阵led发光管,左拐、右拐、直行及行人4种通行指示也采用16×16点阵双色led发光管。
该系统框架如图所示。
列驱动采用7495以实现串行端口扩展,行驱动采用4/16译码器74ls154生成16条行选通信号线,再经过驱动器驱动对应的行线。
每条行线上需要的较大的驱动电流,应选用较大功率三极管作为驱动管。
这种方案的的图像显示逼真,单片机占用端口资源少;缺点是需要大量的硬件,电路复杂,耗电量大,在模型制作中较少采用。
2.2硬件电路总体设计方案
硬件系统包括按键控制部分、中央单片机部分、时钟电路与复位电路部分和交通灯与计时牌显示部分。
这几个部分协调工作完成预定任务。
硬件电路连接关系如下图:
图1
2.3硬件电路设计
本系统以AT89S52单片机为核心,包括中央单片机部分、电源晶振与复位电路部分、输出驱动控制部分和交通灯与计时牌显示部分和按键控制部分。
2.3.1电源晶振及复位部分
时钟电路在单片机系统中起着非常重要的作用,是保证系统正常工作的基础。
在一个单片机应用系统中,时钟是保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢。
为达到振荡周期是12MHZ的要求,这里要采用12MHZ的晶振,另外有两个30P的电容,两晶振引脚分别连到XTAL1和XTAL2振荡脉冲输入引脚。
具体连接如图2:
图2
复位是单片微机的初始化操作,其主要功能是把PC初始化为0000H,使单片微机从0000H单元开始执行程序。
除进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,可以按复位键以重新启动,也可以通过监视定时器来强迫复位。
RST引脚是复位信号的输入端。
复位电路在这里采用的是上电+按钮复位电路形式,具体连接电路如图3:
图3
2.3.2中央单片机部分
中央单片机部分为Atmel公司生产的单片机AT89S52。
AT89S52是一个低功耗,高性能CMOS8位单片机,片内含8kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。
AT89S52(如图4)具有如下特点:
40个引脚,8kBytesFlash片内程序存储器,256bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。
图4
2.3.3交通灯与计时牌部分
交通灯采用12个发光二极管组成,由P1口控制,限流电阻。
而计时牌采用共阳极数码显示器。
通常,共阳极接低电平(一般接地),其它管脚阶段驱动电路输出端。
当某段驱动电路的输出端为高电平时,该端所连接的字符导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。
同样,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。
本次设计在显示模块用到的是两个两位一体共阳极数码管,共有8个代码输入口和4个位选输入口,采用排阻提供上拉电流数码管,以保证有足够大的电流点亮数码管,采用动态驱动,使各位数码管逐个轮流受控显示,这就是动态驱动,由于扫描速度极快,显示效果与静态驱动相同。
同时,由于P0口的特性,附加1k欧上拉电阻以驱动。
该部分硬件连接如图5:
图5
第三章软件设计
3.1软件总体设计方案
本次单片机课程设计软件设计部分采用模块化程序设计,软件系统包括主程序、定时器0中断服务程序、定时器1中断服务程序(用以扩充外部中断)、延时程序、外部中断0服务程序、外部中断1服务程序和显示程序。
程序流程图如图6、图7:
图6
图7
3.2软件系统设计具体过程
软件设计部分采用模块化程序设计,用C语言编写。
Keil是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。
另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。
在开发大型软件时更能体现高级语言的优势。
(单片机程序见附录)
第四章PROTEUS仿真
4.1PROTEUS简介
Proteus是英国Labcenter公司开发的电路分析与实物仿真软件。
它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:
(1)实现了单片机仿真和SPICE电路仿真相结合。
具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。
(2)支持主流单片机系统的仿真。
目前支持的单片机类型有:
ARM7(LPC21xx)、8051/52系列、AVR系列、PIC10/12/16/18系列、HC11系列以及多种外围芯片。
(3)提供软件调试功能。
在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如KeilC51uVision2、MPLAB等软件。
(4)具有强大的原理图绘制功能。
总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。
4.2仿真过程
接通电源,系统开始工作。
(1)系统初始状态设置为主干道(南北方向)有车,主干道绿灯,次干道(东西方向)红灯从初始时间30秒开始计时。
图8
(2)30秒后,开始变换车道,黄灯闪烁,倒计时为5秒。
图9
(3)5秒后,次干道通车,主干道红灯,次干道绿灯,倒计时为30秒。
图10
(4)特殊情况,次干道无车,干道马上通行,按控制钮,系统直接进入主干道通行状态,主干道绿灯,次干道红灯,倒计时为30秒。
如“图10”。
第五章硬件的焊接与调试
对照原理图进行焊接工作,把硬件先依次正确插到相应的位置,然后再次检查器件是否都正确,确定无误后进行焊接。
在焊接的过程中要注意不要将相临的两个引脚焊接在一起,防止短路影响使用。
硬件连接好以后,通过ISP下载线向单片机内烧制HEX程序,观察各部分工作情况。
第六章结论
通过本次课程设计,我在理论的基础上更深刻的掌握了单片机的深层内容及实际生活中的应用,实训锻炼了自己动手能力和思维能力,还有在软件方面的编程能力,让我受益匪浅,同时也暴露出一些平时学习上的问题,让我深刻反思。
这些问题的发现将为我以后的学习和工作指明了道路,查漏补缺为进一步学习作好准备。
通过这次课设,让我更熟悉掌握了Keil,proteus这些应用程序的运用,让我懂得了如何编写一些简单的程序,学会了如何制作单片机应用程序,还有焊接和程序下载。
但在中间暴露出很多问题:
对平时上课讲的理论知识没有完全掌握消化,到了实际操作中还得请教同学,在焊接中焊接的基本工夫掌握不到家,手上工夫还是很欠缺的,使得电路板不是很美观。
这些问题的发现,有助于提高我在以后的工作和学习中对此类问题的认识,确保不在同一问题上再次犯错。
严谨求实、踏实务实,是我这次课程设计的深刻总结。
做课程设计的这几天翻阅了很多书,也上了很多网站去寻找自己需要的资料。
这种寻找有很强的目的性,只是为了自己选定的课题内容而查阅。
所以除了自己课题以外的其他方面几乎还是一无所知。
这让我深刻的认识到了自己专业知识的贫乏。
为我对自己以后的规划敲响了警钟。
通过单片机课程设计,我加深了对单片机理论的理解,学回了怎样将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的不畏困难的挑战精神,从而不断地战胜自己,超越自己,我在这一设计过程中,学会了坚持不懈,不轻言放弃。
参考文献
[1]余发山,王福忠单片机原理及应用技术中国矿业大学出版社2008.6
[2]河南理工大学电气学院单片机实验报告指导册河南理工大学出版社2009
附录一(单片机程序代码实现)
#include
#include
#defineuintunsignedint
#defineucharunsignedchar
ucharwei[4]={0xfe,0xfd,0xfb,0xf7};
ucharcodetable[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
sbitduan=P3^7;
sbitdxr=P1^0;
sbitdxg=P1^1;
sbitdxy=P1^2;
sbitnbr=P1^3;
sbitnbg=P1^4;
sbitnby=P1^5;
ucharsanshi=30,erwu=25,wu=5,aa=0,bb=0;
voiddelay(uintz)
{
uintx,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
voidinit()
{
EA=1;
EX0=1;
IT0=1;
TMOD=0x01;
TH0=0x3c;
TL0=0xb0;
ET0=1;
TR0=1;
}
voidbegin()
{
uchara,b,c,d;
a=sanshi/10;
b=sanshi%10;
c=erwu/10;
d=erwu%10;
P2=wei[0];
duan=1;
P0=table[a];
duan=0;
delay(10);
P2=wei[1];
duan=1;
P0=table[b];
duan=0;
delay(10);
P2=wei[2];
duan=1;
P0=table[c];
duan=0;
delay(10);
P2=wei[3];
duan=1;
P0=table[d];
duan=0;
delay(10);
}
voidbegin1()
{
uchara,b,c,d;
a=sanshi/10;
b=sanshi%10;
c=erwu/10;
d=erwu%10;
P2=wei[0];
duan=1;
P0=table[a];
duan=0;
delay(10);
P2=wei[1];
duan=1;
P0=table[b];
duan=0;
delay(10);
P2=wei[2];
duan=1;
P0=table[0];
duan=0;
delay(10);
P2=wei[3];
duan=1;
P0=table[wu];
duan=0;
delay(10);
}
voidbegin2()
{
uchara,b,c,d;
a=sanshi/10;
b=sanshi%10;
c=erwu/10;
d=erwu%10;
P2=wei[0];
duan=1;
P0=table[c];
duan=0;
delay(10);
P2=wei[1];
duan=1;
P0=table[d];
duan=0;
delay(10);
P2=wei[2];
duan=1;
P0=table[a];
duan=0;
delay(10);
P2=wei[3];
duan=1;
P0=table[b];
duan=0;
delay(10);
}
voidbegin3()
{
uchara,b,c,d;
a=sanshi/10;
b=sanshi%10;
c=erwu/10;
d=erwu%10;
P2=wei[0];
duan=1;
P0=table[0];
duan=0;
delay(10);
P2=wei[1];
duan=1;
P0=table[wu];
duan=0;
delay(10);
P2=wei[2];
duan=1;
P0=table[a];
duan=0;
delay(10);
P2=wei[3];
duan=1;
P0=table[b];
duan=0;
delay(10);
}
voiddeng()
{
dxr=1;
dxg=1;
dxy=1;
nby=1;
nbr=1;
nbg=1;
}
voidmain()
{
//uchari;
init();
while
(1)
{
if(aa==0)
{
if(bb==0)
{
deng();
dxr=0;
nbg=0;
begin();
}
else
{
deng();
dxr=0;
nby=0;
begin1();
}
}
else
{
if(bb==0)
{
deng();
nbr=0;
dxg=0;
begin2();
}
else
{
deng();
nbr=0;
dxy=0;
begin3();
}
}
}
}
voidjieshou()interrupt0
{
if
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 交通灯 控制系统