单片机c语言编程控制流水灯

单片机c语言编程控制流水灯

ID:27775479

大小:275.03 KB

页数:20页

时间:2018-12-06

单片机c语言编程控制流水灯_第1页
单片机c语言编程控制流水灯_第2页
单片机c语言编程控制流水灯_第3页
单片机c语言编程控制流水灯_第4页
单片机c语言编程控制流水灯_第5页
资源描述:

《单片机c语言编程控制流水灯》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、说了这么多了,相信你也看了很多资料了,手头应该也有必备的工具了吧!(不要忘了上面讲过几个条件的哦)。那个单片机宂竟有什么功能和作用呢?先不要着急!接下来i±我们点亮一个LED(搞电子的应该知道LED是什么吧八_八)我们在单片机扱小系统上接个LED,看我们能否点亮它!对了,上面也有好几次提到过单片机最小系统了,所谓单片机最小系统就是在单片机上接上最少的外围电路元件让单片机工作。一般只须连接晶体、VCC、GND、RST即可,一般情况下,AT89C51的31脚须接高电平。#include//头文件定义。或用#include

2、t89x51.h>其具体的

3、x:别在于:后者定义了更多的地址空间。//在Keil安装文件夹中,找到相应的文件,比较一下便知!sbitP1_0=P1八0;//定义管脚voidmain(void){while(1){P1_0=0;//低电平有效,如果把LED反过来接那么就是高电平有效}}就那么简单,我们就把接在单片机P1_0上的LED点亮了,当然LED是低电平,才能点亮。因为我们把LED的正通过电阻接至VCCoPV0=0;类似与C语言中的赋值语句,即把0赋给单片机的P1_0引脚,让它输出相应的电平。那么这样就能达到了我们预先的要求了。whil

4、e(1)语句只是让单片机工作在死循环状态,即一直输出低电平。如果我们要试着点亮其他的LED,也类似上述语句。这里就不再讲了。点亮了几个LED后,是不是让我们联想到了繁华的街区上流动的彩灯。我们是不是也可以让几个LED依次按顺序亮呢?答案是肯定的!其实显示的原理很简单,就是让一个LED灭后,另一个立即亮,依次轮流下去。假设我们有8个LED分别接在P1口的8个引脚上。硬件连接,在P1_1-P1_7上再接7个LED即可。例程如下:#includesbitP1_0=P1八0;sbitP1_1=P1八1;sbitP1_2=P1A2

5、;sbitP1_3=P1A3;sbitP1_4=P1八4;sbitP1_5=P1八5;sbitP1_6=P1八6;sbitP1_7=P1A7;voidDelay(unsignedchara){unsignedchari;while(-a!=0)for(i=0;i<125;i++);//—个;表示空语句,CPU空转。}//i从0加到125,CPU大概就耗时1毫秒}voidmain(void){while(1){P1_0=0;Delay(250);P1_0=1;P1_1=0;Delay(250);P1_1=1;P1_2=0;Delay(250

6、);P1_2=1;P1_3=0;Delay(250);P1_3=1;P1_4=0;Delay(250);P1_4=1;P1_5=0;Delay(250);P1_5=1;P1_6=0;Delay(250);P1_6=1;P1_7=0;Delay(250);P1_7=1;}}sbit定义位变量,unsignedchara定义无符字符型变量a,以节省单片机内部资源,其有效值为0〜255。main函数调用DelayG函数。Delay函数使单片机空转,LED持续点亮后,再灭,下一个LED亮。while(1)产生循环。(三)上面我们讲了如何使LED产

7、生流动,但是你是否发现一个问题:写的太冗长了!能不能再简单点呢?可以!可以使用C51的内部函数INTRINS.H实现。函数unsignedchar_crol_(unsignedchara,unsignedcharn)可以使变量a循环左移n位,如果我们先给P1口赋00000001那么当n为1时,便会产生和上面一样的效果!#include#includevoidDelay(unsignedchara){unsignedchari;while(-a!=0){for(i=0;i<125;i++);}}voi

8、dmain(void){unsignedcharb,i;while(1){b=Oxfe;for(i=0;i<8;i++){P1=_crol_(b,1);b=P1;Delay(250);}}}INTRINS.H函数中的unsignedchar_cror_(unsignedchara,unsignedcharn)右移也可以实现同样的效果!这里就不再累述。流水灯的花样很多,我还写过那种拉幕式的流动等,程序很简单,有兴趣的朋友,可以自□试着写写!对了,讲了那么多,有些朋友一定还不知道编译软件怎么用?这里给大家介绍几个吧?WAVE(伟福)大家一定听

9、说过吧!还有一个就是KEIL2,我用的就是KEIL2,下面就来讲讲如何使用KEIL2这个编译软件!1.安装软件,这个应该不用再讲了吧!2.安装完后,启动KEIL软件左击Project->New

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

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

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