课程设计报告汽车尾灯.docx
《课程设计报告汽车尾灯.docx》由会员分享,可在线阅读,更多相关《课程设计报告汽车尾灯.docx(14页珍藏版)》请在冰豆网上搜索。
课程设计报告汽车尾灯
课程设计任务书
学生姓名:
吴舟专业班级:
电子科学与技术0801班
指导教师:
吴友宇工作单位:
信息工程学院
;艮示範动电路
.i
—
开天惶見电踣
」——译珂电聘
秒豁中-
——三进制
电屠
「
电閘
图1汽车尾灯控制电路图
题目:
汽车尾灯控制器的电路设计
初始条件:
本设计既可以使用中、小规模集成电路芯片7400、7404、
74138、7476、7486和其它器件实现对汽车尾灯显示的控制功能。
本设计也可以使用单片机系统构建简易频率计。
工作电源
Vcc为12V。
电路组成框图如图1所示:
要求完成的主要任务:
(包括课程设计工作量及技术要求,以及说明书撰写等具体要求)
1、课程设计工作量:
1周。
2、技术要求:
设汽车尾部左右两侧各有3个指示灯(用发光管模拟),要求是:
1汽车正常行驶时,尾灯全部熄灭。
2当汽车右转弯时,右侧3个指示灯按右循顺序点亮。
3当汽车左转弯时,左侧3个指示灯按左循顺序点亮。
4临时刹车时,所有指示灯同时闪烁。
5选择电路方案,完成对确定方案电路的设计。
计算电路元件参数与元件选择、并画出总体电路原理图,阐述基本原理。
制作实际运行装置。
3、查阅至少5篇参考文献。
按《武汉理工大学课程设计工作规范》要求撰写设计报告书。
全文用A4纸打印,图纸应符合绘图规范。
时间安排:
1、2010年_6_月28日集中,作课设具体实施计划与课程设计报告格式的要求说明。
2、2010年_6_月2_日,查阅相关资料,学习电路的工作原理。
2、2010年_6_月/9_日至2010年_6月倍_日,方案选择和电路设计。
2、2010年上月」0_日至2010年二乙月4日,电路调试和设计说明书撰写。
3、2010年二乙月一2_日上交课程设计成果及报告,同时进行答辩。
课设答疑地点:
鉴主13楼电子科学与技术实验室。
指导教师签名:
年月日
系主任(或责任教师)签名:
年月日
摘要
在汽车驾驶中,为保证安全形式需要各种警示灯辅助驾驶,女口:
汽车在启动、转弯和刹车时,尾灯的亮灭时有一定规律的。
本文通过观察设计了汽车尾灯控制器,当汽车刹车时,尾灯不停地闪烁;当汽车左转弯时,左侧的尾灯按左方向循序亮;当汽车右转弯时,右侧的尾灯按有方向循序亮。
为了实现该功能本文采用AT89S52单片机和相关的外围电路的方案,论文通过对AT89S52进行编程来控制整个模型系统,再利用小按键作为触发来控制汽车的启动、转弯以及刹车,同
时用发光二极管LED作为尾灯做出对应的显示,从而将实际中的汽车尾灯变化转化成了简单的模型。
其中主要利用AT89S52的4个八位并行10口,通过以接收外界的触发信号来控制其输出电平的高低,使得发光二极管LED的亮或灭。
通过相关测试可得本文设计的汽车尾灯控制器满足设计要求,从而完成本次课程
设计任务。
关键词:
汽车尾灯;AT89S52;触发信号;LED显示
1绪论1
2.设计方案选择与论证2
3.硬件设计3
4.软件设计6
5.设计电路功能测试8
6.总结与体会9
参考文献10
附录111
附录211
附录312
1.绪论
随着社会的不断发展,信息化和自动化已经不再是个陌生的话题。
为追随社会发展的步伐,作为当代大学生,学习一些简单的系统的模拟是非常重要。
因此,在各个高校的电子学科培养中,根据已知的要求设计出相应的电路的能力的锻炼不可或缺。
通过一个学期的对数字电子技术的学习,对简单的数字电路的构建有了一些了解,比如说数字电路中是二进制作为传递媒介的,因此对生活中的模拟量应做相应的转化才能与数字电路相连,从而诞生了译码器和编码器。
不过这些都是最基本的知识,社会的发展步伐越来越快,这些简单的数字元件是不能满足发展的需求的,为满足社会的发展需求,集成电路应运而生,科技的不断进步,由晶体管时代到集成电路时代,从小规模集成电路到超大规模,原来很复杂的问题的现在越来越简单,可以说电子信息的发展极大的推动了社会的进步。
电子信息学科偏向实践,作为电子类的学生,为了赶上时代的步伐,当然要加强对这方面的学习,不仅如此,学校方面也给出很大的支持,如在模拟电路和数字电路学习中安排了课设,通过给出几个设计任务,让学生在有限的时间中根据自己独立的设计理念设计出符合的要求的电路,一般课程设计的课题来源于实际生活中的真实问题,这样的锻炼可以让学生将在书本上学习到的知识运用实践,而且还能以此为基础进行拓展,对创新思维的培养也是很有帮助的。
因此课程设计的开展对学习有很大的益处,就如本次课设选择的课题是汽
车尾灯控制显示电路的设计”,在设计的过程中,学会了怎样将实际问题转化成可以研究的模型,这样的转化思维的培养对于以后的对实际问题的研究有一定的帮助。
在大学中需要学习的应是怎样将理论运用于实践,而不是那书本上死板的
知识。
因此在大学中更加值得注重的是实践与理论的统一。
2.设计方案选择与论证
根据设计任务书的要求可知,需要设计一款电路来模拟汽车尾灯在汽车启动、转弯、刹车时的显示,通过对数字电子技术的学习可知,若要完成设计要求的功能,则需要利用数字电路来完成,但是究竟是利用硬件型还是软件型电路来设计呢?
所谓硬件型即为采用组合逻辑电路的时序逻辑电路来进行设计,其侧重于硬
件的搭建,而软件型即为利用可编程逻辑器件对其进行编程来完成对应需要完成的功能,其侧重于软件的编译。
再对设计任务进行分析,不难发现若利用硬件型则设计出的电路相当复杂,而且成本很高,然而利用单片机来完成,则花费的成本很低,而且设计出的电路很简便。
将两者进行对比后,显而易见,采用单片机来设计符合要求的电路时必然的,又因为设计的要求不是很高,所以不需要利用高级的单片机来进行电路的设计,故选择AT89S52来作为设计电路的主体。
综合上述,本次课设任务采用单片机AT89S52进行设计较好。
3.硬件设计
3.1硬件设计流程图
根据课程设任务经过分析可以将整个汽车控制器电路分成三个模块,即为信
号触发电路、信号控制处理电路和信号显示电路。
本设计的原理框图如下图1所示
图1汽车尾灯控制器原理框图
3.2硬件设计电路图
3.2.2信号控制处理电路设计
图3信号控制处理原理电路图
这次课程的主体即为信号的控制处理电路,其实连接信号触发电路与显示电
路的桥梁,它必须能将小按键产生的信号通过转换变成显示信号再LED上显示
出来。
根据AT89S52的引脚功能可知,可以通过改变其中的几个引脚的电平来使得其他引脚的电平能够按照一定规律变化。
通过进一步分析,可知,利用以AT89S52为基础的单片机最小系统来完成题中的功能,故信号控制处理电路即采用AT89S52构成的最小系统来搭建,电路如上图3所示:
整个电路包含三个部分,即为复位电路,时钟电路,和单片机本体。
其中复位电路是有小按键和相关电阻、电容构成,在复位时,单片机的RST端接高电平,
为有效电平即AT89S52复位;时钟电路由一个12M晶振和两个33P的电容构成电容三点式振荡电路为AT89S52提供1us的指令周期。
3.2.3信号显示电路设计
根据设计的要求可以用发光
二极管来模拟汽车尾灯,同时根
据电路设计的简便原则设计出
信号显示电路如右图所示,其中
D1,D2,D3,D4,D5,D6,
分别接单片机的P2A0,P2A1,
图4信号显示原理电路图
P2A2,卩2八5,卩2八6,卩2八7口,D1,D2,D3为左侧三灯,D4,D5,D6为右侧三灯,由右图可知,当单片机的10口输出低电平时,LED亮,即而可以通过控制10口的输出电平来控制显示电路。
如当控制端的“STOP”键按下,此时对应的控
制端的10口为低电平,即而P2A0,P2A1,卩2八2,P2A5,P2A6,卩2八7先为低电平再为高电平,周而复始,故D1,D2,D3,D4,D5,D6就不断闪烁。
综合上述,通过三个模块的设计电路之间的耦合,与相关C语言程序配套即可完成设计要求的功能,从而汽车尾灯显示控制器电路就设计完成了。
4.软件设计
4.1软件设计流程图
根据设计任务书要求,本项目的软件工作应完成键盘读取、左转灯控制、右
转灯控制及左右灯同时闪烁功能。
软件流程框图如下图5所示。
〔1
左侧LED循序亮
LJ
r
所有LED同时闪
右侧LED按右循
右转
左转
仃
图5汽车尾灯显示控制器电路软件流程图
4.2电路的C语言源程序设计
根据汽车尾灯显示控制器电路软件流程图,可以得到要实现的最终功能是三
种不同的显示,从而可以简单地将这三种显示用三个不同的显示函数来表示,即
为stop_display(),right_display(),和left_display()。
然而根据一般的显示函数的编法来说,要保证显示的持久性一般用死循环语句来实现,从一方面也就说明用
一般的编法即会存在无法从一种显示向另一种显示自由的跳转。
不过从显示函数
中可以发现,显示需要延时才能使显示稳定。
就此而言,不难想到利用在延时函
数中添加条件即可使得一种显示向另一种显示自由跳转。
具体的延时函数如下所
示:
voiddelay(uinta)
{uinti,j;
for(i=0;i{for(j=0;j<200;j++);
if(right==O)
{while(right==0);
right_display();
}
if(left==0)
{while(left==0);
left_display();
}
if(stop==0)
{while(stop==0);
stop_display();
}
if(move==0)
{move_display();
delay(150);
}
}
}
显示跳转问题解决后,其他均可利用一般单片机编程来实现,如键盘识别等。
程序编写完成后,将其输入到Keil中进行编译,形成HEX文件以烧录到
单片机中。
在输入上述程序之后,初始进行编译时,在窗口中显示有错误,然后将其显示的错误进行一一排除,最终在窗口中显示“NoerrorNowarning”寸说明
程序在语法上已经没有错误。
但是是否能完成相应的功能还需得把得到的HEX
文件通过ISP接口写入AT89S52中,之后对电路进行测试,观察是否能达到设计要求的功能,若不能需要对、程序进行修改至能达到设计需要的功能为止。
5.设计电路功能测试
根据设计的汽车尾灯显示控制器电路原理图在万用板上焊接好电路,并对其
进行硬件测试,并根据测试结果判断电路是否有短接,漏接的情况,若有则进行
修正。
在测试确定电路焊接无误后,通过电路的ISP程序下载口使电路与PC机
进行通信,并将编写的C语言源程序烧录到电路的处理芯片AT89S52当中,在程序烧写完毕后,对整个电路进行功能测试,即按相应的按键观察是否有的相应的显示与之对应。
在测试过程可以观察到,电路上电后,直接按下“right”“left”“stop”键
可以观察到无显示;当按下“move”键后,再按下“left”键可以观察左侧显示灯左循环亮,按下“stop”键可以观察到所有显示灯闪烁,按下“right”键可以观察到右侧显示灯右循环亮,再按下“move”键可以观察到所有显示灯熄灭。
以上现象说明设计的电路与C语言程序符合设计要求。
6•总结与体会
我认为这次课设是一次检验我在半个学期对数字电子技术这门课程的学习究竟达到了什么水平,是否能够将在数字电子技术中学习到的知识运用于实践,是否能够将现实中的实际问题转化成一个能研究的模型来进行分析。
记得在大一时就已经开始学单片机了,一开始觉得很枯燥乏味,觉得跟实际问题没什么大的联系,很难培养出对其的兴趣,上了大二之后,随着对电子类的专业学科的学习明确了单片机的强大功能可以运用于许多方面来解决显示中的实际问题,如电梯的简化模型,简易温度计,简易频率计等等,随着不断地接触单片机,越来越觉得自己喜欢上了它,喜欢上编程,每段程序的完美结束都能给我带来莫名的喜悦。
尽管有些时候遇到一些复杂的问题,很棘手,但是经过细细
的分析到最后还是能解决的。
正如这次课程设计一样,一开始我觉得我选的课题很简单,但是在实际操作中却遇到很多问题,在编写程序的过程中有些看似很容易解决的问题却很难解决,如在编写左转、右转、杀y车转化程序时,如何从显示的死循环中跳出让我苦思冥想了很长时间,最终通过在延时函数中添加条件解决这个问题。
总而言之,这次课程设计让我实践了一次,其中得到的东西很多,同时也让我明白了看上去很容易解决的问题在自己实际操作却不是很容易,因此,应该认
真地对待每个细节,不要忽视其在整个系统中的作用。
正如:
细节决定成败!
参考文献
[1]伍时和,吴友宇•数字电子技术基础.北京:
清华大学出版社,2009年4月
[2]潘晓宁.单片机程序设计实践教程•北京:
清华大学出版,2009年8月
[3]戴佳.51单片机C语言应用程序设计实例精讲.北京:
电子工业出版社,2008年12月
[4]赵俊生.单片机技术项目化原理与实训.北京:
电子工业出版社,2009年9月
⑸杨居义•单片机原理与工程应用•北京:
清华大学出版社,2010年1月
[6]周杰单片机C语言及汇编语言实用程序设计北京:
中国电力出版社,2009年4月
[7]彭伟.单片机C语言程序设计实训100例:
基于8051+Proteus仿真.北京:
电子
工业出版社,2009年6月
附录1汽车尾灯控制器原理电路图
附录2设计电路元件清单
元件
数量
AT89S52
1个
LED(白发红咼亮5mm)
6个
小按键
5个
12M晶振
1个
33p瓷片电容
2个
4.7uF电解电容
1个
1K电阻(0.25W)
2个
ISP下载接口
1个
钮扣电池(3V带座)
1个
自锁开关
1个
单排针
1排
附录3设计电路的C语言源程序
#inelude
#defineuintunsignedint
#defineucharunsignedchar
sbitright=P1A0;
sbitleft=P1A2;
sbitstop=P1Al;
sbitmove=P1A3;
voidright_display();
voidleft_display();
voidstop_display();
voidmove_display();
voiddelay(uinta)
{uinti,j;
for(i=0;i{for(j=0;j<200;j++);
if(right==0)
{while(right==0);
right_display();
}
if(left==0)
{while(left==0);
left_display();
}
if(stop==0)
{while(stop==0);
stop_display();
}
if(move==0)
{move_display();
delay(150);
}
}
}
voidright_display()
{while
(1)
{uinti;
uchartemp;
P2=0xDF;delay(150);
for(i=0;i<2;i++)
{P2=(P2<<1)|0x01;delay(150);
}
P2=0xDF;delay(150);
for(i=0;i<2;i++)
{temp=P2;
P2=(P2<<1)&temp|0x01;delay(150);
}
}
}
voidleft_display()
{while
(1)
{uchartemp;
uinti;
P2=0xFB;delay(150);for(i=0;i<2;i++){P2=(P2»1)|0x80;delay(150);
}
P2=0xFB;delay(150);
for(i=0;i<2;i++)
{temp=P2;
P2=(P2>>1)&temp|0x80;delay(150);
}
}
}
voidstop_display()
{while
(1)
{P2=0x00;delay(150);
P2=0xFF;delay(150);
}
}
voidmove_display()
{while
(1)
{P2=0xFF;
delay(150);
}
}
voidmain()
{P1=0xFF;
if(move==0)
{while
(1)
{P2=0xFF;
if(right==0)right_display();
if(left==0)left_display();
if(stop==0)stop_display();
}
}
}
本科生课程设计成绩评定表
姓名
吴舟性别男
专业、班级
电子科学与技术0801
课程设计题目汽车尾灯控制器的电路设计
课程设计答辩或质疑记录:
成绩评定依据:
最终评定成绩(以优、良、中、及格、不及格评定)
指导教师签字:
年月日