单片机C语言LED灯点亮程序完全版.doc

上传人:sk****8 文档编号:2188578 上传时间:2019-05-01 格式:DOC 页数:7 大小:43.50KB
下载 相关 举报
单片机C语言LED灯点亮程序完全版.doc_第1页
第1页 / 共7页
单片机C语言LED灯点亮程序完全版.doc_第2页
第2页 / 共7页
单片机C语言LED灯点亮程序完全版.doc_第3页
第3页 / 共7页
单片机C语言LED灯点亮程序完全版.doc_第4页
第4页 / 共7页
单片机C语言LED灯点亮程序完全版.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、1 例子 1 第二个灯亮#includevoid main()P1=0xfd;#includeSbit D1=P10;Void main()D1=0注意:稍微改程序时需重新 hex 化例子 2 第一个灯亮#include /52 单片机头文件sbit led1=P10; /单片机管脚位声明void main() /主函数led1=0; /将单片机 P1.0 口清零while(1); /程序停止在这里,在后面会讲到为什么这样写。例子 3 第一个灯亮#include /52 单片机头文件void main() /主函数P1=0xfe; /将单片机 P1 口的 8 个口由高到低分别赋值为 11111

2、110while(1); /程序停止在这里,在后面会讲到为什么这样写。2 例子 1 第三个灯闪烁 fir 循环#includesbit D2=P12;unsigned int a;void main()D2=0;for(a=0;asbit D2=P12;unsigned int a;void main()a=5000;D2=0;while(a-);a=5000;D2=1;while(a-);2.#include /52 单片机头文件sbit led1=P10; /单片机管脚位声明void main() /主函数unsigned int i; /定义一个 int 型变量while(1)i=500

3、00; /变量赋初值为 50000led1=0; /点亮灯while(i-); /延时i=50000;led1=1; /熄灭灯while(i-); 3 例子 1 3 5 7 灯同时亮#include /52 单片机头文件sbit led1=P10; /单片机管脚位声明sbit led3=P12; /单片机管脚位声明sbit led5=P14; /单片机管脚位声明sbit led7=P16; /单片机管脚位声明void main() /主函数led1=0; /将单片机 P1.0 口清零led3=0; /将单片机 P1.2 口清零led5=0; /将单片机 P1.4 口清零led7=0; /将单片

4、机 P1.6 口清零while(1); /程序停止在这里,在后面会讲到为什么这样写。例子 2 1 3 5 7 同时亮#include /52 单片机头文件void main() /主函数P1=0xaa; /将单片机 P1 口的 8 个口由高到低分别赋值为 10101010while(1); /程序停止在这里,在后面会讲到为什么这样写。例子 3 流水灯一个一个接着亮不循环#include /52 单片机头文件void main() /主函数unsigned int i; /定义一个 int 型变量while(1)i=50000; /变量赋初值为 50000P1=0xfe; /点亮第一个灯whil

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

6、 /点亮第七个灯while(i-); /延时i=50000; /变量赋初值为 50000P1=0x7f; /点亮第八个灯while(i-); /延时 例子 4#include#include #define uint unsigned int #define uchar unsigned char uchar temp,num,num1;sbit beep=P23;void delay(uint);void main()temp=0xfe;while(1)for(num1=0;num10;x-)for(y=110;y0;y-);4 延时子程序void delay()uint x;for(x=1

7、00;x0;x-);For 的嵌套void delay()uint x,y; %局部变量for(x=100;x0;x-) %小括号后不加分号for(y=600;y0;y-); %小括号后的分号表示该语句是上一条语句的,分号将该句与下句 隔开(或者for(y=600;y0;y-);)#include例子 1#include#define uint unsigned int #define uchar unsigned char sbit D1=P10;void delay(); %注意分号不能少void main()while(1)D1=0;delay();D1=1;delay();void d

8、elay()uint x,y;for(x=100;x0;x-)for(y=600;y0;y-);带参数的比不带参数的要方便例子 2 无参和有参的对比#include#define uint unsigned int #define uchar unsigned char sbit D1=P10;/void delay();void delay(uint);%带一个参数的,参数类型必须要写,参数可不写。比如可以写成 uint z。也可以带多个参数void main()while(1)D1=0;delay(1200);%亮 2 秒D1=1;delay(1200);/*void delay()uin

9、t x,y;for(x=100;x0;x-)for(y=600;y0;y-);*/void delay(uint z)uint x;uchar y;for(x=z;x0;x-)for(y=20;y0;y-);例子 3#include#define uint unsigned int #define uchar unsigned char sbit D1=P10;void delay(uint);void main()while(1)D1=0;delay(1200);D1=1;delay(1200);void delay(uint z)uint x;uchar y;for(x=z;x0;x-)for(y=20;y0;y-);5 循环左移三位如 10100101(a5)-00101101(2d)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 课程笔记

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。