单片机课程设计交通灯控制系统设计Word文件下载.docx
《单片机课程设计交通灯控制系统设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《单片机课程设计交通灯控制系统设计Word文件下载.docx(17页珍藏版)》请在冰豆网上搜索。
[2]何立民编著.MCS-51系列单片机应用系统设计系统配置与接口技术.北京:
北京航空航天大学出版社,1999
[3]蔡美琴等编著.MCS-51单片机系统及应用.北京:
高等教育出版社.1992
4.设计进度(2010年6月14日至6月27日)
时间
设计内容
第1-2天
查阅资料,方案比较、设计与论证,理论分析与计算
第3-5天
硬件焊接、单元电路调试
第6-8天
系统调试
第9-10天
书写报告、答辩
5.设计地点
新实验楼308、313
二、评语及成绩
评分项目
评分标准
量化
分数
1.独立分析与解决问题的能力
很强
较强
一般
不能
10
2单片机系统设计能力
较差
很差
35
3.报告撰写情况
规范
整洁
逻辑
杂乱
有错误
25
4.辅导答疑
积极
认真
应付
消极
5.设计态度
6.出勤
全勤
缺勤次数
附加评语
量化总分
成绩:
单片机课程设计报告
班级:
自动化0744
姓名:
龚尚欢
学号:
16
指导教师:
叶天迟
撰写日期:
2010-6-23
目录
第一章:
课程设计内容与要求分析.......................1
1.1课程设计内容.....................................1
1.2课程设计要求分析..............................1
1.2.1系统单元电路组成...........................1
第二章控制系统程序设计...........................7
单片机原理及应用课程设计总结.........................13
参考文献............................................15
附录.................................................16
第1章:
课程设计内容与要求分析
1.1课程设计内容
以89C51单片机为核心器件组成交通灯控制系统,采用定时中断实现精确定时;
1)基本功能与要求:
设置优先控制功能:
1.2课程设计要求分析
1.2.1系统单元电路组成
电路组成:
在此电路中,我们主要用到了AT89C52单片机,
AT89C52是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,AT89C52是一种高效微控制器。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
1.AT89C52主要特性:
·
与MCS-51兼容
4K字节可编程闪烁存储器
寿命:
1000写/擦循环
数据保留时间:
10年
全静态工作:
0Hz-24Hz
三级程序存储器锁定
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信号将不出现。
/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的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。
除此之外,我们还用到了74LS164芯片,和数码管共同组成静态显示电路。
164为8位移位寄存器,其主要电特性的典型值如下:
54/74164185mW54/74LS16480mW
当清除端(CLEAR)为低电平时,输出端(QA-QH)均为低电平。
串行数据输入端(A,B)可控制数据。
当A、B任意一个为低电平,则禁止新数据输入,在时钟端(CLOCK)脉冲上升沿作用下Q0为低电平。
当A、B有一个为高电平,则另一个就允许输入数据,并在CLOCK上升沿作用下决定Q0的状态。
71LS164引脚图及引脚功能:
CLOCK:
时钟输入端
CLEAR:
同步清除输入端(低电平有效)
A,B:
串行数据输入端
QA-QH:
输出端
图174LS164封装图
图274LS164内部逻辑图
74LS164电气参数:
极限值
电源电压7V
输入电压………5.5V
工作环境温度
54164…………-55~125℃
74164…………-0~70℃
储存温度……-65℃~150℃
图3真值表
H-高电平L-低电平X-任意电平
↑-低到高电平跳变
QA0,QB0,QH0-规定的稳态条件建立前的电平
QAn,QGn-时钟最近的↑前的电平
第二章控制系统程序设计
在单片机的变成调试过程中,我们利用keil软件对单片机的程序进行编程、调试和仿真,并进一步利用pretues对电路和软件进行进一步的仿真。
该程序汇编语言程序如下:
ORG0000H
LJMPMAIN
ORG0003H
LJMPTI0
ORG0013H
LJMPTI1
ORG001BH
LJMPTI2
ORG0030H
MAIN:
MOVSP,#60H;
MOVTMOD,#60H;
设置T1的工作方式寄存器
MOVTL1,#0FFH;
MOVTH1,#0FFH;
SETBTR1;
SETBET1;
SETBEX0
SETBEX1
SETBIT0
SETBIT1
SETBEA
MOVR2,#40;
MOVR3,#35;
CLRP1.2
SETBP1.0;
QQ:
ACALLZZ;
调用十六--十子程序
CJNER2,#00H,TT;
R2不得0,B路红灯亮
AJMPAA;
TT:
CLRP1.3
SETBP1.4
SETBP1.5
SETBP1.0
ACALLJJ;
调用显示子程序
ACALLTIME
DECR2;
;
YY1:
DJNZR3,YY;
R3得0,
CJNER2,#05H,YY2;
R2得5,A路黄灯亮,R2不得5,A路绿灯闪
MOVR3,#05H;
A路黄灯亮
SETBP1.2
CLRP1.1
YY2:
R2不得5,A路绿灯闪
CPLP1.2
YY:
CJNER2,#09H,YYY1
YYY1:
CJNER2,#08H,YYY2
YYY2:
CJNER2,#07H,YYY3
YYY3:
CJNER2,#06H,YYY4
YYY4:
CJNER2,#05H,YYY
YYY:
AJMPQQ;
AA:
MOVR2,#35;
MOVR3,#40
CLRP1.5;
QQ1:
CJNER3,#00H,TT1;
AJMPMAIN;
TT1:
SETBP1.3
CLRP1.0
SETBP1.1
SETBP1.3
ACALLJJ
ACALLTIME;
DECR3;
PP1:
DJNZR2,PP;
CJNER3,#05H,PP2;
MOVR2,#05H;
CLRP1.4
PP2:
MOVR2,#05H;
CPLP1.5
PP:
CJNER3,#09H,PPP1
CPLP1.5
PPP1:
CJNER3,#08H,PPP2
PPP2:
CJNER3,#07H,PPP3
PPP3:
CJNER3,#06H,PPP4
PPP4:
CJNER3,#05H,PPP
PPP:
AJMPQQ1
ZZ:
十六--十子程序
MOVA,R2
MOVB,#10
DIVAB
MOV40H,B
MOV41H,A
MOVA,R3
MOV42H,B
MOV43H,A
RET
JJ:
MOVR0,#40H;
;
静态显示子程序4位显示
MOVR7,#4;
MOVSCON,#00H
KK:
MOVA,@R0;
MOVDPTR,#TBB
MOVCA,@A+DPTR
MOVSBUF,A
MM:
JNBTI,MM
CLRTI
INCR0
DJNZR7,KK
TIME:
MOVR4,#5;
延时1秒子程序
D1:
MOVR5,#200
D2:
MOVR6,#200
D3:
NOP
DJNZR6,D3
DJNZR5,D2
DJNZR4,D1
TI0:
CLREA
PUSHPSW
PUSHACC
PUSHP1
CLRP1.2
OO:
JNBP3.3,SSS
LJMPOO
TI1:
CLRP1.5
OO1:
JNBP3.2,SSS
LJMPOO1
TI2:
CLREA
OO2:
JBP3.5,SSS
LJMPOO2
SSS:
POPP1
POPACC
POPPSW
RETI'
EEE:
ACALLQQ
TBB:
DB0C0H;
DB0F9H;
1
DB0A4H;
2
DB0B0H;
3
DB99H;
4
DB92H;
5
DB82H;
6
DB0F8H;
7
DB80H;
8
DB90H;
9
END
单片机原理及应用课程设计总结
此次课程设计没有现成的程序和设计图,需要我们真正亲手去编,最郁闷的莫过于画设计图。
按照实验要求上的图画了出来,加载程序以后却不能正常运行,改了好多次都没有成功。
同学们电脑上软件的版本差异也影响了交流。
有些元件的型号不同,但在选用时图形确很相似,致使选错了元件,影响了结果。
这两周的实习真的有点郁闷,程序里面的好多内容不懂,自我感觉是单片机我们所学的内容还不足以编出这两个程序,但是只好硬着头皮去看去理解。
但在学习过程中也充满了乐趣,当看懂了程序的一些语句,画出了要求的设计图,那我喜悦那种成就感油然而生。
这次实习让我受益匪浅,无论从知识上还是其他的各个方面。
上课的时候的学习从来没有见过真正的单片机,只是从理论的角度去理解枯燥乏味。
但在实习中见过甚至使用了单片机及其系统,能够理论联系实际的学习,开阔了眼界,提高了单片机知识的理解和水平。
在这次课程设计中又让我体会到了合作与团结的力量,当遇到不会或是设计不出来的地方,我们就会在QQ群里讨论或者是同学之间相互帮助。
团结就是力量,无论在现在的学习中还是在以后的工作中,团结都是至关重要的,有了团结会有更多的理念、更多的思维、更多的情感。
单片机是很重要的一门课程,老师和一些工作的朋友都曾说过,如果学好一门单片机,就凭这个技术这门手艺找一个好工作也不成问题。
尽管我们在课堂学到的内容很有限,但在以后的学习中单片机还需要好好的深入研究和学习,学好了单片机也就多了一项生存的本钱。
最后衷心的感谢我的合作伙伴及叶天迟老师给我的精心指导和帮助。
总结人:
龚尚欢
2010年6月23日
参考文献
附录