单片机小结之各种方案点亮流水灯样本.docx

单片机小结之各种方案点亮流水灯样本.docx

ID:61848712

大小:59.50 KB

页数:7页

时间:2021-03-24

单片机小结之各种方案点亮流水灯样本.docx_第1页
单片机小结之各种方案点亮流水灯样本.docx_第2页
单片机小结之各种方案点亮流水灯样本.docx_第3页
单片机小结之各种方案点亮流水灯样本.docx_第4页
单片机小结之各种方案点亮流水灯样本.docx_第5页
资源描述:

《单片机小结之各种方案点亮流水灯样本.docx》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。单片机小结(1)——之流水灯的各种方法点亮我们将8个流水灯均放置在P0口,且假设已经定义好各端口,流水灯的阳极接到P0口上,利用各种方法控制流水灯。1.1用移位和查表控制流水灯(1):用移位控制流水灯voidmain(void){uchari;while(1){P0=0xfe;//先点亮P0^0;Delay(10000);//延时10毫秒for(i=0;i<7;i++){P0=(P0<<1)&0x01Delay(10000);//延时100毫秒}}}或者改

2、为如下也能够实现左移,先给temp=0xfe;for(i=1;i<8;i++){a=temp<>(8-i);P0=a

3、b;Delay();}在仿真中或者开发板上能够看到led灯有规律的一个一个的点亮如此循环。如果在P0=0xfe下加延时,那么第一次点亮时能够看到小灯的亮下再灭,否则第一次资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。看不到小灯亮。以上即一直往左移移位,我们能够修改程序让其左右循环来点亮流水灯,程序如下while(1){for(i=0;i<7;i++){LED=_crol_(L

4、ED,1);//P2口向左移,注意左移和右移都住需要移动7次Delay(50000);}for(i=0;i<7;i++){LED=_cror_(LED,1);//左移,头文件必须加#include方可使用,Delay(50000);}}(2)用查表控制流水灯在上个程序中我们利用左移的方法点亮小灯,即移位的思想。同时我们还能够利用查表的方法点亮led灯。程序如下:ucharcodeLed_Data[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//此处一定要记住加分

5、号,否者编译的时候会报错。在将上个程序中左移的语句改为如下即可实现查表,而且将P0=0xfe;去掉for(i=0;i<8;i++)资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。{P0=Led_Data[i];Delay(10000);//延时10毫秒}(3)利用硬件的方法控制流水灯除了以上移位我们还能够利用硬件来实现点亮小灯,例如利用74HC573,74HC5951.1:74HC573为8位锁存器,1脚OE为使能端,低电平有效。D1-D7为输入端,Q1-Q7为输出端。11脚为锁存端,高电平有效当OE为低电平,而

6、且LE为高电平时,芯片才正常工作,输入等于输出。当OE为低电平,LE也为低电平时,芯片锁存。资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。当OE为高电平时,输出为高阻态。下面我们还是利用该芯片编写下控制流水灯的程序,而且是利用移位的思想。使用之前先说明下74HC573的工作方法:1.先将OE置为低电平,而且LE也置为低电平,也就是开锁。2.将需要输出的数据发送到D端。3.再将LE置为低电平,即锁存数据,不在随输入/***********************源程序代码如下*******************

7、******/#include#defineucharunsignedchar#defineuintunsignedint#defineLEDP3sbitLE=P2^2;//定义锁存端voidDelay(uintms);voidmain(void){uchari,Temp;while(1){Temp=0xfe;//先点亮P3^0口的LED灯for(i=0;i<7;i++){LE=1;//开锁,注意OE端默认已经接到低电平LED=Temp;//送数据到P3口,点亮小灯资料内容仅供您学习参考,如有不当或者侵权,请

8、联系改正或者删除。LE=0;//输出锁存Delay(5000);//延时Temp=(Temp<<=1)&0x01;//左移一位}}}voidDelay(unsignedintms){unsignedchari;for(;ms>0;ms--)for(i=127;i>0;i--);}我们还能够利用其去控制数码管,原理和控制流水灯差不多。此处利用74HC595控制流水灯将在数码管部分提到如何利用,以及原理。1.2利用中断和定时器以及串口控制流水灯1.2.1利用外部中断0控制流水灯说明:利用按键来控制流水灯,采用移位的方法实现控制,利

9、用外部中断0。(1)(2)中断的概念:由于内部或者外部的原因,使CPU暂停当前的工作,转到需处理的中断的服务程序入口(中断响应),去执行中断程序,执行完毕后接着刚才未执行完的程序继续接着执行。中断的控制和实现:主要是经过四个与中端有关的特殊功能寄存器配置完成。定时器/计数器

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

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

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