51单片机学习笔记(郭天祥版)——

免费样片申请(暂时无用,不说了,很简单)


作业讲解

1-5点亮灯过简单,不说了

6:尝试让第一个发光管闪烁

闪烁,就是亮,灭,再亮,再灭这样一个循环的过程,就是写程序控制某一个IO口先输出低电平,再输出高电平,再输出低电平,如此循环,没变化一个状态要持续一个时间(即为延时)。简单的延时就用一个while或者for循环就可以。

 1 #include<reg52.h>
 2 sbit p1_1=P1^0;
 3 unsigned int a;
 4 void main()
 5 {
 6     a=50000;
 7     p1_1=0;
 8     while(a--);
 9     a=50000;
10     p1_1=1;
11     while(a--);
12 }

定义一个unsigned int(无符号整型)类型的变量a,其范围为0-65535,若超出这个值,就会取余,例如70000,那么就会取70000-65535后的值。

这里选中这两个,这样如果一直插着单片机,然后更改代码并编译的话,会自动下载进单片机。

你可能会按照上面的方法,但这样是不对的,不标准。因为正常执行c语言代码时,从进入main函数开始,执行完main内部的代码就结束了,但这里却又重新再执行了,因为单片机会一直重复执行main函数,但有时会出错。

正确的写法

猜你喜欢

转载自www.cnblogs.com/Lieyuanbingshi/p/10573963.html