单片机C语言LED灯点亮程序完全版_第1页
单片机C语言LED灯点亮程序完全版_第2页
单片机C语言LED灯点亮程序完全版_第3页
单片机C语言LED灯点亮程序完全版_第4页
单片机C语言LED灯点亮程序完全版_第5页
免费预览已结束,剩余1页可下载查看

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、#includevoidmain()P1=0xfd;#includeSbitD仁 PMO;Voidmain()D1=O 注意:稍微改程序时需重新 hex 化 例子 2 第一个灯亮#i ncludevreg52.h/52 单片机头文件sbitled仁PMO;/单片机管脚位声明voidmain()/主函数led1=O;将单片机P 1.0 口清零while(1);/程序停止在这里,在后面会讲到为什么这样写。 例子 3 第一个灯亮#i ncludevreg52.h/52 单片机头文件voidmain()/主函数P1=Oxfe;while(1);/程序停止在这里,在后面会讲到为什么这样写。 2 例子 1

2、 第三个灯闪烁 fir 循环#includesbitD2=P1A2; unsignedinta;voidmain()D2=O;for(a=O;a=1OOOO;a+);D2=1;for(a=O;a=1OOOO;a+);例子 2 第三个闪烁 while 循环#includesbitD2=P1A2;unsignedinta; voidmain() a=5000;D2=0; while(a-); a=5000;D2=1; while(a-);2.#i ncludevreg52.h/52 单片机头文件 sbitled仁PMO;/单片机管脚位声明 voidmain()/主函数unsignedinti;/定

3、义一个 int 型变量 while(1)i=50000;/变量赋初值为50000 led1=0;/点亮灯while(i-);/延时i=50000; led1=1;/熄灭灯 while(i-);3 例子 1357 灯同时亮/主函数#i ncludevreg52.h/52 单片机头文件 sbitled1= PM。;/单片机管脚位声明 sbitled3=卩1八2;/单片机管脚位声明 sbitled5=PI%;/单片机管脚位声明 sbitled7=PIW;/单片机管脚位声明 voidmain()/将单片机/将单片机/将单片机 /将单片机P1.0 口清零P1.2 口清零P1.4 口清零P1.6 口清零在

4、后面会讲到为什么这样写。led1=0;led3=0;led5=0;led7=0;while(1);/程序停止在这里,例子 21357 同时亮#i ncludevreg52.h/52 单片机头文件 voidmain()/主函数P1=0xaa;while(1);/程序停止在这里,在后面会讲到为什么这样写。 例子 3 流水灯一个一个接着亮不循环#i ncludevreg52.h/52 单片机头文件 voidmain()/主函数unsignedinti;/定义一个 int 型变量while(1)i=50000;P1=0xfe; while(i-); i=50000;P1=0xfd; while(i-)

5、; i=50000;P1=0xfb; while(i-); i=50000;P1=0xf7; while(i-); i=50000;P1=0xef; while(i-); i=50000;P1=0xdf; while(i-); i=50000;P1=0xbf; while(i-); i=50000;P1=0x7f; while(i-);/变量赋初值为 50000/点亮第一个灯 /延时/变量赋初值为 50000/点亮第二个灯 /延时/变量赋初值为 50000/点亮第三个灯 /延时/变量赋初值为 50000/点亮第四个灯 /延时/变量赋初值为 50000/点亮第五个灯 /延时/变量赋初值为 500

6、00/点亮第六个灯 /延时/变量赋初值为 50000/点亮第七个灯 /延时/变量赋初值为 50000/点亮第八个灯/延时例子 4#include #include #defineuintunsignedint #defineucharunsignedchar uchartemp,num,num1;sbitbee p=P 2八3;voiddelay(uint); voidmain()temp=0xfe;while(1) for(num1=0;num13;num1+) for(num=0;num8;num+) P1=temp;beep=0;delay(100); temp=_crol_(temp,

7、1);P1=0xff;beep=1;delay(100); for(num1=0;num13;num1+) for(num=0;num0;x-) for(y=110;y0;y-);4 延时子程序voiddelay()uintx;for(x=100;x0;x-) ;For 的嵌套voiddelay()uintx,y;%局部变量for(x=100;x0;x-)%小括号后不加分号for(y=600;y0;y-);%小括号后的分号表示该语句是上一条语句的,分号将该句与下句隔开(或者for(y=600;y0;y-);)#includevreg52.h 例子 1#include#defineuintuns

8、ignedint #defineucharunsignedchar sbitD1= PM。; voiddelay();%注意分号不能少voidmain()while(1)D1=0;delay();D1=1;delay();voiddelay()uintx,y;for(x=100;x0;x-) for(y=600;y0;y-); 带参数的比不带参数的要方便 例子 2 无参和有参的对比 #include #defineuintunsignedint #defineucharunsignedcharsbitD仁 PMO;/voiddelay();voiddelay(ui nt);%带一个参数的,参数类型必须要写,参数可不写。比如可以写 成uintz。也可以带多个参数voidmain()while(1)D1=O;delay(1200);%亮 2 秒D1=1;delay(12OO);/*voiddelay()uintx,y;for(x=1OO;xO;x-) for(y=6OO;yO;y-);*/voiddelay(uintz)uintx;uchary;for(x=z;xO;x-) for(y=2O;yO;y-);例子 3#include #defineuintunsignedint #defineucharunsignedchar sbi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论