上期回顾:
上篇文章我写了单片机零基础入门(1):点亮1个LED灯,这篇文章写点亮奇数位灯或者偶数位灯:
单片机零基础入门(2):点亮奇数位/偶数位LED灯
一、单片机LED原理图:
二、源代码:
#include <REGX52.H>
/*点亮奇数或偶数灯*/
int main()
{
//1010 1010--->0xAA 点亮偶数灯
//0101 0101--->0x55 点亮奇数灯
P2 = 0XAA; //点亮偶数灯
//P2 = 0X55; //点亮奇数灯
//P2 = 0XFF; //LED全部熄灭
return 0;
}
三、 分析:
因为开发板上有8个LED灯,假如用二进制8个0表示:0000 0000,你会发现,这8个0不就分别是8个灯吗?
然后,你就会有解决思路。单片机,要么0亮1灭,要么就0灭1亮。
1、假如0亮1灭,要点亮奇数灯,那么,就是给LED赋值:1010 1010,点亮偶数灯就是:0101 0101,但是需要转化为16进制赋值,因为二进制我们是无法赋值的
2、二进制转化为十六进制:
1010 1010—>0xAA 点亮偶数灯
0101 0101—>0x55 点亮奇数灯
3、查看原理图,对应的是P2
要想点亮偶数位灯,直接赋值:P2 = 0XAA; //点亮偶数灯。
下一篇文章:单片机零基础入门(3):实现LED灯闪烁
-----------------人生在勤,不索何获!-------------