单片机LED灯设计说明书.docx
- 文档编号:29740148
- 上传时间:2023-07-26
- 格式:DOCX
- 页数:14
- 大小:99.64KB
单片机LED灯设计说明书.docx
《单片机LED灯设计说明书.docx》由会员分享,可在线阅读,更多相关《单片机LED灯设计说明书.docx(14页珍藏版)》请在冰豆网上搜索。
单片机LED灯设计说明书
《单片机原理及应用》
课程设计说明书
设计题目:
基于单片机的LED灯控制器的设计
学院:
xxx
专业:
车辆工程
设计者:
xxx
学号:
xxxxxxx
指导老师:
xxx
设计时间:
2015年11月9日~2015年11月28日
《单片机系统课程设计》任务书
一、目的意义
《单片机原理及应用》是高校工程专业的一门专业基础课,该门课程具有很强的实践性。
通过课程的学习,使学习掌握基本概念、基本理论和基础技能,为今后从事相应的生产设计和科研工作打下一定的基础。
因此,除课程的理论教学和试验教学外,课程设计也是一个必要和重要的实践教学环节。
通过单片机系统课程设计,进一步培养学生理论联系实际的能力,学会正确地分析工程实际问题,善于查阅参考文献,准确地选择相应的数据、参数,具备全面地解决实际问题的素质,同时课程设计也为今后毕业设计打下基础。
二、设计时间、地点、班级
时间:
第12、13周(二周)
地点:
三教433、426
班级:
13车辆3班30人
三、设计内容
(9)基于单片机的LED灯控制器的设计
1、功能描述
以单片机为核心,设计一个LED灯控制器:
(P1口可选,也可用其他I/O口,16灯)
P1.2——开始,按此键则灯开始流动(由上而下);
P1.3——停止,按此键则停止流动,所有灯为暗;
P1.4——闪烁,按此键则全部灯闪烁;
P1.5——下,按此键则灯由下向上流动。
本题目本质上是由按键控制功能的流水灯,LED工作的方式通过键盘的扫描实现。
其中的LED可采取共阳极接法,通过依次向连接LED的I/O口送出低电平,可实现题目要求的功能。
《单片机系统课程设计》任务书…………………………………………………………1
摘要…………………………………………………………………………………………………3
1总体设计方案……………………………………………………………………………………3
1.1 设计原理及相关说明………………………………………………………………………3
1.2 总体设计框图………………………………………………………………………………3
2各芯片设计及对其的调用………………………………………………………………………3
2.1AT90C51单片机主控模块………………………………………………………………3
2.2LED灯模块…………………………………………………………………………………5
2.3键盘接口…………………………………………………………………………………6
3系统软件程序………………………………………………………………………………6
3.1LED灯控制器程序……………………………………………………………………………64调试……………………………………………………………………………………………9
4.1调试步骤…………………………………………………………………………………9
4.2性能分析…………………………………………………………………………………9
4.2.1按下P1.2开始,灯开始流动(从上到下)………………………………………9
4.2.2按下P1.3开始,灯全灭………………………………………10
4.2.1按下P1.4开始,灯全亮,开始闪烁………………………………………11
4.2.1按下P1.4开始,灯开始流动(从下到上)………………………………………12
结论………………………………………………………………………………………………13
附录1……………………………………………………………………………………………14
附录2……………………………………………………………………………………………15
附录3……………………………………………………………………………………………18
附录4……………………………………………………………………………………………19
附录5……………………………………………………………………………………………22
基于单片机的LED灯控制器的设计
作者:
邢浩男指导老师:
吴敏
(安徽农业大学工学院车辆工程)
摘要:
该设计是基于AT89C51单片机系统,采用共阳极接法,通过一依次向连接LED的I/O口输出低电平,能实现流水灯开始或停止的功能,具有调压,稳压,检测故障等特点。
关键词:
单片机LED灯控制器
1.总体设计方案
1.1设计原理及相关说明
1.2总体设计框图
LED灯控制器设计框图如图1所示:
图1LED灯控制器设计框图
2.各芯片的设计及其调用
2.1AT90C51单片机主控模块
单片机(SCM)是单片微型计算机(SingleChipMicrocomputer)的简称。
它是把中央处理器CPU、随机存储器RAM、只读存储器ROM、I/O接口电路、定时/计数器以及输入输出适配器都集成在一块芯片上,构成一个完整的微型计算机。
随着SCM在技术上、体系上不断扩展其控制功能,国际上已经采用MCU(MicroControllerUnit)代替单片机的名词。
它的最大优点是体积小,可放在仪表内部。
但存储量小,输入输出适配器简单,功能较低。
目前,单片机在民用和工业测控领域得到最广泛的应用,早已深深地融入人们的生活中。
近年来,AT89C51在我国非常流行,它最大的特点是内部有可以多次重复编程的闪烁ROM,并且闪烁ROM可以直接用编程器来擦写(电擦写),使用起来比较方便。
一个单片机应用系统的硬件电路设计包含有两部分内容:
一是系统扩展,即单片机内部的功能单元,如ROM﹑RAM﹑I/O口﹑定时/记数器﹑中断系统等能量不能满足应用系统的要求时,必须在片外进行扩展,选择适当的芯片,设计相应的电路。
二是系统配置,既要按照系统功能要求配置外围设备,如键盘显示器﹑打印机﹑A/D﹑D/A转换器等,又要设计合适的接口电路。
具体连接图如图1.
图1主控模块
2.2LED灯模块
XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可以配置为片内振荡器。
石晶振荡和陶瓷振荡均可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
具体LED灯接图如图2。
2.2.1AT89C51最小系统
AT89C51最小系统中XTAL1、XTAL2端接上晶振及两个谐振电容,在RESET端接上相应的电阻、电容,如需要按键复位,加上按键即可组成一个最小系统,按要求通电后,系统就可以工作了。
图2LED灯模块
2.3键盘接口
键盘接口电路如图3,本次设计中,按键有4个,每个按键各占用一根I/O线,各按键相互独立,彼此的工作状态互不影响,STC单片机自带上拉电阻因此无需外接上拉电阻,用查询法完成按键功能。
图3键盘接口电路
3.系统软件设计
3.1LED灯控制器程序
在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。
数据处理包括:
数据的采集、数字滤波、标度变换等。
过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便控制生产。
为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。
把一个程序分成具有多个明确任务的程序模块,分别编制、调试后再把它们连接在一起形成一个完整的程序,这样的程序设计方法称为模块化程序设计。
所谓“模块”,实质上就是能完成一定功能,并相对独立的程序段,这种程序设计方法称为模块程序设计法。
模块程序设计法的主要优点是:
(1)单个模块比起一个完整的程序易编写、调试及修改。
(2)程序的易读性好。
(3)程序的修改可局部化。
(4)模块可以共存,一个模块可以被多个任务在不同条件下调用。
(5)模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。
本系统软件采用模块化结构,由主程序,正向流动、反向流动和延时等子程序构成具体见图4.
4调试
4.1调试步骤
调试分为硬件调试和软件调试。
硬件调试主要是检查硬件电路是否有短路、断路和虚焊等,首先接上电源,电源的指示灯亮了之后,检测一下单片机的电源脚有没有电源输入,如果有这说明焊接无误,然后可以用万用表检查各个元器件的管脚之间的焊接,检查过程中需要细心和耐心。
硬件调试无误后,进行软件调试。
软件调试可以针对子程序调试,测试其是否正常工作,例如流水灯,LED灯闪烁等,最后把所有的程序作为一个整体来测试。
4.2性能分析
将程序烧入单片机后,在proteus软件中进行仿真。
在这次LED灯控制器的设计中,LED灯能够按照按键的控制进行从上到下,停止,闪烁,从下到上,在程序。
4.2.1按下P1.2开始灯开始流动(从上到下)
4.2.2按下P1.3灯全灭
4.2.2按下P1.4灯全亮,开始闪烁
4.2.2按下P1.5灯开始流动(从下到上)
结论
在做这次课程设计的整个过程中,我明白了很多东西。
也许我们理论知识学的还不错,但真正的动起手来,却常常力不从心,这就是我们常犯的眼高手低的毛病,但还是需要良好的理论知识做基础。
从刚开始的搜集资料,我就有点慌了,总觉得自己准备的不够好,无法顺利完成任务,但在老师和同学的帮助下,慢慢的步入轨道。
虽然毕业设计将要接近尾声,我也尽力的想要去做好毕业之前的最后一次实践课,但由于某些原因,有些元器件没能通过软件正常工作,这次设计的电子万年历没能达到我们预想的效果,只能显示部分功能。
这也证明了我以后要学习的东西还有很多,要继续努力,不断地汲取新的知识并运用到实际中,在实践中锻炼自己,全方位的提高自己。
附录1系统电路原理图
附录2系统程序清单
#include
#defineuintunsignedint
#defineucharunsignedchar
sbitKey1=P1^2;//按键1~4
sbitKey2=P1^3;
sbitKey3=P1^4;
sbitKey4=P1^5;
ucharflag;//标号
ucharnum[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//开第1~8个灯
/*
**************************
*延时z毫秒ms
**************************
*/
voidDelay_ms(uintz)
{
uintx,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
/*
**************************
*亮第n个灯
**************************
*/
voidLED(ucharn)
{
ucharx,y;
n--;//n减1
x=n/8;//第几个锁存器
y=n%8;//第那个灯
switch(x)//打开第一个锁存器关锁存器
{//开锁存器关所有灯关锁存器亮第num【y】个灯
case0:
P2=0xff;P0=0xff;P2=0x00;P2=0x01;P0=num[y];P2=0x00;break;//第0-个锁存器
case1:
P2=0xff;P0=0xff;P2=0x00;P2=0x02;P0=num[y];P2=0x00;P0=0xff;break;//第1个锁存器
}
}
/*
**************************
*按键检测
**************************
*/
voidKey_Detection(void)
{
if(Key3==0|Key4==0|Key1==0|Key2==0)//按键1按下或者按键2或者按键3或按键4
{
Delay_ms(5);//消抖
if(Key1==0)//按键1按下
{
while(!
Key1);//松手检测
flag=1;//标号至1
}
if(Key2==0)//按键2按下
{
while(!
Key2);//松手检测
flag=2;//标号至2
}
if(Key3==0)//按键3按下
{
while(!
Key3);//松手检测
flag=3;//标号至3
}
if(Key4==0)//按键按下
{
while(!
Key4);//松手检测
flag=4;//标号至4
}
}
}
/*
**************************
*主函数
**************************
*/
voidmain(void)
{
uchari;
while
(1)
{
Key_Detection();//按键检测
if(flag==1)//第一个键按下正循环亮
{
LED(i);//亮第i个灯
i++;//i加1
if(i==17)i=0;//如果i等于17清零
Delay_ms(200);//延时200毫秒
}
if(flag==2)//第二个键按下停止
{
P2=0xff;//开锁存器
P0=0xff;//把灯全灭
P2=0x00;//关锁存器
}
if(flag==3)//第三个键按下闪烁
{
P2=0xff;//开锁存器
P0=0x00;//所有灯全亮
P2=0x00;//关锁存器
Delay_ms(100);//延时100毫秒
P2=0xff;//开锁存器
P0=0xff;//所有灯全灭
P2=0x00;//关锁存器
Delay_ms(100);//延时100毫秒
}
if(flag==4)//第四个键按下反循环亮
{
LED(i);//亮第i个灯
i--;//i减1
if(i==0)i=17;//如果i=0把i=17
Delay_ms(200);//延时200毫秒
}
}
}
附录3仿真效果图
附录4实物演示效果图
附录5元件清单
器件名称
型号
个数
单片机
AS89C51
1个
按键
5个
电阻
5.1K
1个
电阻
1K
1个
电解电容
10uf
1个
晶振
12MHZ
1个
发光二级管
16个
IP座
40管脚
1个
万能板
1个
+5V电源
1个
导线
若干
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 LED 设计 说明书