汽车信号灯控制系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
硬件技术基础(MCS-51)2008年秋季综合性、开放性实验报告
学院土木工程班级姓名学号成绩 __ ____
一、题目:
汽车信号灯控制系统设计
二、总体设计
(1)车辆转弯时,相应一侧之前灯、尾灯及仪表板指示灯均应闪烁。
即左转时,左头灯、左尾灯、仪表板左转弯灯闪烁,右转时则右头灯、右尾灯和仪表板右转弯灯闪烁;
(2)紧急开关闭合时要求前述6个信号灯全部闪烁;
(3)刹车时2个尾灯亮,若转弯时刹车,则转弯时原应闪烁的信号灯仍应闪烁;
(4)一般闪烁频率为1Hz,高频闪烁频率为2Hz。
通过6个发光二级管模拟两个头灯、两个尾灯和仪表盘上的两个指示的灯。
利用开关模拟左转、右转、应急的状态,是信号灯相应闪烁。
通过定时/计数器控制灯的闪烁频率。
三、详细设计:
一.硬件系统设计
本课题中将要使用的硬件资源和相应的资源分配如下:①定时器/计数器TC/0,TC/1。
TC/0与TC/1共同使用产生0.5秒延时(及0.1666秒延时),TC/0采用方式1定时;TC/1采用方式1计数; ②四个个开关(k1,k2,k3,k4,)的开合来表示汽车当前的状态; ③用六个个二极管来代替六个显示灯。
三.软件系统设计
启动 ↓
设置定时器0初值
↓
设置定时器0位模式1
↓
置软件计数器初值
↓
允许定时器0中断
↓
总允许中断
↓
启动定时器0
↓ 等待
四、程序清单
ORG 8000H
LJMP MAIN ;;转到主程序 ORG 800BH
LJMP TC0LEFTON ;;转到T/C0的中断服务程序T0ISR ORG 801BH
LJMP
TC1SET ; ;转到T/C1的中断服务程序T1ISR
P3.2 P3.3 P3.4 P3.5
刹车 紧急情况 左转 右转
编号:
ORG 8030H
MAIN: MOV SP,#30H
MOV TMOD,#11H ; ;置T/C0 方式1,定时;T/C1方式1,定时
MOV TH0,#0DCH
MOV TL0,#0DH ; ;装入T/C0定时初值
MOV TH1,#0E8H
MOV TL0,#0DH ;;装入T/C1定时初值
SETB ET0 ; ;T/C0允许中断
SETB ET1 ; ;T/C1允许中断
SETB EA ; ;CPU开中断
MOV P1,#0FFH ; ;灯全灭
MOV R7,#00H
MOV R6,#00H
BREAK: SETB P3.2
JB P3.2,YINGJI ; ;刹车开关闭合继续执行,否则跳转
CLR P1.4 ;;点亮p1.4,左尾灯亮
CLR P1.5 ; ;点亮p1.5,右尾灯亮
YINGJI: SETB P3.3
JB P3.3,LEFT ; ;应急开关闭合继续执行,否则跳转
CLR TR0
SETB TR1 ; ;启动TR1
LEFT: SETB P3.4
JB P3.4,RIGHT ; ;左转开关闭合继续执行,否则跳转
CLR PSW.5 ; ;设左转状态标志位
CLR T R1
SETB TR0 ;;启动TR0
RIGHT: SETB P3.5
JB P3.5,NO ; ;右转开关闭合继续执行,否则跳转
SETB PSW.5 ; ;设右转状态标志位
CLR T R1
SETB TR0 ; ;启动TR0
NO: MOV A,P3
ANL A,#3CH
CJNE A,#3CH,BREAK ;;所有开关都打开,继续执行;否则跳转
MOV P1,#0FFH ; ;所有灯全灭
LJMP BREAK
TC0LEFTON: CJNE R6,#00H,TC0ON
JB PSW.5,TC0RIGHTON ; ;左转开关闭合,继续;否则跳转
CLR P1.0 ; ;点亮P1.0;左前灯亮
CLR P1.2 ; ;点亮P1.2;左仪板显示灯亮
CLR P1.4 ; ;点亮P1.4;左尾灯亮
AJMP TC0ON
TC0RIGHTON: CLR P1.1 ;;点亮P1.1;右前灯亮
CLR P1.3 ; ;点亮P1.3;右仪板显示灯亮
CLR P1.5 ; ;点亮P1.5;右尾灯亮
TC0ON: MOV TH0,#0DCH
MOV TL0,#0DH
INC R6
CJNE R6,#50D,TC0OFF ; ;灯亮半秒
JB PSW.5,TC0RIGHTOFF
SETB P1.0
SETB P1.2
SETB P1.4 ; ;所有左灯全灭
AJMP TC0OFF
TC0RIGHTOFF: SETB P1.1
SETB P1.3
SETB P1.5 ; ;所有右灯全灭
TC0OFF: C JNE R6,#100D,TC0FANHUI ;;灯灭半秒后,一秒延时到
MOV R6,#00H
CLR T R0
TC0FANHUI: RETI ; ;中断返回
TC1SET: CJNE R7,#00H,TC1ON
MOV P1,#0C0H ; ;点亮所有灯
TC1ON: MOV TH1,#0E8H
MOV TL1,#0DH
INC R7
CJNE R7,#30D,TC1OFF
MOV P1,#0FFH
TC1OFF: CJNE R7,#60D,TC1FANHUI
MOV R7,#00H
CLR TR1
TC1FANHUI: RETI
END
五、你所设计的程序最终完成的功能
1))车辆转弯时,相应一侧之前灯、尾灯及仪表板指示灯均应闪烁。
即左转时,左头灯、左尾灯、仪表板左转弯灯闪烁,右转时则右头灯、右尾灯和仪表板右转弯灯闪烁;
(2)紧急开关闭合时要求前述6个信号灯全部闪烁;
(3)刹车时2个尾灯亮,若转弯时刹车,则转弯时原应闪烁的信号灯仍应闪烁;
2)运行结果正常。
和设计的要求的一样。
六、对该设计题目有何更完善的方案
1、觉得自己程序简洁,易懂。
2、没有创新。
没有用到外部中断,只有用到内部定时中断,
七、收获及心得体会
短短的一周单片机实习结束了,通过这段时间的学习与操作,我学到了不少知识,同时对单片既有了进一步的了解与认识,同时也认识到了自己的不足和需要增进的地方,在和同伴合作的过程中也知道了团结互助,共同完成了这次任务,有苦也有乐。
单片机的应用在生活中及其广泛,例如微波炉,洗衣机等日常生活中接触到的东西都是应用了单片机程序。
我们这次课程设计是有关汽车信号灯控制系统的,在设计的过程中,我们有许多不懂的和不理解的地方,一方面通过书本的知识和老师课程上的讲解,在结合网络上的有关信息和解释,同时也虚心向同学请教,克服困难和不解,共同学习讨论掌握了一些单片机基础知识。
在答辩过程中,通过老师的提问,我深刻认识到了自己对单片机知识的匮乏,知道了自己的不足之处。
通过这次单片机的设计,我深刻体会到了知识的重要性和应用性,没有知识,我们的生活就会变得混乱和无序,所以我们要努力学习,为自己以后适应社会和未来了奋斗同时也懂得了同心协力的重要性。
也许这就是单片机设计教给我们真正的意义和内涵。
日期:2008年12 月30 日。