51单片机(一) keil4工程与小灯实验
直接开始
-
新建一个工程
在这里插入图片描述
-
添加文件
-
另存为
-
添加文件到组
-
写下一个超循环系统代码
-
调整编译项编译
可以在工程目录找到编译好的led_fst.hex
自行烧写到各自的开发板。
会看到什么都没有。 -
现在定义一个GPIO端口与小灯的连接,再点亮小灯
#include <REGX52.H>
sbit led1 = P0^0;
int main(void)
{
while(1)
{
led1 = 0;
}
return 0;
}
请将小灯与P0.0端口接好,我这边是小灯是外接了电源,MCU端口作阴极,所以输出0时小灯连通点亮。
51单片机GPIO通常是三态,即高电平态,低电平态与高阻抗态,无输出时就是高阻抗态,在输出高电平与无输出时小灯无法点亮。
MCU通常用来作控制而不是作驱动,所以这里GPIO作阴极足够简单合理。
sbit led1= P0^0;
这一句只能是全局变量,不能是局部变量。
- 现在做一个流水灯实验
#include <REGX52.H>
void delay(int);
int main(void)
{
int i;
while(1)
{
for(i=0;i<8;++i)
{
P0 = ~(0x1 << i);
delay(0xffff);
}
}
return 0;
}
void delay(int duration)
{
while(duration--);
}
自行接线。