目录
1绪言 5
1.1课题的研究背景与意义 5
1.1.1 汽车灯光简介 5
1.1.2 汽车尾灯介绍 5
1.1.3 尾灯灯泡分类 5
1.2 课题研究的热点及发展概况 5
1.2.1国外研究现状及成果: 6
1.2.2国内研究现状及成果: 6
1.3本次设计的主要任务以及要求 7
1.3.1设计目的及任务 7
1.3.3工作要求 7
3汽车LED尾灯控制器硬件设计 8
3.1硬件设计系统框架 8
3.1.1系统的框架结构图 8
3.1.2系统功能 8
3.2硬件设计 9
3.2.1单片机技术简介 9
3.2.2系统主要芯片和元器件的介绍及应用 10
3.2.3 74HC59驱动8位led电路设计 13
3.3仿真电路设计 15
3.3.1Proteus软件简介 15
3.3.2仿真电路的设计 17
3.4软件设计 18
3.4.1编程软件Keil4的介绍 18
3.4.2程序设计 19
4组装与调试 20
4.1 元器件的选择 20
4.2pcb版的制作 20
4.3软件调试时遇到的问题及解决方法 21
4.4实物图 22
5.总结 22
致谢 23
参考文献 24
附录一: 25
1.3本次设计的主要任务以及要求
1.3.1设计目的及任务
a.通过网上查阅相关资料,充分了解汽车尾灯的工作原理,设计模拟汽车尾灯的电路。
b.复习与巩固“AT89S52单片机原理以及C语言编程设计”,掌握51单片机的I/O口使用以及扩展,能用I/O口控制LED的亮灭,模拟汽车尾灯的控制。
c.了解并运用74HC595的结构功能以及应用。
d.利用Autilum designer软件设计模拟汽车尾灯控制的原理图,做出PCB板,以及后期的焊接与调试。
e.使用Keil4软件编写 C语言程序,在做好的模拟的电路板中下载调试。
f.利用proteus软件画出原理图进行程序仿真。
g.写出此次设计的报告和制作出答辩时的PPT。
1.3.2技术要求
a.采用AT89S52单片机作为整个电路的控制核心,控制8个LED灯的亮灭,以实现模拟汽车尾灯的控制。
b.使用74HC595芯片作为驱动LED灯的驱动电路,可以减少对单片机I/O口的使用。
c.利用6个独立按键模拟汽车尾灯控制器,分别代表着“右转”、“左转”、“危险警示”、“夜间模式切换”、“检查信号”、“刹车”。
1.3.2工作要求
a.构建基于AT89S52单片机的控制系统的总体结构框图;
b.根据开题报告要求,选择购买主要元器件,通过查阅网上资料,并且计算所需的电路参数;设计出模拟汽车尾灯的电路,在学校开放性实验室中做出进行实物的焊接以及调试;
c.根据题目的要求,以及操作功能的需要,确定6个独立按键功能;
d.采用C语言编写电路的程序,进行后期的调试,直到能够完全实现功能。
e.进行电路仿真,调试程序。
F. 写出此次设计的步骤,在实际操作时遇到的困难,以及软件调试直至通过,记录在对模拟电路进行调试分析的结果,写出设计报告和制作答辩所需的PPT。
2汽车LED尾灯控制器硬件设计
2.1硬件设计系统框架
本模拟汽车尾灯控制系统主要以AT89S52单片机为核心,制作出的一款新型LED组合式汽车尾灯控制的电路,并且利用6个独立按键实现左转、右转、刹车、行车、危险警示、检查信号等信号灯的功能并且利用74HC595芯片实现只利用单片机3个I/O口实现多个状态控制。该系统由电源电路、电源指示灯、下载接口、复位电路、74HC595串行输入并行输出控制8个LED灯、振荡电路。
2.1.1系统的框架结构图

2.1.2系统功能
本系统主要实现模拟汽车行驶状态中尾灯控制的状态并用8个LED灯的组合式亮灭来代表了汽车右转、左转、危险警示、夜间模式切换、检查信号、刹车同时,本系统还实现了白天和夜间两种模式。用户可根据需要按对应的“夜间模式切换”按键切换,本文转载自http://www.biyezuopin.vip/onews.asp?id=12873汽车在白天与夜间的状态以及对应的变化。我们总共设计了6个独立按键S1-S6,下图所示为按键功能介绍:

#include<STC12C2052AD.h>
#include"LCD1602_IIC.c"
#include"DS1302.c"sbit LED_Left=P3^0;
sbit LED_Right=P3^1;sbit Key_Left=P3^7;
sbit Key_Right=P1^0;
sbit Key_Stop=P1^1;
sbit Key_Emergency=P1^2;//运行标志位
bit flag_Key_Left=0;//按键执行标志位
bit flag_Key_Right=0;
bit flag_Key_Stop=0;
bit flag_Key_Emergency=0;
unsigned char Flash_Mode=0;//闪烁模式选择 0:正常待机模式 1:左转 2:右转 3:双闪 4:停止//运行数组
char LCD1602_Buff[17];
unsigned int T0_Cnt=0;/*
名称:基于单片机的汽车尾灯控制系统设计
平台:STC12C5202AD,使用内部RC振荡器,大约为13MHz
说明:设计包含4个独立按键,两个LED灯代表左右车尾灯。使用PCF8574转接板以IIC方式连接LCD1602到单片机。时钟电路选用DS1302,仅下载时设定时间。
功能设定:待机状态下,显示当前系统时间;按下左转按键,左转指示灯闪烁;按下右转按键,右转指示灯闪烁;按下紧急按键,两指示灯均闪烁;任意状态下按住刹车按键,两灯保持常量,松开后还原为原来状态。上述4种状态均有文字提示。硬件制作:凌净清河
程序/文档:凌净欣羽
新矿城学习基地#2019
*/void delay(unsigned long i)
{while(i--);
}void Time_Display()
{unsigned char i;for(i=0;i<17;i++){LCD1602_Buff[i]='\0';//先填充截断符}LCD1602_Buff[0]=' ';LCD1602_Buff[1]=' ';LCD1602_Buff[2]=' ';LCD1602_Buff[3]=D_year[0]+'0';LCD1602_Buff[4]=D_year[1]+'0';LCD1602_Buff[5]=D_year[2]+'0';LCD1602_Buff[6]=D_year[3]+'0';LCD1602_Buff[7]='-';LCD1602_Buff[8]=D_month[0]+'0';LCD1602_Buff[9]=D_month[1]+'0';LCD1602_Buff[10]='-';LCD1602_Buff[11]=D_day[0]+'0';LCD1602_Buff[12]=D_day[1]+'0';LCD1602_Buff[13]=' ';LCD1602_Buff[14]=' ';LCD1602_Buff[15]=' ';LCD1602_Print(0,0,LCD1602_Buff);delay(10000);for(i=0;i<17;i++){LCD1602_Buff[i]='\0';//先填充截断符}LCD1602_Buff[0]=' ';LCD1602_Buff[1]=' ';LCD1602_Buff[2]=' ';LCD1602_Buff[3]=' ';LCD1602_Buff[4]=D_hour[0]+'0';LCD1602_Buff[5]=D_hour[1]+'0';LCD1602_Buff[6]=':';LCD1602_Buff[7]=D_minute[0]+'0';LCD1602_Buff[8]=D_minute[1]+'0';LCD1602_Buff[9]=':';LCD1602_Buff[10]=D_second[0]+'0';LCD1602_Buff[11]=D_second[1]+'0';LCD1602_Buff[12]=' ';LCD1602_Buff[13]=' ';LCD1602_Buff[14]=' ';LCD1602_Buff[15]=' ';LCD1602_Print(0,1,LCD1602_Buff);
}void Timer0Init(void)      //5毫秒@13MHz
{AUXR |= 0x80;     //定时器时钟1T模式TMOD &= 0xF0;       //设置定时器模式TL0 = 0x18;       //设置定时初值TH0 = 0x02;        //设置定时初值TF0 = 0;       //清除TF0标志TR0 = 1;      //定时器0开始计时
}void sys_init()
{//Ds1302Init();//首次上电写入时间LED_Left=0;LED_Right=0;LCD1602_Light_Off();LCD1602_Init();LCD1602_Print(0,0,"     Ready!     ");LCD1602_Light_On();Timer0Init();EA=1;ET0=1;LED_Left=1;LED_Right=1;
}void main()
{sys_init();while(1){GetTime();if(Flash_Mode==0)Time_Display();if(!Key_Left&&!flag_Key_Left){delay(2000);if(!Key_Left){flag_Key_Left=1;LCD1602_Print(0,0,"   Turn Left    ");LCD1602_Print(0,1," LED_Left Flash ");if(Flash_Mode==1){Flash_Mode=0;LED_Left=1;}else{LED_Right=1;Flash_Mode=1;}}}if(!Key_Right&&!flag_Key_Right){delay(2000);if(!Key_Right){flag_Key_Right=1;LCD1602_Print(0,0,"   Turn Right   ");LCD1602_Print(0,1," LED_Right Flash");if(Flash_Mode==2){Flash_Mode=0;LED_Right=1;}else{LED_Left=1;Flash_Mode=2;}}}if(!Key_Stop&&!flag_Key_Stop){unsigned char Temp_Flash_Mode=0;delay(2000);if(!Key_Stop){flag_Key_Stop=1;LCD1602_Print(0,0,"     Stop     ");LCD1602_Print(0,1," LED_Stop Light ");Temp_Flash_Mode=Flash_Mode;//模式备份Flash_Mode=4;LED_Left=0;LED_Right=0;}while(!Key_Stop);LED_Left=1;LED_Right=1;Flash_Mode=Temp_Flash_Mode;//模式还原switch(Flash_Mode)//文字还原{case 1:LCD1602_Print(0,0,"   Turn Left    ");LCD1602_Print(0,1," LED_Left Flash ");break;case 2:LCD1602_Print(0,0,"   Turn Right   ");LCD1602_Print(0,1," LED_Right Flash");break;case 3:LCD1602_Print(0,0,"    Emergency   ");LCD1602_Print(0,1,"  Double Flash  ");break;default:break;}}if(!Key_Emergency&&!flag_Key_Emergency){delay(2000);if(!Key_Emergency){flag_Key_Emergency=1;LCD1602_Print(0,0,"    Emergency   ");LCD1602_Print(0,1,"  Double Flash  ");if(Flash_Mode==3){Flash_Mode=0;LED_Left=1;LED_Right=1;}else{LED_Left=0;LED_Right=0;Flash_Mode=3;}}}if(Key_Left)flag_Key_Left=0;if(Key_Right)flag_Key_Right=0;if(Key_Stop)flag_Key_Stop=0;if(Key_Emergency)flag_Key_Emergency=0;}
}void Timer0() interrupt 1
{if(T0_Cnt==1000){T0_Cnt=0;switch(Flash_Mode){case 1:LED_Left=~LED_Left;break;case 2:LED_Right=~LED_Right;break;case 3:LED_Left=~LED_Left;LED_Right=~LED_Right;break;default:break;}}else{T0_Cnt++;}
}










基于AT89S52单片机的汽车LED尾灯控制器设计相关推荐

  1. 单片机c语言慧尾灯编码,基于AT89S52单片机的汽车LED尾灯控制器设计毕业论文+电路仿真+PCB+程序源码...

    摘要 本次论文主要利用AT89S52单片机模拟汽车尾灯进行智能控制的控制器,用8个LED灯模拟汽车尾灯,6个独立按键分别对应了右转.左转.危险警示.夜间模式切换.检查信号.刹车不同的状态,在实际设计模 ...

  2. 基于51单片机的智能加湿控制器设计

    引言 在当下经济不断发展,科学不断进步,人类不断进化的今时今日,人们对生活品质 的要求也随之发生变化.而空气质量对人们生活的影响越来越深,湿度作为影响空气质 量的重要指标之一,对人们的生活有重要的影响 ...

  3. 基于51单片机的太阳能风能路灯控制器设计(毕设课设资料)

    本系统采用STC89C52单片机+太阳能电池板电路+风机电路+充电保护电路+升压电路+锂电池电路+电源电路设计而成. 1.采用风机和太阳能电池板给锂电池充电,具有充电保护电路. 2.锂电池升压到5V给 ...

  4. 单片机彩灯c语言程序设计,(定稿)毕业论文基于AT89C51单片机的LED彩灯控制器设计(完整版)...

    <[毕业论文]基于AT89C51单片机的LED彩灯控制器设计.doc>由会员分享,可免费在线阅读全文,更多与<(定稿)毕业论文基于AT89C51单片机的LED彩灯控制器设计(完整版) ...

  5. 基于AT89S52单片机的多功能电子万年历

    1. 项目介绍(设计内容) 基于AT89S52单片机的多功能电子万年历的硬件结构和软硬件设计方法.本设计由数据显示模块.温度采集模块.时间处理模块和调整设置模块四个模块组成.系统以AT89S52单片机 ...

  6. 单片机课程设计——《基于AT89S52单片机和DS1302时钟芯片的电子时钟(可蓝牙校准)》...

    引言 本设计以AT89S52单片机为控制核心,时钟芯片DS1302提供时钟源,配合LCD1602液晶显示模块,组成基本硬件系统,同时利用HC-05嵌入式蓝牙串口通讯模块,可在手机端进行日期.时间的校准 ...

  7. 单片机课程设计——《基于AT89S52单片机和DS1302时钟芯片的电子时钟(可蓝牙校准)》... 1

    引言 本设计以AT89S52单片机为控制核心,时钟芯片DS1302提供时钟源,配合LCD1602液晶显示模块,组成基本硬件系统,同时利用HC-05嵌入式蓝牙串口通讯模块,可在手机端进行日期.时间的校准 ...

  8. 基于单片机的交通灯信号控制器设计

    基于单片机的交通灯信号控制器设计 一:功能要求 设计一个基于单片机的交通灯信号控制器.已知东.西.南.北四个方向各有红黄绿色三个灯,在东西方向有两个数码管,在南北方向也有两个数码管.要求交通灯按照表1 ...

  9. LED彩灯控制器设计 51单片机 流水灯 PROTEUS 仿真

    课程设计题四:LED彩灯控制器设计 要求: 1.至少10个发光管4种花样自动变换,循环往复. 2.彩灯花样变换的快慢节拍可以手动和自动方式控制,手动控制按钮按一次转换一次:自动控制方式每15秒变换一次 ...

  10. 单片机C语言节日彩灯,单片机c语言节日彩灯控制器设计.docx

    单片机c语言节日彩灯控制器设计 湖南涉外经济学院课程设计报告课程名称:单片机原理及应用报告题目:节日彩灯控制器的设计学生姓名:所在学院:信息科学与工程学院专业班级:电子信息工程1102班学生学号:指导 ...

最新文章

  1. physx选择显卡还是cpu_工控机如何选购cpu,工控机cpu选择盒装好还是散装好
  2. 检查压缩包是否损坏_修复损坏的gzip压缩文件之原理篇
  3. Maven Build Lifecycle
  4. Symantec Backup Exec 2012 Agent For Linux安装
  5. 动态规划法(九)想要更多例子?
  6. VTK:Math之1DTupleInterpolation
  7. Android的屏幕适配之图片加载适配
  8. UE3 性能、分析及优化
  9. 测试一下live writer
  10. AI 降噪、多平台支持,在线课程背后的黑科技大公开!
  11. jetpack-livedata2-SafeIterableMap
  12. 基于python+boostrap的学校图书馆管理系统
  13. Java实现json报文的比对(不考虑内部顺序 + 可设置跳过部分字段比对)
  14. 如何在Mac上使用“剪切和粘贴”
  15. GIS是个什么鬼,真的开眼了。感谢好学生的奉献。
  16. 实现在GEF中被选中图形上的右键菜单
  17. 阿里2017实习一面二面
  18. 需求预测模型分类与选择
  19. Word文档如何进行拆分成多个文档?
  20. 关于苹果支付ApplePay的一些个人总结

热门文章

  1. mysql sql 0填充_sql - MySQL - 如何用“0”填充前面的邮政编码?
  2. centos双网卡不能同时工作解决
  3. C语言求解百钱买百鸡问题
  4. c语言编写比赛评分程序,比赛评分系统c语言课程设计.doc
  5. 一阶低通滤波器方程_一阶有源低通滤波电路与最经典一阶低通滤波器电路图
  6. matlab的四个取整函数!
  7. 视频流(自适应算法)
  8. 场景法、流程分析法、错误推断法
  9. 为什么 Mac 适合编程?
  10. mtk android高级工具,Android6.0 MTK6737 DCT 工具介绍 · Younix’s Studio