单片机课程设计--基于单片机的控制循环灯设计

单片机课程设计--基于单片机的控制循环灯设计

ID:10680480

大小:336.50 KB

页数:8页

时间:2018-07-07

单片机课程设计--基于单片机的控制循环灯设计_第1页
单片机课程设计--基于单片机的控制循环灯设计_第2页
单片机课程设计--基于单片机的控制循环灯设计_第3页
单片机课程设计--基于单片机的控制循环灯设计_第4页
单片机课程设计--基于单片机的控制循环灯设计_第5页
资源描述:

《单片机课程设计--基于单片机的控制循环灯设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、单片机原理及系统课程设计专业:电气工程及其自动化班级:姓名:学号:指导教师:评语:平时(40)修改(30)报告(30)总成绩兰州交通大学自动化与电气工程学院2012年7月1日单片机原理及系统课程设计报告1引言基于单片机的控制循环灯设计。2设计方案及原理2.1题目要求在单片机的P1口接8个发光二极管,通过中断方式控制实现每个发光二极管指示灯闪烁10次,并依次循环。正常状态下,这8个灯(发光二极管)先按一定流速从左向右流动,再按一定流速从右往左流动(假设这8个灯依次从左向右接在P1.0-P1.7上)。2.2设计原理单片机循环灯是现今人们最普及的

2、方法,本次设计用外接石英晶体振荡器作为8051的时钟电路,将P0.0-P0.7作为发光二极管的片选口,同时利用8051单片机的基本原理,来控制八个LED指示灯的依次往复循环闪烁10次。此次课设中选择了共阳极的二极管接法,所以通过给P0口输送低电平0,就可以使二极管发光,输送高电平1可使二极管熄灭。设计框图如图1所示。图1设计框图3硬件设计此次芯片选用的是8051,8051芯片的外部时钟是用外接石英晶体振荡器来实现的,时钟电路用于产生单片机工作所需的时钟信号。在MCS-51系列单片机芯片外部,X1和X2-7-单片机原理及系统课程设计报告之间跨

3、接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,这就是单片机的时钟电路。发光二极管有共阳和共阴接法,此次设计选择了共阳接法,所以可通过给P0口输送低电平就可驱动发光二极管发光,输送高电平就可使发光二极管熄灭。硬件原理图如图2所示。图2硬件原理图4软件设计循环灯设计大概的设计思路可概括为以下8个步骤:(1)给累加器A送0FEH,送闪烁个数8给R2,送闪烁次数10给寄存器R0。(2)通过累加器A给P1口送二进制数,驱动八个发光二极管,低电平发光,高电平熄灭。(3)调用DELAY延时程序。(4)送0FFH给P1口,使发光二极管熄灭,再调用D

4、ELAY延时程序使发光二极管延时1S。(5)重复(2)、(3)、(4)至发光二极管闪烁十次后结束循环。(6)执行RL(循环左移)指令,指向下一个二极管,重复第5步。(7)当8个发光二极管从左至右依次闪烁完毕后,给累加器A送07FH,执行第5步,使二极管从最右边开始闪烁。同时执行RR(循环右移)指令,当每个发光二极管闪烁完10后指向下一个二极管。(8)当从右至左循环结束后,又回到第(1)步,循环往复。-7-单片机原理及系统课程设计报告程序流程图如图3所示。图3程序流程图-7-单片机原理及系统课程设计报告5总结按照单片机系统扩展与系统配置状况,

5、单片机应用系统可分为最小系统、最小功耗系统及典型系统。8051单片机是Intel公司生产的,除无片内ROM外,其余特性与MCS-51单片机基本一样。8051单片机都采用40引脚的直插封装(DIP方式),在单片机的40条引脚中有2条专用于主电源的引脚,2条外接晶体的引脚,4条控制或与其它电源复用的引脚,32条输入/输出(I/O)引脚。8051单片机的引脚除了电源、复位、时钟接入,用户I/O口外,其余管脚是为实现系统扩展而设置的。因此,本控制循环灯实际上就是一个带有8个发光二极管的单片机最小应用系统,即为由单片机8051、发光二极管和必要的软件

6、组成的单个单片机系统。此系统利用单片机的P1.0-P1.7作为8段显示LED的段控码输入,当位控线输入高电平时对应的LED点亮。再利用单片机内部的定时器对每一个输出口的电平做时间控制,实现每一个接口出现循环的高低电平,从而实现对每一个接口所接灯的循环控制,使8盏灯各依次亮灭10次。-7-单片机原理及系统课程设计报告参考文献[1]李刚民.陈盅平.单片机原理及使用技术.北京高等教育出版社.2005[2]李华.王思明.单片机应用及原理[M].兰州大学出版社.2001[3]李全利.单片机原理及应用技术.高等教育出版社.2001[4]丁爱民.单片机应

7、用技术.北京理工大学出版社.2002-7-单片机原理及系统课程设计报告附录附录一:调试结果附录二:循环灯控制设计程序ORG0000H;程序存放的起始地址AJMPMAIN;上电,转向主程序ORG0003H;外部中断0入口地址AJMPLOOP;转向中断服务程序ORG0030H;主程序MAIN:SETBEX0;允许外部中断0中断SETBIT0;选择边沿触发方式SETBEA;CPU开中断MOVR0,#10;将闪烁次数10送入R0MOVR2,#8;将灯的数量8送入R2MOVA,#0FEHLOOP:MOVP1,A;使最左边的一个二极管发光LCALLDE

8、LAY;调用延时1s的子程序MOVP1,#0FFH;使最左边的一个二极管熄灭LCALLDELAY;调用延时1s的子程序DJNZR0,LOOP;循环闪烁十次-7-单片机原理及系统课

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。