单片机报告-汽车转向灯
单片机课设 汽车转向灯
第1章选题背景随着社会的发展,道路上到处都是飞速的汽车。
特别是以人为本的和谐社会的观念深入人心。
如何保证人安全,一直都是人们关注的重心。
为了减少交通事故,从汽车的各种安全设计考虑,这不仅仅是汽车本身的质量问题,还应关注汽车在行驶过程中对路人的引导指示方面。
其中汽车的各种灯就是安全警示的一个方面,汽车的转弯灯、头灯、尾灯和警示灯等能够帮助路人识别汽车的动向,尤其是当遇到紧急事件时,打开紧急开关就可以警示路人该车现在不安全了,需要小心避车。
转弯灯能提示路人该车要进行左转或是右转了,小心碰撞。
传统的汽车闪光器结构简单体积小、闪光频率稳定、监控作用明显,故被广泛使用。
但这样的继电器由于自身条件的限制,可靠性低,定时时间不够精确,使用寿命较短,且继电器受温度影响较大,对于温度变化较大的环境往往不能满足要求。
所以本文中汽车转向灯设计是用单片机来实现的,单片机控制系统不仅可避免传统的缺点,还具有功能强、使用灵活、可靠性高、成本低、体积小、面向控制、具有智能化功能等优点。
第2章汽车转弯灯2.1基本的功能和工作方式如表1表12.2工作原理由定时器/计数器与中断系统的联合组成控制系统的工作原理。
汽车上有一个转弯控制杆,其中有三个位置:中间位置,汽车不转弯;向上,汽车左转;向下汽车右转。
转弯时,规定左右尾灯、左右头灯仪表板上2个指示灯相应地发出闪烁信号。
应急开关合上时, 6个信号灯都应闪烁。
汽车刹车时,2个尾灯发出不闪烁信号。
如正当转弯时刹车,转弯时原应闪烁的信号仍应闪烁。
它们都是频率为1Hz低频闪烁,在汽车停靠而停靠开关合上时,左头灯、右头灯、左尾灯、右尾灯按频率为30Hz的高频闪烁。
由上所述,各种情况作操作时,信号灯应输出信号。
第3章转向灯系统的工作原理及设计3.1 开关状态检测开关状态检测,对AT89C51来说是输入关系,可轮流检测每个开关状态,以每个开关的状态让相应的发光二极管指示,采用JNB P1.X,REL 指令来完成;也可以一次性检测五路开关状态,让它指示,可以用MOV A,P1 指令一次把P1 端口的状态全部读入,取低5位的状态来指示。
单片机课程设计汽车转向灯
2010 届毕业设计(论文)课题任务书系:电气与信息工程系专业:电子信息工程技术目录1 绪论…………………………………………………………………………1.1 选题背景………………………………………………………………………1.2 研究意义………………………………………………………………………1.3 研究方法……………………………………………………………………2 汽车转弯灯单片机控制系统原理………………………………………………2.1 汽车转弯灯工作原理…………………………………………2.2 单片机系统的工作原理及设计………………………………………………3 设计方案论证与选择………………………………………………3.1 方案论证一……………………………………………………………3.2 方案论证二…………………………………………………………3.3 方案选择…………………………………………………………4 控制系统的硬件设计…………………………………………………………4.1 单片机控制系统电路图……………………………4.2 单片机控制系统功能模块的设计………………4.3 元器件清单……………………………………………………5 主要芯片介绍…………………………………………………………5.1 单片机的特点………………………………………………………5.2 单片机各引脚介绍………………………………………………………5.3 单片机的功能介绍………………………………………………………6 控制系统的软件设计……………………………………………………7.1 汽车转弯灯控制系统流程图7.2 软件和程序设计7 电路功能实现7.1 软件调试7.2 单片机硬件功能实现7.3 仿真操作说明及现象………………………………………………………参考文献…………………………………………………………………………………. 致………………………………………………………………………………………附录………………………………………………………………………………………摘要随着单片机的日益发展,其应用也越来越广泛,通过对“汽车转弯灯单片机控制系统”设计,可以对单片机的知识得到巩固和扩。
基于单片机的汽车转向灯设计单片机课程设计报告
单片机原理及系统课程设计报告单片机原理及系统课程设计专业:自动控制班级:控1101班姓名:陈姣学号:201105320指导教师:李亚宁兰州交通大学自动化与电气工程学院2014 年1 月17 日基于单片机的汽车转向灯设计1引言在当今社会,科技与工业高度发达,汽车的数量逐年增多,街上的每一个角落都充斥它们的身影,但凡事都有两面性,汽车在方便了人们的生活也对交通方面和人身安全构成了威胁,为此我们应该采取有效的方法来减少事故的发生概率和提高车辆的运行效率。
因此汽车转向灯便成为每一辆汽车必不可少的装置设备。
汽车转向灯是行车安全的必备条件,除了具有照明作用,对行人和其他车辆还具有转向、会车、刹车等警示作用。
传统的汽车转向灯由于自身条件的限制,可靠性低,定时时间不够精确,使用寿命较短,且继电器受温度影响较大,对于温度变化较大的环境往往不能满足要求。
所以本文中汽车转向灯设计是用单片机来实现的,单片机控制系统不仅可避免传统的缺点,还具有功能强、使用灵活、可靠性高、成本低、体积小、面向控制、具有智能化功能等优点。
2设计方案及原理本设计要求在汽车进行左转弯、右转弯、刹车、合紧急开关、停靠、倒车等操作时,实现对各种信号指示灯的控制。
根据设计要求,制定总体的设计思想。
汽车转向灯电路是由单片机AT89C51、复位、警报、LED显示电路、按键电路等几部分构成。
2.1系统设计以单片机AT89C51为核心芯片通过控制LED的显示来模拟汽车转向灯,即用开关1-6的闭合分别模拟刹车、紧急、停靠、左转、右转、倒车操作;用LED发光二极管D1-D8的亮灭显示来模拟汽车的故障指示灯、左头灯、右头灯、左转弯信号灯、右转弯信号灯、左尾灯、右尾灯、倒车灯的显示情况。
转向时,规定左右尾灯、左右头灯仪表板上2个指示灯相应地发出闪烁信号;应急开关合上时,6个信号灯都应闪烁;汽车刹车时,2个尾灯发出稳定亮信号;如正当转向时刹车,转向时原应闪烁的信号仍应闪烁。
汽车转弯灯单片机实习报告
汽车转弯灯单片机实习报告汽车转弯灯单片机控制系统实习报告一、实习目的1、掌握51系列单片机的常用指令。
2、熟练的编写51系列单片机的分支程序和一些子程序,如延时子程序。
二、实习要求模拟汽车在驾驶中的左转弯、右转弯、刹车、合紧急开关、停靠等操作。
在左转弯或右转弯时,通过转弯操作杆使左转弯或右转弯开关合上,从而使左头信号灯、仪表板的左转弯灯、左尾信号灯或右头信号灯、仪表板的右转弯信号灯、右尾信号灯闪烁;闭合紧急开关时以上六个信号灯全部闪烁;汽车刹车时,左右两个尾信号灯点亮;若正当转弯时刹车,则转弯时原闪烁的信号灯应继续闪烁,同时另一个尾信号灯点亮,以上闪烁的信号灯以1Hz频率慢速闪烁;在汽车停靠开关合上时左头信号灯、右头信号灯、左尾信号灯、右尾信号灯以10Hz频率快速闪烁。
任何在下表中未出现的组合,都将出现故障指示灯闪烁,闪烁频率为10Hz。
数码管正常情况下显示操作功能的所写,故障情况显示“HELP”三、实习设计原理1、8051单片机的功能单片机是集CPU、 RAM、 ROM(或EPROM)、 I/O接口、定时器/计数器、中断系统为一体完整的计算机系统。
8051内部含有8位CPU、4KB的ROM和128B的RAM、4个8位I/O接口电路、一个全双工的异步接口、5个终端源和2个中断优先级。
2、单片机各引脚介绍(1) VCC:电源。
(2) GND:接地。
(3) P0口:是一个8位漏极开路的双向I/O口。
(4) P1口:是一个具有内部上拉电路的8位双向I/O口。
(5) P2口:是一个具有内部上拉电路的8位双向I/O口。
(6) P3口:是一个具有内部上拉电路的8位双向I/O口,P3输出缓冲器能吸入/放出4个TTL输入。
Flash 编程及检验时,P3口也接收一些控制信号。
(7) RST:复位端。
当振荡器工作时,此时高电平将系统复位。
(8) XTAL1:振荡器反向放大器输入端和内部时钟发生器的输入端。
XTAL2:振荡器反相放大器输出端。
单片机汽车转向灯
单片机原理与应用课程大作业项目名称:基于AT89S52的汽车灯光控制系统设计专业班级:微机091 学号:姓名:连云港职业技术学院信息工程学院2011年4月19 日目录第一章项目要求---------------------------------1.1 设计目标----------------------------------1.2 AT89S52的简介和结构框图-------------------第二章项目设计前的分析-------------------------2.1 汽车转向灯的几种状态分析------------------2.2 设计电路的思路----------------------------第三章硬件电路的设计----------------------------3.1 单片机简介--------------------------------3.2 8051单片机指令----------------------------3.3 MCS-51构成与工作原理----------------------第四章软件的设计--------------------------------4.1 发光二极管常亮-----------------------------4.2 发光二极管一闪一亮-------------------------4.3 发光二极管一闪一亮(可延时)---------------4.4 通过开关控制发光二极管一闪一亮(可延时)---4.5 通过开关控制发光二极管一闪一亮(可延时),当出现故障时能报警------------------------------------------- 第五章项目设计总结------------------------------第六章元件清单----------------------------------第一章项目要求一、设计目标1、发光二极管常亮2、发光二极管一闪一亮3、发光二极管一闪一亮(可延时)4、通过开关控制发光二极管一闪一亮(可延时)5、通过开关控制发光二极管一闪一亮(可延时),当出现故障时能报警二、 AT89S52的简介和结构框图第二章项目设计前的分析一、汽车转向灯的几种状态分析汽车灯主要包括转向灯、刹车灯、倒车灯、雾灯。
单片机课程设计:汽车转向灯03
目录基于单片机的汽车转向灯(LED灯)控制器的设计摘要随着社会的不断发展,汽车正在成为现代社会的一种重要交通工具。
车灯是行车安全的必备件,除了具有照明的作用,还具有转向、刹车等警示作用。
汽车转向和报警信号灯是汽车运动方向和车身状态的表示信号,关系着汽车的安全问题,因此基于单片机的汽车信号灯控制器的设计一直以来都是汽车电子设计中的一个十分重要的领域。
然而求低功耗,相对于传统的卤素低压照明模式,带来诸多好处。
高亮度LED汽车灯能以相对较小的功率消耗来提供更高的亮度,并能通过简单的电流控制来获得很宽的调光范围,而其低成本、低功耗、快速接通时间、长寿命、结构坚固、外围电路简单、受振动影响小等特点更可带来绝对的经济优势。
高亮度LED照明也给汽车电子产品师和制造商带来了全新的机遇和挑战。
本设计是基于AT89C51单片机芯片的汽车转向灯的控制系统,通过I/O口控制发光二极管的亮﹑灭及闪烁,加上一些复位电路﹑按键电路﹑驱动电路等来模拟汽车尾灯的功能。
该系统在汽车进行左转向、右转向、刹车、合紧急开关、停靠等操作时,实现对各种信号指示灯的控制。
利用Proteus和Keil联调,对此控制系统进行仿真,可实现上述功能。
关键词:转向灯;单片机;Proteus;KeilAbstractWith the continuous development of society, car is becoming a modern society and important vehicle. Lamp is the necessary parts, traffic safety in addition to its lighting effect, still have to etc, brake warning role. Automotive steering and warning lights are car movement direction and body state, relate to the signal of car based on single chip and security problems, so the car light controller design has always been one of automobile electronic design is very important fields. However, compared with traditional for low power consumption of low-pressure halide lighting mode, to bring a lot of benefits. High brightness LED with relatively small car lamp can the power consumption to provide higher brightness, and through simple current control for a wide range of light, and the low cost, low power consumption, fast on time, long life, firm structure, peripheral circuit is simple, small vibration influence characteristics such as by more can bring absolute economic advantages. High brightness LED lighting also give automobile electronic products division and the manufacturer bring a completely new opportunities and challenges.This design is based on AT89C51 chips lights, control system, car through the I/O port control leds light, destroy and flashing, plus some reset circuit, buttons circuit, drive circuit to simulate the function of automobile tail light. In this system, the car left to right turn, brakes, and fits the emergency switch, calls when operating, realize the control of the various signal lights. Use this Keil alignment, Proteus and control system, and simulation can realize the function.Key W ords:direction indicator lamp;Single Chip Microcomputer;Proteus;Keil第1章绪论1.1 选题背景最近几年,燃料费的提高让汽车都力求低功耗,这使得汽车上的LED应用越来越多,并有取代汽车密封式前大灯和其他汽车用白炽灯的趋势。
汽车转向灯 单片机c语言程序及其原理图
项目1 汽车转向灯XTAL218XTAL119ALE 30EA31PSEN 29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD 10P3.1/TXD 11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR 16P3.5/T115U180C52R110kR2330D1SW1R3330D2R410kSW2SW3附:C 程序源代码#include <reg52.h>sbit sw1=P1^0; //定义P1.0引脚位名称为P1_0 sbit sw2=P1^1; sbit sw3=P1^2;sbit ledl=P0^0; //定义P0.0引脚位名称为P0_0 sbit ledr=P0^1;void delay(unsigned char k) {unsigned char i,j; for(i=0;i<k;i++)for(j=0;j<200;j++); }void main() //主函数 {P1=0xff; while(1) {if(sw1==0) ledl=0; if(sw2==0) ledr=0; if(sw3==0){ledl=0;ledr=0;}delay(200);ledl=1;ledr=1;delay(200);}}#include<reg51.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned intuchar code DSY_CODE[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8, 0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0xbf};uchar code df_table[]={0,1,1,2,3,3,4,4,5,6,6,7,8,8,9,9};uchar currentT=0;uchar HOUR,MIN,SECOND,count_t0,count_t1;uchar temp_value[]={0x00,0x00};uchar display_digit[]={0,0,0,0};uchar time_or_temperature;sbit DQ=P3^3;sbit SPK=P3^4;bit flag;bit ds18b20_is_ok=1;bit key_flag=0;void delay(uint x){while(--x);}void delay1ms(uint m){uchar i;while(m--) for(i=0;i<120;i++);}uchar init_ds18b20()uchar status;DQ=1;delay(8);DQ=0;delay(90);DQ=1;delay(8); status=DQ;delay(100);DQ=1;return status;}uchar readonebyte(){uchar i,dat=0;DQ=1;_nop_();for(i=0;i<8;i++){DQ=0;dat>>=1;DQ=1;_nop_();_nop_();if(DQ) dat|=0x80;delay(30);DQ=1;}return dat;}void writeonebyte(uchar dat){uchar i;for(i=0;i<8;i++){DQ=0;DQ=dat&0x01;delay(5);DQ=1;dat>>=1; }delay(8);}void read_temperature(){if(init_ds18b20()==1)ds18b20_is_ok=0;else{writeonebyte(0xcc);writeonebyte(0x44);init_ds18b20();writeonebyte(0xcc);writeonebyte(0xbe);temp_value[0]=readonebyte();temp_value[1]=readonebyte();ds18b20_is_ok=1;}void display_temperature(){uchar i,j;//延时值与负数标识uchar t=150,ng=0;//高5位全为1(0xf8)则为负数,为负数时取反加1,并设置负数标识 if((temp_value[1]&0xf8)==0xf8){temp_value[1]=~temp_value[1];temp_value[0]=~temp_value[0]+1;if(temp_value[0]==0x00) temp_value[1]++;//负数标识置1ng=1;}//查表得到温度小数部分display_digit[0]=df_table[temp_value[0]&0x0f];//获取温度整数部分(高字节中的低3位与低字节中的高4位,无符号) currentT=((temp_value[0]&0xf0>>4))|((temp_value[1]&0x07)<<4); //将整数部分分解为3位待显示数字display_digit[3]=currentT/100;display_digit[2]=currentT%100/10;display_digit[1]=currentT%10;if(ng==1){P2=0x01;P0=0xbf;delay1ms(11);P2=0x02;P0=DSY_CODE[display_digit[2]];delay1ms(11);P2=0x04;P0=DSY_CODE[display_digit[1]]&0x7f;delay1ms(11);P2=0x08;P0=DSY_CODE[display_digit[0]];delay1ms(11);}else{j=0x01;for(i=0;i<4;i++){P2=j;if(i==2) P0=DSY_CODE[display_digit[3-i]]&0x7f; else P0=DSY_CODE[display_digit[3-i]];delay1ms(11);j=_crol_(j,1);}}}void display(){uchar i,j,time[4];time[0]=HOUR/10;time[1]=HOUR%10;time[2]=MIN/10;time[3]=MIN%10;j=0x01;for(i=0;i<4;i++){P2=j;switch(i){case 1:P0=DSY_CODE[time[i]]&0x7f;break;case 3:if(flag==0) P0=DSY_CODE[time[i]]&0x7f;else P0=DSY_CODE[time[i]];break;default:P0=DSY_CODE[time[i]];}delay1ms(16);j=_crol_(j,1);}}/*void keyscan(){if(P1!=0xff) delay1ms(150);if(P1!=0xff){switch(P1){case 0xfe:HOUR=HOUR+1;if(HOUR==24) HOUR=0;break;case 0xfd:MIN=MIN+1;if(MIN==60) MIN=0;break;case 0xfb:time_or_temperature++;break;}}}*/void main(){uchar i=0;HOUR=0;MIN=0;SECOND=0;count_t0=0;count_t1=0;TMOD=0x11;TH0=0x3c;TL0=0xb0;TH1=0x3c;TL1=0xb0;EA=1;ET0=1;ET1=1;TR0=1;TR1=1;SPK=0;read_temperature();delay(5000);delay(5000);while(1){i=time_or_temperature%2;if(i==0) display();if(i==1){read_temperature();if(ds18b20_is_ok) display_temperature(); }//keyscan();}}void T0_int() interrupt 1 using 1{TH0=0x3c;TL0=0xb0;count_t0=count_t0+1;if(count_t0==10) flag=!flag;if(count_t0==20){count_t0=0;SECOND=SECOND+1;if(SECOND==60){SECOND=0;MIN=MIN+1;if(MIN==60){MIN=0;HOUR=HOUR+1;if(HOUR==24){HOUR=0;}}}}}void keyscan_t1() interrupt 3 using 2{count_t1=count_t1+1;TH1=0x3c;TL1=0xb0;if(P1!=0xff){key_flag=1;}if((count_t1==3)&&(P1!=0xff)&&(key_flag==1)) {count_t1=0;key_flag=0;switch(P1){case 0xfe:HOUR=HOUR+1;if(HOUR==24) HOUR=0; break;case 0xfd:MIN=MIN+1;if(MIN==60) MIN=0;break;case 0xfb:time_or_temperature++; break;}}if(count_t1>3){key_flag=0;count_t1=0;}}。
单片机实验---汽车转向灯控制
实验九汽车转向信号灯控制一、实验目的:(1)掌握分支程序的设计方法;(2)掌握用分支程序编程控制汽车转向信号灯的方法;(3)掌握用keil实现软件调试的方法;(4)掌握用Proteus实现电路设计,程序设计和仿真方法。
二、实验内容:P1口做输出口控制汽车转向信号灯,P3口做输入口接五只控制开关,设计一个汽车转向信号灯控制系统。
晶振频率6MHZ。
设计要求如下:(1)正常驾驶时,按通左转弯开关,左转弯灯,左头灯,左尾灯同时闪烁;按通右转弯开关,右转弯灯,右头灯,右尾灯同时闪烁,闪烁频率为1HZ。
(2)刹车时,接通刹车开关,左尾灯,右尾灯同时亮。
(3)停靠站时,接通停靠开关,左头灯,右头灯,左尾灯,右尾灯同时闪烁,闪烁频率为1HZ。
(4)出现紧急情况时,接通紧急开关,左转弯灯,右转弯灯,左头灯,右头灯,左尾灯,右尾灯同时闪烁,闪烁频率为5HZ。
三、主要器件的型号:四、实验参考电路:实验时用发光二极管替代信号灯,P1.7------P1.2接发光二极管的阴极,P1口的管脚输出低电平时对应的发光二极管点亮。
控制开关的信号通过P3.4-------P3.0送入单片机,设控制开关输出低电平有效。
汽车转向信号控制灯控制电路如下图所示:五、实验参考程序:ORG 0000HLJMP MAINORG 0030HMAIN: MOV P3,#0FFHMOV A,P3 // 读P3口输入数据JNB ACC.4,JJ // ACC.4=0,转移到紧急状态JNB ACC.3,TK // ACC.3=0,转移到停靠状态JNB ACC.2,SC // ACC.2=0,转移到刹车状态JNB ACC.1,YZW // ACC.1=0,转移到右转弯状态JNB ACC.0,ZZW // ACC.0=0,转移到左转弯状态SJMP MAINJJ: MOV P1,#03H // 紧急状态LCALL DELAY1 // 0.1秒延时MOV P1,#0FFH // 信号灯全灭LCALL DELAY1SJMP MAINTK: MOV P1,#0C3H // 停靠状态LCALL DELAY2 // 0.5秒延时MOV P1,#0FFH // 信号灯全灭LCALL DELAY2SJMP MAINSC: MOV P1,#0F3H // 刹车状态LCALL DELAY2 // 0.5秒延时MOV P1,#0FFH // 信号灯全灭SJMP MAINYZW: MOV P1,#0ABH // 右转弯状态LCALL DELAY2 // 0.5秒延时MOV P1,#0FFH // 信号灯全灭LCALL DELAY2SJMP MAINZZW: MOV P1,#57H // 左转弯状态LCALL DELAY2 // 0.5秒延时MOV P1,#0FFH // 信号灯全灭LCALL DELAY2SJMP MAINORG 0100H // 0.1秒延时子程序DELAY1: MOV R3,#100 // 0.1秒循环次数DEL1: MOV R2,#248 // 1ms循环次数NOPDEL2: DJNZ R2,DEL2DJNZ R3,DEL1RET // 子程序返回ORG 0200H // 0.5秒延时子程序DELAY2: MOV R4,#5 // 0.5秒循环次数DEL3: MOV R3,#100 // 100ms循环次数DEL4: MOV R2,#248 // 1ms循环次数NOPDEL5: DJNZ R2,DEL5DJNZ R3,DEL4DJNZ R4,DEL3RET // 子程序返回END六、实验步骤:(1)用Keil软件对源程序进行调试如下:如图可以看到调试程序无错误,切将其生成HEX文件;(2)根据汽车转向信号灯控制实验电路及相应器件连接电路图如下:(3)将所生成的HEX文件下载到芯片中,根据实验内容对其进行运行;A、当正常驾驶时,按通左转弯开关,左转弯灯,左头灯,左尾灯同时闪烁;按通右转弯开关,右转弯灯,右头灯,右尾灯同时闪烁,闪烁频率为1HZ,如下图所示:B、当刹车时,接通刹车开关,左尾灯,右尾灯同时亮,如下图:C、当停靠站时,接通停靠开关,左头灯,右头灯,左尾灯,右尾灯同时闪烁,闪烁频率为1HZ,如下图:D、出现紧急情况时,接通紧急开关,左转弯灯,右转弯灯,左头灯,右头灯,左尾灯,右尾灯同时闪烁,闪烁频率为5HZ,如下图:七、实验总结:(1)通过软件与硬件的配合使用,更加深刻的理解软件与硬件之间的关系;(2)通过汽车转向信号灯的控制实验的设计与实现,对汽车转向灯控制原理与实际应用有更深刻的了解;(3)通过自己动手,理论与实践相结合,扩展自己的知识视野。
单片机转向灯实训报告
一、实训背景随着汽车工业的快速发展,汽车转向灯在行车安全中扮演着重要角色。
传统的转向灯控制系统多为机械式,存在故障率高、维修不便等问题。
近年来,单片机技术在汽车电子领域的应用越来越广泛,利用单片机实现转向灯的精确控制,不仅能提高行车安全,还能降低维修成本。
本实训旨在通过学习单片机原理和应用,设计并实现一款基于单片机的转向灯控制系统。
二、实训目的1. 掌握单片机的基本原理和应用;2. 学会使用单片机开发工具和编程语言;3. 熟悉转向灯控制系统的工作原理;4. 培养实际动手能力和团队协作精神。
三、实训内容1. 单片机基础知识单片机是一种集成了CPU、存储器、输入/输出接口等功能的微型计算机。
本实训选用8051系列单片机作为核心控制单元。
通过学习8051单片机的内部结构、工作原理、指令系统、编程方法等知识,为转向灯控制系统的设计打下基础。
2. 转向灯控制系统设计(1)系统组成转向灯控制系统主要由单片机控制模块、转向灯驱动模块、信号输入模块、故障检测模块和电源模块组成。
(2)工作原理单片机控制模块接收驾驶员的转向信号,根据信号类型控制转向灯的闪烁频率和亮度。
转向灯驱动模块根据单片机的控制指令,驱动左右转向灯闪烁。
信号输入模块将驾驶员的转向信号转换为单片机可识别的电平信号。
故障检测模块实时监测转向灯的工作状态,一旦发现故障,立即向单片机发送报警信号。
电源模块为系统提供稳定的工作电压。
(3)电路设计根据系统需求,设计合适的电路,包括单片机最小系统、转向灯驱动电路、信号输入电路、故障检测电路和电源电路。
3. 软件设计(1)编程环境使用Keil uVision 5作为编程环境,编写8051单片机程序。
(2)程序设计编写程序实现以下功能:1)接收驾驶员的转向信号,控制转向灯的闪烁频率和亮度;2)检测转向灯的工作状态,一旦发现故障,立即报警;3)实时显示系统运行状态。
四、实训过程1. 熟悉8051单片机原理和编程方法;2. 设计转向灯控制系统电路;3. 编写程序实现转向灯控制功能;4. 测试和调试程序,确保系统稳定运行。
单片机汽车转向灯开题报告
单片机汽车转向灯开题报告引言汽车转向灯是一种非常重要的安全设备,其功能是通过闪烁来提醒其他车辆和行人驾驶员将要转向的方向。
由于其重要性,我们决定使用单片机来设计和实现一种可靠的汽车转向灯系统。
本报告将介绍我们的项目目标、实施计划和预期结果。
项目目标本项目的目标是设计和实现一种基于单片机的汽车转向灯系统。
主要目标包括:1.实现转向指示功能:通过控制转向灯的闪烁来指示车辆即将转向的方向。
2.提高灵活性:允许驾驶员选择转向灯的闪烁频率和模式。
3.实现自动关闭功能:在车辆完成转弯后,转向灯应自动关闭。
4.提高可靠性:设计一个稳定可靠的电路,以确保转向灯系统始终正常工作。
实施计划以下是我们的实施计划:1.硬件准备:选择合适的单片机和其他所需的电子元件,并搭建一个实验电路。
2.学习单片机编程:熟悉单片机的编程语言和开发环境,并学习如何控制输入输出。
3.设计转向灯控制逻辑:根据转向信号和驾驶员输入设计转向灯的控制逻辑。
4.实现基本功能:使用单片机编程实现转向灯的基本功能,包括转向指示、闪烁频率控制和自动关闭。
5.测试和优化:使用实验电路对系统进行测试,并根据测试结果进行优化和改进。
6.编写文档:整理项目过程和结果,撰写项目报告。
预期结果我们预计实现一个功能强大且可靠的单片机汽车转向灯系统。
预期结果包括:1.转向灯指示功能:转向灯能够根据驾驶员输入和转向信号正确地指示车辆即将转向的方向。
2.灵活性:驾驶员可以通过控制面板选择转向灯的闪烁频率和模式。
3.自动关闭功能:转向灯能够在车辆完成转弯后自动关闭,以避免误导其他车辆和行人。
4.可靠性:经过测试和优化后,转向灯系统应该是稳定和可靠的,能够长时间正常工作。
结论本报告介绍了我们的单片机汽车转向灯项目的开题报告。
项目的目标是设计和实现一种可靠和灵活的转向灯系统,并已制定了实施计划和预期结果。
我们相信该项目能够为车辆驾驶员提供更好的转向指示功能,提高交通安全性。
我们将努力完成该项目,并期待得到一个成功的结果。
单片机课程设计:汽车转向灯
3 设计方案论证与选择……………………………………………… 3.1 方案论证一…………………………………………………………… 3.2 方案论证二………………………………………………………… 3.3 方案选择…………………………………………………………
probl ems that ca nnot be ignored. Some leaders unwilli ng to do masses w ork, masse s concept weak, on mas ses feeling s not dee p, pe ndulum not are with mas ses of relations hip, t hink mass es work i s revoluti onary war era of things, now obsolete has, burie d busine ss work , ignore d masse s work of s ituation compare d Ge neral; s ome leaders not do mas ses w ork, ol d method regardle ss of with, new not with, not understand masses psychol ogical, not understand masses w ishe s, not said mas ses la nguage, w ork method sim ple stiff, cause d masses of conflict and antipat hy; s ome leaders can't do masses work , Faced wit h a lot of contradi ctions among the people worry a bout fear, pa nic set i n encounter group eve nts, and s ome are even misma naged, i nflame, so w ork has suffered heavy l osse s, and s o on. The se problems we ar e soberly aware, e nha nci ng the party's ruli ng capa bilit y, the maintenance and devel opme nt of the party's a dvanced nature and pur ity, a nd to e nhance the a bility of party committees and lea ding cadre s are
单片机汽车转向灯c语言,C51单片机嵌入式系统设计1——模拟汽车转向灯
单⽚机汽车转向灯c语⾔,C51单⽚机嵌⼊式系统设计1——模拟汽车转向灯之前⽤了两节课时间测试开发环境,从这节课开始完成⼀些简单的作品。
实验⽬的:1、深⼊掌握使⽤单⽚机各个I/O⼝的输⼊输出功能2、了解汽车灯光控制器的控制需求3、进⼀步熟悉延时的编写⽅法实验元件清单:AT89C52单⽚机、电阻RES、LED灯、三选⼀旋转开关实验要求:1、实现汽车的左转向灯、右转向灯功能。
2、在左右转向灯的基础上增加倒车功能,倒车灯亮是不影响转向灯。
3、增加故障灯功能,要求故障灯亮时,不影响左右转和倒车灯。
额外的要求:1、左右转向灯只能点亮其中⼀个,不可同时点亮;2、尝试增加闪烁功能。
于是得到以下代码:/*左转向灯 P1_1 按键 P3_0右转向灯 P1_2 按键 P3_1倒车灯 P1_3 按键 P3_2故障灯 P1_4 按键 P3_3*/#include#include "delay.h"sbit LED1 = P1^0;sbit LED2 = P1^1;sbit LED3 = P1^2;sbit LED4 = P1^3;sbit BUT1 = P3^0;sbit BUT2 = P3^1;sbit BUT3 = P3^2;sbit BUT4 = P3^3;#define HIGH 1#define LOW 0int main(){for(;;){if(BUT1 == LOW && BUT2 == HIGH){ LED1 = LOW;delay();LED1 = HIGH;delay();}else{LED1 = HIGH;}if(BUT2 == LOW && BUT1 == HIGH){ LED2 = LOW;delay();LED2 = HIGH;delay();}else{LED2 = HIGH;}if(BUT3 == LOW){LED3 = LOW;delay();LED3 = HIGH;delay();}else{LED3 = HIGH;}if(BUT4 == LOW){LED4 = LOW;delay();LED4 = HIGH;delay();}else{LED4 = HIGH;}}}#includevoid delay(){int count = 0;for(count = 0; count < 30000; count++){}; }。
单片机设计报告——汽车转向灯
单片机课程设计报告项目8模拟汽车左右转向灯控制专业:电检121学生姓名:学号: 18 、 19指导教师:目录一、目的及要求1、任务目的 (1)2、任务要求 (1)3、电路及元器件 (1)二、设计1、设计说明 (2)2、任务分析 (6)3、程序设计 (6)4、硬件电路板电路图 (8)5、程序及下载 (9)6、程序运行测试 (10)三、小结1、任务小结 (11)2、心得体会 (12)一、任务目的:通过采用单片机制作一个模拟汽车左右转向灯的控制系统。
二、任务要求:汽车转向灯显示状态(图一)采用两个发光二极管来模拟汽车左转灯和右转灯,用单片机的P1.0和P1.1引脚控制发光二极管的亮、灭状态;用两个连接到单片机P3.0和P3.1引脚的拨动开关S0、S1,模拟驾驶员发出左转、右转命令。
P3.0和P3.1引脚的电平状态与驾驶员发出的命令的对应关系如下表所示。
(图二)比较上面两表可以看到,P3.0引脚的电平状态与左转灯得两灭状态相对应,当P3.0引脚的状态为1时,左转灯熄灭;当P3.0引脚的状态为O时,左转灯闪烁。
同样,P3.1引脚的状态与右转灯的亮灭状态相对应三、电路设计:单片机模拟汽车左右转向灯控制系统电路图如下图三,并行口P1的P1.0和P1.1控制两个发光二极管,当引脚输出为0时,相应的发光二极管点亮;P3口得P3.0和P3.1各自分别连接一个拨动开关,拨动开关的一端通过一个4.7K电阻连接到电源,另一端接地。
当波动开关S0拨至2时,P3.0引脚为低电平,P3.0 = 0;当拨至位置1时,P3.0引脚为高电平,P3.0 = 1。
拨动开关S1亦然。
单片机模拟汽车左右转向灯控制系统所需要的元器件清单如下表:简介(AT89C51)简介AT89C51是一种带4K字节闪烁可编程、可擦除的8位只读存储器(FPEROM—Flash Programmable and Erasable Read Only Memory),可在低电压下工作。
基于单片机的汽车转向灯设计报告
基于单片机的汽车转向灯设计报告设计报告:基于单片机的汽车转向灯一、引言汽车转向灯是车辆行驶中非常重要的安全设备之一,用于提醒其他车辆和行人司机的转向意图。
本设计报告介绍了基于单片机的汽车转向灯的设计原理、硬件和软件结构以及设计过程和结果。
二、设计原理在汽车转向灯的设计中,我们使用单片机进行控制。
设计原理主要包括以下几个方面:1. 单片机控制:通过单片机控制的方式,实现转向灯的开关和闪烁效果。
2. 信号输入:通过车辆转向灯开关和信号,将转向灯开关信号输入到单片机中。
3. 信号输出:通过单片机控制转向灯开关的开闭,控制车辆转向灯的点亮和熄灭。
三、硬件设计硬件设计部分主要包括以下几个方面:1. 单片机选择:根据所需的功能和性能要求,选择合适的单片机。
可以选择低功耗的单片机,以节约能源。
2. 输入部分:连接转向灯开关的输入引脚,以接收来自车辆开关的信号。
3. 输出部分:连接转向灯的输出引脚,将单片机的控制信号输出到转向灯。
四、软件设计软件设计部分主要包括以下几个方面:1. 初始化设置:设置单片机的引脚功能和状态,配置转向灯引脚为输出模式。
2. 输入检测:检测转向灯开关的状态,判断是否有转向灯开关信号输入。
3. 状态控制:根据转向灯开关的状态,控制转向灯的开闭和闪烁效果。
4. 循环判断:通过循环的方式,不断检测转向灯开关的状态和控制转向灯的开闭和闪烁。
五、设计过程设计过程主要包括以下几个步骤:1. 确定功能需求:根据实际需求,确定转向灯的开闭和闪烁效果。
2. 选取单片机:根据功能需求和性能要求,选择合适的单片机。
3. 设计硬件:根据单片机的引脚功能和状态,设计连接转向灯开关和输出引脚的电路连接方式。
4. 设计软件:根据硬件设计和功能需求,编写单片机的控制程序。
5. 测试验证:将设计好的电路和程序进行组装和测试,验证其功能和性能是否符合要求。
六、设计结果经过测试验证1. 能够准确地接收转向灯开关的信号。
2. 具备灵敏的控制响应速度,能够迅速控制转向灯的开闭和闪烁。
单片机课件设计:汽车转向灯 (1)
错误!未指定书签。
学号:班级:姓名:摘要随着单片机的日益发展,其应用也越来越广泛,通过对“汽车转弯灯单片机控制系统”设计,可以对单片机的知识得到巩固和扩张。
本设计是设计一个单片机控制系统。
在汽车进行左转弯、右转弯、刹车、合紧急开关、停靠等操作时,实现对各种信号指示灯的控制。
本设计主要是对单片机的并行输入/输出口电路的应用,通过I/O口控制发光二极管的亮﹑灭﹑闪烁,加上一些串口电路﹑按键电路﹑驱动电路来模拟汽车尾灯的功能并在PC机上显示此时的汽车行进状态。
汽车在驾驶时有左转弯、右转弯、刹车、合紧急开关、停靠等操作。
在左转弯或右转弯时,通过转弯操作杆应使左转开关或右转开关合上,从而使左头灯、仪表板左转弯灯、左尾灯或右头灯、仪表板右转弯灯、右尾灯闪烁;合紧急开关时要求前面所述的6个信号灯全部闪烁;汽车刹车时,两个尾灯点亮;如正当转弯时刹车,则转弯时原应闪烁的信号灯仍应闪烁。
以上闪烁,都是频率为1Hz的低频闪烁;在汽车停靠而停靠开关合上时,左头灯、右头灯、左尾灯、右尾灯按频率为30Hz 的高频闪烁。
通过做实物,编写程序,完成了设计的要求。
通过该设计,对单片机的认识有了更进一步的了解,对单片机的各个口的功能作用了解加深,对Protel,Proteus的应用更加熟练,对设计系统有了了解,掌握了一些设计方法,受益不少。
关键词单片机;汽车信号转弯灯;电路基础;数字电子1 绪论1.1 选题背景电子技术的发展经历了很长一段路程.而现在我们使用的微型电子技算机是超大规模集成电路所构成,它属于第四代计算机,而单片机则是微型计算机的一部分。
从1971年微型计算机问世以来,由于实际应用的需要,微型计算机向着两个不同的方向发展:一个是向高速度、大容量、高性能的高档微机方向发展;另一个则是向稳定可靠、体积小和价格廉的单片机方向发展。
由于科学技术的发展,由模拟电路或数字电路实现的大部分控制功能,现在能够使用单片机通过软件编程方法实现了。
原创:单片机课程设计报告(汽车转向灯控制系统设计 刘子帆)
基于单片机的汽车转向灯设计报告
Course Design of Principle and System of Single Chip MicrocomputerDesign of Automobile Turn Signal Based on Single ChipMicrocomputer1 IntroductionIn today's society, science, technology and industry are highly developed, and the number of cars is increasing year by year. Every corner of the street is filled with them, but everything has two sides. Cars bring convenience to people's lives and pose a threat to traffic and personal safety. Therefore, we should take effective measures to reduce the probability of accidents and improve the running efficiency of vehicles. Therefore, the car turn signal becomes an essential device for every car. Car turn signal is a necessary condition for driving safety. Besides lighting, it also has warning functions for pedestrians and other vehicles, such as turning, meeting and braking. Due to the limitation of its own conditions, the traditional automobile turn signal lamp has low reliability, inaccurate timing and short service life, and the relay is greatly affected by the temperature, so it can't meet the requirements for the environment with large temperature changes. Therefore, the design of automobile turn signal in this paper is realized by single chip microcomputer. The single chip microcomputer control system can not only avoid the traditional shortcomings, but also have the advantages of strong function, fle*ible use, high reliability, low cost, small size, control-oriented and intelligent function.2 design scheme and principleThis design requires the control of all kinds of signal indicators when the car is turning left, turning right, braking, turning on the emergency switch, stopping and reversing. According to the design requirements, formulate the overall design idea.The automobile turn signal circuit is composed of AT89C51, reset, alarm, LED display circuit, key circuit and so on.2.1 system designThe MCU AT89C51 is used as the core chip to simulate the automobile turn signal by controlling the display of LED, that is, the switch 1-6 is closed to simulate the operation of braking, emergency, stopping, turning left, turning right and reversing. The on-off display of LED D1-D8 is used to simulate the display of fault indicator, left headlight, right headlight, left turn signal, right turn signal, left tail light, right tail light and back-up light of automobile. When turning, it is required that the two indicator lights on the left and right tail lights and the left and right headlights on the dashboard emit flashing signals accordingly; When the emergency switch is closed, all si* signal lights should flash; When the car brakes, the two tail lights emit steady bright signals; If you brake when you are turning, the signal that should flash when you are turning should still flash. They all flash at low frequency, and any combination of switches other than the above will cause the fault indicator to flash. The flashing frequency is high and an alarm sounds. After pressing the corresponding reset key, the alarm sounds and the indicator lights are released, and then the circuit problems can be checked in time.The system block diagram is shown in Figure 1.Figure 1 System composition block diagram2.2 working principle of single chip microcomputer system2.2.1 switch state detectionSwitch state detection, which is an input relation for AT89C51, can detect the state of each switch in turn, and let the corresponding LED indicate the state of each switch; You can also detect the state of the si*-way switch at one time, that is, read all the states of the P2 port with MOV A and P2 instructions at one time, and take the state of the lower 6 bits to indicate, and select the branch according to this.2.2.2 output controlThe LEDs are indicated by D1-D8, and the design uses the instruction MOV P1, #111*****B method to realize the selection.2.2.3 timerSignal control is the result of the realization of timer. In the control of automobile turning light, the programmable timer of AT89C51 single chip microcomputer is mainly used to realize the delay of light flashing, that is, by counting the system clock pulses, and the count value is set by the program. A timer is used to generate a high-frequency flashing function.2.2.4 circulation systemThe main program loop is achieved through repeated calls and loops of statements, and the low-frequency flashing function is generated.2.2.5 automobile turn signal controlWhen the car is turning, stopping or in an emergency, the flashing frequency of the e*ternal signal lights and the indicator lights of the instrument panel is low frequency signals. When an error occurs, the signal lamp frequency flashes, which is a high-frequency signal. Car turning lights are designed with 6 keys to control the turning, stopping and emergency of signal lights. Keys are arranged as follows: key 1 is the brake switch; Key 2 is the emergency switch; Key 3 is the stop switch; Key 4 is the left turn switch; Key 5 is the right turn switch; Key 6 is the reversing switch.2.3 Hardware design of automobile turn signal control system2.3.1 key circuitIn this design, the toggle switch is selected, and the pin of the single chip microcomputer is used as the input. Firstly, "1" is set. When the key is not pressed, the single chip microcomputer pin is at a high level; When the key is pressed, the pin is grounded, and the single chip microcomputer pin is at a low level. Whether a key is pressed or not, and which one is pressed can be displayed by the pin level of the single chip microcomputer. Fig. 1 shows the connection of the keys on the circuit board. Si* keys are connected to P2.0, P2.1, P2.2, P2.3, P2.4 and P2.5 respectively. For this connection, each program can use the method of continuous query to detect whether a key is closed, judge the key number and turn to the corresponding key processing.The circuit diagram is shown in Figure 2.Figure 2 Key control circuit2.3.2 Buzzer circuitWhen the control system enters the wrong branch, the microcontroller P1.0 generates a signal, and the alarm light flashes. After the signal is amplified by the amplifier, the buzzer operates, giving an alarm to warn others of the system error. After pressing the reset button, the high-level signal sent by the single-chip P1.0 can be clamped at the low level, so that the alarm sound and the alarm light can be lifted, and then the staff can check the error causes of the system in time.The circuit diagram is shown in Figure 3.Figure 3 Buzzer circuit2.3.3 indicator light circuitThe ULN2803 chip has the functions of driving power amplification and inverting. When the MCU P2.0-P2.7 sends out a high level, it changes to a low level through the ULN2803 inverter, so that the indicator lights up.The circuit diagram is shown in Figure 4.Figure 4 Indicator Circuit2.4 Schematic diagram of general circuit of automobile turn signalThe schematic diagram of automobile turn signal is shown in Appendi* 1.2.5 Software design of automobile turn signal control system2.5.1 Main idea of procedureIn the main program, the initialization of the automobile turn signal control system is completed, and whether a key is pressed or not is judged. When the switch is inactive, there is no output, and the delay program is called. When it is judged that a switch is pressed, it enters each branch through bit-by-bit comparison, and the delay program and timer are also called in each branch, so that the LED flashes at the corresponding frequency. 2.0 = brake; 2.1 = emergency; 2.2 = docking; 2.3 = turn left; 2.4 = turn right; P2.5= reverse. The key value is determined according to the state of P2.E*ample: P2=00111110, indicating that the brake key is pressed, and its key value is 3EH (only look at the last si* digits).The list of design procedures for automobile turn signal is shown in Appendi* 2. 2.5.2 Flow chart of indicator lamp circuitFig. 5 circuit flow chart of indicator lamp 3 simulation diagramThe operation instructions are as follows: Press 1 brake key, and the corresponding signal lights of D6 and D7 will light up; 2 Press the emergency key, and the signal lights D2, D3, D4, D5, D6 and D7 will flash; 3 Press the stop key, D2, D3, D6 and D7 will flash; 4 Press the left turn key, D2, D4 and D6 will flash; 5 Press the right turn key, and D3, D5 and D7 will flash; 6 Press the reverse key, and D8 flashes; Press 1 brake and 2 emergency key, D2, D3, D4 and D5 will flash; D6 and D7 are bright; 4 Press the left turn and 1 brake key, and D2, D4 and D7 will flash; D6 is bright; 5 Press the right turn and 1 brake key, and D3, D5 and D6 will flash; D7 bright; 4 Press the left turn, 1 brake and 2 emergency keys, and D2, D3, D4, D5 and D7 will flash; D6 is bright; 5 Press the right turn, 1 brake and 2 emergency keys, D2, D3, D5, D6 and D8 will flash, and D7 will light up. In case of any operation other than the above, an error occurs, the buzzer sounds, D1 flashes, and press the reset key to stop.The simulation of braking state is as shown in Appendi* 4.4 summaryThe topic of my course design is "Car Turn Signal". After the topic selection, Iconsulted the relevant information on the Internet, referred to the designs of many predecessors, and realized the ideas. Finally, according to the teacher's requirements, the relevant control circuits and programs are designed. There are many problems in the design process. First of all, in the design of the program, it took a long time for the delay program to be revised several times in order to reach the e*pected flicker frequency. Finally, two delay methods, timer and instruction loop, were adopted to finally realize the LED blinking at high frequency and low frequency respectively. In terms of hardware, I added the alarm function on the basis of basic functions, and reviewed the knowledge of analog electricity and digital electricity. A series of softwares such as Visio, Proteus, Keil, etc. were set up in this course, which strengthened my operation level.All in all, through this course, I not only became more familiar with the knowledge of MCU and other circuits, but also benefited a lot from the knowledge I learned from teachers and classmates.references[1] Wang Siming. Principle of Single Chip Microcomputer and Design of Application System [M]. Beijing: Science Press, 2012.[2] Feng Zhicun. Analog Electronic Technology [M]. Lanzhou: Lanzhou University Press, 2003.Li Jiying. Digital Electronic Technology [M]. Beijing: China Electric Power Press, 2011.Appendi* 1 General Circuit Diagram of Automobile Turn Signal LampAppendi* II List of Design Procedures for Automobile Turn SignalORG0000HAJMPSTART1ORG 0030HSAMEEQU4EHSTART1:MOVP1,#00H; Output without inputSTART: MOV A,P2 ; P2 port data readingANL A,#3FH ; Take the lower 6-bit data of port P2CJNE A,#3FH,SHIY; Judging the data of the lower 6 bits of P2 portAJMPSTART1SHIY: MOV SAME,ALCALL YS; Call delay programMOV A,P2; P2 port data readingANLA,#3FH ; Take the lower 6-bit data of port P2CJNEA,#3FH,SHIY1; Judging the data of the lower 6 bits of P2 portAJMPSTART1; No output when the switch is inactive.SHIY1:CJNEA,SAME,START1CJNEA,#37H,NE*T1 ; 2.3 = 0, enter the left turning branch.AJMPLEFTNE*T1: CJNEA,#2FH,NE*T2; 2.4 = 0, enter the right turn branch.AJMPRIGHTNE*T2: CJNEA,#3DH,NE*T3; 2.1 = 0 to enter the emergency branch. AJMPEARGENE*T3: CJNEA,#3EH,NE*T4; Enter the brake branch when P2.0=0.AJMPBRAKENE*T4: CJNEA,#36H,NE*T5 ; When P2.0=P2.3=0, enter the left turning brake branch.AJMPLEBRNE*T5: CJNEA,#2EH,NE*T6 ; When p2.0=P2.4=0, enter the right turning brake branch.AJMPRIBRNE*T6: CJNEA,#3CH,NE*T7; Enter the emergency brake branch when P2.0=P2.1=0.AJMPBRERNE*T7: CJNEA,#34H,NE*T8; 2.0 = p2.1 = p2.3 = 0, enter the left-turn emergency brake branch.AJMPLBENE*T8: CJNEA,#2CH,NE*T9; When P2.0=P2.1=P2.4=0, enter the right-turn emergency brake branch.AJMPRBENE*T9: CJNEA,#3BH,NE*T10; 2.2 = 0 to enter the docking branch.AJMPSTOPNE*T10:CJNE A,#1FH,NE*T11 ; 2.5 = 0 to start reversing.AJMP BACKNE*T11:AJMP ERROR ; Other situations enter the wrong branch.LEFT: MOVP1,#2AH; Left turn branchLCALLY1sMOVP1,#00HLCALLY1sAJMPSTARTRIGHT:MOVP1,#54H; Right turn branchLCALLY1sMOVP1,#00HLCALLY1sAJMPSTARTEARGE: MOVP1,#7EH; Emergency branchLCALLY1sMOVP1,#00HLCALLY1sAJMPSTARTBRAKE: MOVP1,#60H ; Brake branchAJMPSTARTLEBR: MOV P1,#6AH ; Left turn brake branchLCALLY1sMOVP1,#20HLCALLY1sAJMPSTARTRIBR: MOVP1,#74H ; Right turn brake branchLCALLY1sMOVP1,#40HLCALLY1sAJMPSTARTBRER: MOVP1,#7EH ; Emergency brake branchLCALLY1sMOVP1,#60HLCALLY1sAJMPSTARTLBE: MOVP1,#7EH ; Left turn emergency brake branchLCALLY1sMOVP1,#20HLCALLY1sAJMPSTARTRBE: MOVP1,#7EH; Right turn emergency brake branchLCALLY1sMOVP1,#40HLCALLY1sAJMPSTARTSTOP: MOVP1,#66H ; Docking branchLCALLY1sMOVP1,#00HLCALLY1sAJMPSTARTBACK:MOV P1,#80H; Reversing branchLCALL Y1sMOV P1,#00HLCALL Y1sAJMP STARTERROR: MOVP1,#01H ; Wrong branchLCALLY100msMOVP1,#00HLCALLY100msAJMPSTARTYS: MOVR7,#20H ; delayYS0:MOVR6,#0FFHYS1:DJNZR6,YS1DJNZ R7,YS0RETY1s: MOVR7,#04H ; Cyclic statement delayY1s1: MOVR6,#0FFHY1s2: MOVR5,#0FFHDJNZR5,$DJNZR6,Y1s2DJNZR7,Y1s1RETY100ms: MOV TMOD,#01H ; Timer delayMOV TH1,#00HMOV TL1,#00HMOV IE,#00HSETB TR1Y100ms1:JBC TF1,Y100ms2AJMP Y100ms1Y100ms2:CLR TR1RETENDAppendi* III Main Program Flow ChartAppendi* IV Simulation Diagram of Automobile Turn Signal。
基于单片机的汽车转向灯课程设计报告
单片机原理及系统课程设计专业:班级:姓名:学号:指导教师:兰州交通大学自动化与电气工程学院2010 年 3 月 7 日基于单片机的汽车转向灯设计摘要本设计采用单片机控制,在控制系统中,选择了5个开关、1个AT89C51单片机、7只发光二极管。
其中AT89C51单片机作为控制核心,用5个开关的状态来模拟汽车转弯时相关状态。
用7只发光二极管的明灭来模拟汽车灯在相关信号下的状态。
关键词:单片机;汽车转弯信号灯;AT89C51Abstract:The design uses a single-chip control, select the five switches in the control system, an AT89C51 microcontroller seven light-emitting diodes. AT89C51 microcontroller as con trol core, with the status of the five switches to simulate car turns state. Seven light-emit ting diode Ming off car lights to simulate the state related signals.Key Words: SCM,Automotive turn signal lights ,AT89C511 引言在当今社会,汽车方便了人们的生活,人们也开始了依赖于汽车。
汽车的数量也是越来越多,但是一些交通事故也是越来越多。
所以汽车转向灯也成了汽车必不可少的装备,汽车转向灯可以有效的对行人或者其他车辆起到一定的提示作用。
传统的汽车转向灯由于自身条件的限制,可靠性低,定时时间不够精确,使用寿命较短,且继电器受温度影响较大,对于温度变化较大的环境往往不能满足要求。
2 设计方案及原理2.1设计方案汽车转向灯电路是由单片机AT89C51、LED显示电路、按键电路等几部分构成。
实验三模拟汽车左右转向灯控制
单片机实验报告(实验三)姓名 张培 林志霖 学号 51 28班级 13-电信MT 时间 A-504 地点 实验名称: 模拟汽车左右转向灯控制实验一、 实验目的1、 熟悉C 语言的基本语句、复合语句、条件选择语句和循环语句的使用方法;2、 了解顺序、选择和循环三种基本程序结构及结构化程序设计方法。
3、 强化根据电路图来搭建电路的能力4、 帮助学生养成良好实验习惯。
二、实验主要应配套仪器设备及套数1.元件列表 2.配套仪器设备和工具镊子、螺丝刀、万用表,直流电源,天祥单片机练习板三、参考电路图(请在下图右边画出单片机引脚图)XTAL218XTAL119ALE 30EA31PSEN 29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.0/T21P1.1/T2EX 2P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD 10P3.1/TXD 11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR 16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C52X1CRYSTALC130pFC230pFC310uFR810kD9LED-REDD10LED-RED R2330R1330SW1SW-SPDTSW2SW-SPDTR34.7kR44.7k四、实验要求安装在汽车不同位置的信号灯市汽车驾驶员之间及驾驶员向行人传递汽车行驶状况的语言工具。
一般包括转向灯、刹车灯、倒车灯、雾灯等,其中汽车转向灯包括左转灯和右转灯,其显示状态如下表所示:转向灯显示状态 驾驶员发出的命令左转灯 右转灯 灭 灭 驾驶员未发出命令 灭闪烁驾驶员发出右转显示指令极管的亮、灭状态;用两个连接到单片机P3.0和P3.1引脚的拨动开关S0、S1,模拟驾驶员发出左转、右转命令。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机原理及系统课程设计
专业:
班级:
姓名:
学号:
指导教师:
兰州交通大学自动化与电气工程学院
2014 年 7月 1日
1 引言
随着单片机的日益发展,其应用也越来越广泛,通过对“汽车转向灯单片机控制系统”设计,可以对单片机的知识得到巩固和扩展。
本课程内容是设计一个单片机控制系统,在汽车进行左转弯、右转弯、刹车、合紧急开关、停靠等操作时,实现对各种信号指示灯的控制。
本设计主要是对单片机的并行输入/输出口电路的应用,通过I/O口控制发光二极管的亮﹑灭﹑闪烁,加上一些复位电路﹑按键电路﹑驱动电路来模拟汽车尾灯的功能。
2 设计方案及原理
汽车转向灯主要有单片机、按键、复位、时钟、电源、故障检测电路、LED显示电路组成最基本的单片机系统。
单片机本身的功能强大,汽车转向灯的驱动用单片机本身的驱动来驱动。
使得单片机的功能得到充分的运用。
本方案的故障检测电路具有故障监控性能,他能提高系统的可靠性。
由定时器/计数器与中断系统的联合组成控制系统的工作原理。
如汽车上有一个转弯控制杆,其中有三个位置:中间位置,汽车不转弯;向上,汽车左转;向下汽车右转。
转弯时,规定左右尾灯、左右头灯仪表板上2个指示灯相应地发出闪烁信号。
应急开关合上时,6个信号灯都应闪烁。
汽车刹车时,2个尾灯发出不闪烁信号。
如正当转弯时刹车,转弯时原应闪烁的信号仍应闪烁。
它们都是频率为1Hz低频闪烁,在汽车停靠而停靠开关合上时,左头灯、右头灯、左尾灯、右尾灯按频率为10Hz频率快速闪烁。
任何在下表中未出现的组合,都将出现故障指示灯闪烁,闪烁频率为10Hz。
3 系统硬件设计
3.1 AT89C51单片机介绍
AT89C51单片机有以下部件构成:八位微处理器、振荡电路、总线控制部件、中断控制部件、片内Flash存储器、片内RAM、并行I/O接口、定时器和串行I/O 接口。
AT89C51单片机内部由CPU、4KB的FPEROM,128B的RAM,两个16位的定时器/计数器T0和T1,4个8位的I/O端P0、P1、P2、P3等组成。
汽车转向灯单片机控制系统电路是由单片机AT89C51、复位、电源、时钟、LED显示电路、故障检测电路、按键电路构成汽车转向灯单片机控制系统框图如图3.1所示。
图3.1 汽车转向灯单片机控制系统框图
3.2 系统电路图
系统原理图如图3.2所示: Array
图3.2汽车转向灯控制硬件接线图
4 系统软件设计
汽车转向灯控制系统主程序流程如图4.1所示,源程序清单见附录1。
图4.1 汽车转向灯控制系统主程序流程图
键的功能程序流程图如图4.2所示,主程序及子程序流程图见附录2。
图4.2 键的功能程序流程图
5 总结
本系统基于MCS-51开发平台,充分利用了51单片机的各引脚功能,同时有效利用了中断、查询、定时器、计数器,使得汽车转向信号灯控制得以实现。
通过这次课程设计,用软件的方法设计硬件,并用软件方式设计的软件系统到硬件系统的转换是由有关的开发软件自动完成的。
在设计过程中可用有关软件进行各种仿真,同时系统可现场编程,在线升级等。
整个系统可集成在一个芯片上,体积小,功耗低,可靠性高。
其技术以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方法,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件方式设计的电子系统到硬件系统的逻辑编译,逻辑化简,逻辑分割,逻辑综合及优化,逻辑布局布线,逻辑仿真,直至特定目标芯片的适配便宜,逻辑映射,编程下载等工作,为系统的设计开发带来了极大地方便。
参考文献
[1] 孙涵芳,徐爱卿.MCS-51.96系列单片机原理及应用[M].北京:北京航空航天大学出版社,1988.
[2] 徐爱钧,彭秀华.Keil Cx51 V7.0单片机高级语言编程与μVision2应用实践[M].北京:电子工
业出版社,2006.
[3] 张毅坤.单片微型计算机原理及应用[M].陕西:西安电子科技大学出版社,1988.
附录1 源程序代码
ORG 0000H
AJMP START1
ORG 0030H
SAME EQU 4EH
START1:MOV P1,#00H ;无输入时无输出
START: MOV A,P3 ;读P3口数据
ANL A,#1FH ;取用P3口的低五位数据
CJNE A,#1FH,SHIY ;对P3口低五位数据进行判断
AJMP START1
SHIY: MOV SAME,A
LCALL YS ;延时
MOV A,P3 ;读P3口的数据
ANL A,#1FH ;取用P3口的低五位数据
CJNE A,#1FH,SHIY1 ;对P3口的低五位数据进行判断
AJMP START1 ;开关没有动作时无输出
SHIY1: CJNE A,SAME,START1
CJNE A,#17H,NEXT1 ;P3.3=0时进入左转分支
AJMP LEFT
NEXT1: C JNE A,#0FH,NEXT2 ;P3.4=0时进入右转分支AJMP RIGHT
NEXT2: C JNE A,#1DH,NEXT3 ;P3.1=0时进入紧急分支AJMP EARGE
NEXT3: C JNE A,#1EH,NEXT4 ;P3.0=0时进入刹车分支AJMP BRAKE
NEXT4: C JNE A,#16H,NEXT5 ;P3.0=P3.3=0时进入左转刹车分支AJMP LEBR
NEXT5: C JNE A,#0EH,NEXT6 ;P3.0=P3.4=0时进入右转刹车分支AJMP RIBR
NEXT6: C JNE A,#1CH,NEXT7 ;P3.0=P3.1=0时进入紧急刹车分支AJMP BRER
NEXT7: C JNE A,#14H,NEXT8 ;P3.0=P3.1=P3.3=0时进入左转紧急
刹车分支
AJMP LBE
NEXT8: C JNE A,#0CH,NEXT9 ;P3.0=P3.1=P3.4=0时进入右转紧急
刹车分支
AJMP RBE
NEXT9: C JNE A,#1BH,NEXT10 ;P3.2=0时进入停靠分支AJMP STOP
NEXT10:AJMP ERROR ;其他情况进入错误分支LEFT: MOV P1,#2AH ;左转分支
LCALL Y1s
MOV P1,#00H
LCALL Y1s
AJMP START
RIGHT: MOV P1,#54H ;右转分支
LCALL Y1s
MOV P1,#00H
LCALL Y1s
AJMP START
EARGE:MOV P1,#7FH ;紧急分支
LCALL Y1s
MOV P1,#00H
LCALL Y1s
AJMP START
BRAKE:MOV P1,#60H ;刹车分支
AJMP START
LEBR: MOV P1,#6AH ;左转刹车分支LCALL Y1s
MOV P1,#40H
LCALL Y1s
AJMP START
RIBR: MOV P1,#6AH ;右转刹车分支LCALL Y1s
MOV P1,#40H
LCALL Y1s
AJMP START
BRER: MOV P1,#7EH ;紧急刹车分支LCALL Y1s
MOV P1,#60H
LCALL Y1s
AJMP START
LBE: MOV P1,#7EH ;左转紧急刹车分支LCALL Y1s
MOV P1,#40H
LCALL Y1s
AJMP START
RBE: MOV P1,#7EH ;右转紧急刹车分支LCALL Y1s
MOV P1,#20H
LCALL Y1s
AJMP START
STOP: MOV P1,#66H ;停靠分支
LCALL Y100ms
MOV P1,#00H
LCALL Y100ms
AJMP START
ERROR:MOV P1,#80H ;错误分支
LCALL Y1s
MOV P1,#00H
LCALL Y1s
AJMP START
YS: MOV R7,#20H ;延时
YS0: MOV R6,#0FFH
YS1: DJNZ R6,YS1
DJNZ R7,YS0
RET
Y1s: MOV R7,#04H ;延时
Y1s1: MOV R6,#0FFH
Y1s2: MOV R5,#0FFH
DJNZ R5,$
DJNZ R6,Y1s2
DJNZ R7,Y1s1
RET
Y100ms:MOV R7,#66H ;延时
Y100ms1:MOV R6,#0FFH
Y100ms2:DJNZ R6, Y100ms2
DJNZ R7, Y100ms1
RET
END
附录2 程序流程图
(1) 主程序流程图如图2.1所示。
图2.1 主程序流程图
(2) 子程序流程图如图2.2~2.6所示。
图2.2 表示左转 图2.3 表示右转
单片机原理及系统课程设计报告
- 10 -
图2.4 表示紧急 图2.5 表示停靠
图2.6 表示刹车。