单片机原理及应用 教学课件 作者 匡忠辉 第3章--广告灯控制---简单程序设计.ppt

单片机原理及应用 教学课件 作者 匡忠辉 第3章--广告灯控制---简单程序设计.ppt

ID:50066797

大小:1.15 MB

页数:13页

时间:2020-03-08

单片机原理及应用 教学课件 作者 匡忠辉 第3章--广告灯控制---简单程序设计.ppt_第1页
单片机原理及应用 教学课件 作者 匡忠辉 第3章--广告灯控制---简单程序设计.ppt_第2页
单片机原理及应用 教学课件 作者 匡忠辉 第3章--广告灯控制---简单程序设计.ppt_第3页
单片机原理及应用 教学课件 作者 匡忠辉 第3章--广告灯控制---简单程序设计.ppt_第4页
单片机原理及应用 教学课件 作者 匡忠辉 第3章--广告灯控制---简单程序设计.ppt_第5页
资源描述:

《单片机原理及应用 教学课件 作者 匡忠辉 第3章--广告灯控制---简单程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三章、广告灯控制---简单程序设计3.0你知道吗3.1功能要求3.2任务分析3.3发光二极管LED3.4发光二极管LED与单片机接口电路设计3.5广告灯程序设计走在城市街道,我们经常看到各种琳琅满目、色彩斑澜的广告灯,你知道这些广告灯效果是如何产生的吗?在这一章中,我们将通过控制8个发光二极管实现多种广告灯效果来说明其产生方法你知道吗?回目录3.1功能要求一.基本要求控制一个发光二极管LED定时闪烁。二.发挥部分控制8个发光二极管LED产生“跑马灯”效果。3.2任务分析要完成此任务,主要需解决如下三方面问题:1)发光二极管LED工作原理;2)8个发光二极管LE

2、D与单片机接口电路设计;3)发光二极管LED显示程序设计回目录3.3发光二极管LED发光二极管的电参数与普通二极管大致相同,也是一个PN结,同样具有正向导通,反向截止的特性。发光二极管的伏安特性曲线如下图。与普通二极管相比,发光二极管主要有如下两点不同1.发光二极管正向导通电压要比普通二极管高2.发光二极管反向击穿电压比普通二极管低发光二极管实物图3.3.1发光二极管LED工作特性3.3.2发光二极管LED驱动电路由发光二极管LED的工作特性可知,LED工作电流较大,而MCS-51单片机I/O口引脚负载能力有限,不能直接驱动LED,需要增加LED驱动电路。低电平

3、有效高电平有效高电平有效低电平有效(a)三极管驱动电路(b)集成驱动器电路回目录3.4发光二极管LED与单片机接口电路设计1)74LS245工作特性/E(19脚)DIR(1脚)总线驱动方向01A→B00B→A1X不工作其中19脚/E为芯片工作使能端,只有该引脚电平为有效电平(低电平)时,74LS245才会工作;1脚DIR为总线驱动方向选择端,2)发光二极管LED与单片机接口电路图回目录3.5广告灯程序设计3.5.1单个LED闪烁假设让LED灯D1进行单灯闪烁,由图3-5可知,当P1.0输出高电平时,D1熄灭;当P1.0输出低电平时,D1点亮。欲使D1闪烁,则P1

4、.0输出必须为高低电平交替出现的矩形波(或方波),假设D1闪烁的周期为0.2s(每个周期内100ms亮,100ms灭),则程序流程图如图3-6所示LED_BLINK:SETBP1.0;P1.0=1,D1灭LCALLDELAY_100MS;延时100msCLRP1.0;P1.0=0,D1亮LCALLDELAY_100MS;延时100msLJMPLED_BLINK;跳到LED_BLINK程序清单如下:DELAY_100MS:MOVR3,#100;2usLOOP1:MOVR4,#250;2usLOOP2:DJNZR4,LOOP2;4us如果R4-1≠0,则跳到LOOP

5、2DJNZR3,LOOP1;4us如果R3-1≠0,则跳到LOOP1RET;4us延时子程序如下:3.5.2跑马灯程序设计实现跑马灯效果,即要求循环移位点亮LED,每次只点亮一个LED,LED点亮的顺序为:D1→D2→D3→D4→D5→D6→D7→D8→D1…,D8被点亮之后又移位点亮D1,这样循环往复,实现跑马灯效果。显示结果D8D7D6D5D4D3D2D1P1输出值二进制码P1输出值十六进制码○○○○○○○●11111110FEH○○○○○○●○11111101FDH○○○○○●○○11111011FBH○○○○●○○○11110111F7H○○○●○○○○

6、11101111EFH○○●○○○○○11011111DFH○●○○○○○○10111111BFH●○○○○○○○011111117FH方法一.数据传送法程序清单如下:LED_LOOP:MOVP1,#0FEH;点亮第1个LEDLCALLDELAY_100MS;延时100msMOVP1,#0FDH;点亮第2个LEDLCALLDELAY_100MS;延时100msMOVP1,#0FBH;点亮第3个LEDLCALLDELAY_100MS;延时100msMOVP1,#0F7H;点亮第4个LEDLCALLDELAY_100MS;延时100msMOVP1,#0EFH;点亮第

7、5个LEDLCALLDELAY_100MS;延时100msMOVP1,#0DFH;点亮第6个LEDLCALLDELAY_100MS;延时100msMOVP1,#0BFH;点亮第7个LEDLCALLDELAY_100MS;延时100msMOVP1,#07FH;点亮第8个LEDLCALLDELAY_100MS;延时100msLJMPLED_LOOP;跳回去循环。MOVA,#0FEH;先将点亮第1个LED的初值送给ALOOP:MOVP1,A;点亮一位LEDLCALLDELAY_100MS;延时100msRLA;左移一位,为下次显示作准备LJMPLOOP;跳回去循环程序

8、清单如下:方法二.移位指

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

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

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