收藏 分销(赏)

单片机汽车信号灯控制系统设计.doc

上传人:仙人****88 文档编号:8399815 上传时间:2025-02-11 格式:DOC 页数:4 大小:65.50KB 下载积分:10 金币
下载 相关 举报
单片机汽车信号灯控制系统设计.doc_第1页
第1页 / 共4页
单片机汽车信号灯控制系统设计.doc_第2页
第2页 / 共4页


点击查看更多>>
资源描述
计算机硬件技术基础课程设计任务书 编号:4 河北工业大学计算机硬件技术基础(MCS-51单片机原理及应用) 综合性实验任务书 一、题目:汽车信号灯控制系统 二、设计方案 1. 硬件系统设计图 P1.6 P1.7 P3.2 P3.3 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 +5V P3.1 蜂鸣器 左转 右转 刹车 急停 倒车 P3.4 注:P1.0接LED1,表示左前灯;P1.1为LED2,表示左指示灯;P1.2接LED3接左尾灯; P1.3接LED4,表示右前灯;P1.4接LED5;表示右指示灯;P1.5接LED6,表示右尾灯 2. 设计程序 ORG 8000H MAIN: MOV TMOD,#01H ;定义计时器,计时 MOV TH0,#4CH ;定义计时器高八位 MOV TL0,#00H ;定义计时器低八位 MOV IE,#82H ;开CPU的中断和中段源的允许标志位 MOV R0,#00H MOV R2,#00H ;R0,R2用做计数器,根据其不同分别实现1hz,3hz不同频率闪烁 SETB TR0 ;将TR0置1,开启定时器 LOOP: JBC TF0,DO1 ;判断定时器是否溢出,是否产生中断,不中断一直循环LOOP SJMP LOOP DO1: JNB P3.3,YINGJI ;判断P3.3=0跳至YINGJI JB P1.6,ZUOZHUAN ;判断P1.6=1跳至ZUOZ JB P1.7,YOUZHUAN ;判断P1.7=1跳至YOUZ JNB P3.4,DAOCHE ; 判断P3.4= 0跳至DAOCHE JNB P3.2,SHACHE ;判断P3.2=0跳至SHACHE SJMP TING ;无条件跳至TING YINGJI: INC R0 ;给R0加1 CJNE R0,#06,NEXT1 ;判断R0,当R0=6时跳至NEXT1,延时300毫秒 CPL P1.0 ;取反P1.0 CPL P1.1 ;取反P1.0 CPL P1.2 ;取反P1.0 CPL P1.3 ;取反P1.0 CPL P1.4 ;取反P1.0 CPL P1.5 ;取反P1.0 MOV R0,#00H JNB P3.3,NEXT1 SJMP DO1 ;此程序可实现六盏灯的频闪,频率约为3HZ ZUOZHUAN: INC R2 ;R2加1 CJNE R2,#20,NEXT1 ;判断R2=20时,跳至NEXT1,延迟1秒 CPL P1.0 ;取反P1.0 CPL P1.1 ;取反P1.1 CPL P1.2 ;取反P1.2 SETB P1.3 ;把P1.3置1,使灯灭 SETB P1.4 ;把P1.4置1,使灯灭 SETB P1.5 ;把P1.5置1,使灯灭 MOV R2,#00H JB P1.6,NEXT1 SJMP DO1 ;此程序可实现左转信号灯的频闪,时间间隔1秒即频率为1HZ YOUZHUAN : INC R2 CJNE R2,#20,NEXT1 SETB P1.0 SETB P1.1 SETB P1.2 CPL P1.3 CPL P1.4 CPL P1.5 MOV R2,#00H JB P1.7,NEXT1 SJMP DO1 ;同“ZUOZ”程序类似 DAOCHE CPL P3.0 ;开启蜂鸣器,其频率为20HZ INC R2 ;R2加1 CJNE R2,#20,NEXT1 ;判断R2=20时,跳至NEXT1,实现延时1S,频率1HZ CPL P1.2 ;左尾灯频闪 CPL P1.5 ;右尾灯频闪 SETB P1.0 SETB P1.1 SETB P1.3 SETB P1.4 ;其余灯灭 MOV R2,#00H ;回复R2初值 JNB P3.4,DAOCHE SJMP DO1 ;实现倒车时蜂鸣器响频率约为20HZ,且左右尾灯频闪频率约 NEXT1: MOV TH0,#4CH ;为1Hz MOV TL0,#00H SJMP LOOP SHACHE: SETB P1.0 ;把P1.0置1,使灯灭 SETB P1.1 ;把P1.1置1,使灯灭 CLR P1.2 ;把P1.2清零,左尾灯常亮 SETB P1.3 ;把P1.3置1,使灯灭 SETB P1.4 ;把P1.4置1,使灯灭 CLR P1.5 ;把P1.5清零,右尾灯常亮 JNB P3.2,SHACHE SJMP DO1 ;实现左右尾灯常亮 TING: SETB P1.0 SETB P1.1 SETB P1.2 SETB P1.3 SETB P1.4 SETB P1.5 CRL P3.0 SJMP DO1 ;停车程序,六盏灯全灭,蜂鸣器不响 END 3. 3程序流程图 设定总允许中断和允许T/C0中断 开始 设定定时器T/C0的初值 设定T/C0为模式1 等待中断 将开关按键状态读入转向需要的的模块 结束 模块:MAIN主程序,进行中断允许设定,即中断初值的设定 LOOP1:等待中断 YINGJI:实现六盏灯的频闪,频率约为3HZ ZUOZHUAN:实现左转信号灯左尾灯左前灯的频闪,时间间隔1秒即频率为1HZ YOUZHUAN:实现右转信号灯右尾灯右前灯的频闪,时间间隔1秒即频率为1HZ DAOCHE: 实现倒车时蜂鸣器响频率约为20HZ,且左右尾灯频闪频率约1Hz SHACHE: 实现左右尾灯常亮 TING:实现所有灯全灭,蜂鸣器不响 NEXT1:和R0,R2一起实现了不同频率的的控制 4. 接线方法 使用排线将A2区的J61接口与D1区的J52接口相连。 SW1与P1.6相接 SW2与P1.7相接 K1与INTO(P3.2)相接 ,K2与INT1(P3.3)相接,K3与P3.4相接,P3.1与蜂鸣器相接,蜂鸣器另一个接口接地。 5. 调试步骤 1)按上述接线方法接线 2)开启硬件,开启计算机,打开KEIL新建立工程选择单片机NXP--P89C52X2 3)进行项目设置 设置时钟频率:11.0592MHZ 设置片外代码存储Eprom#1开始:0x8000,大小0x4000 设置片外Xdata存储Ram#1开始:0C000,大小:0x4000 选择Keil Monitor-51 Driver 4)将上述程序导入,进行测试。 5)测试结束,关机,关外设。 附:定时器初值计算和不同频率的实现方法 由于本设计中要求有两个不同频率1HZ和3Hz即间隔为1S和333Ms,在我们设计中设计定时器的中断间隔为50Ms,运用R0,R2实现要求中断。1Hz中断20次,3Hz中断6次。 2的16次方—50*(1/11.0592MHZ*12)=65536—46080=19456=4C00H 三.实现的功能 1转弯时,左右尾灯、左右头灯和仪表盘上的两个指示灯相应的发出闪烁信号 2当应急开关合上时,6个信号灯都闪烁 3刹车时,两个尾灯亮、不闪烁 4倒车时,两个尾灯闪烁,且蜂鸣器响,频率约为20HZ 5一般情况下,闪烁频率为1Hz 6应急情况下,闪烁频率为3Hz 四.创新 我们在原设计要求的基础上结合实际,添加了倒车的功能,在倒车时可以使后尾灯频闪,闪烁频率约为1Hz,且蜂鸣器响频率约为20Hz 4
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服