涉及到的知识点
1、二进制数,八进制数,十六进制数之间的转换
2、c语言中的移位操作,<<代表左移,>>代表又移;
3、c语言中的取反运算符~
流水灯左移代码如下
#include<reg52.h>
sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;
void main()
{
unsigned char cnt = 0;
unsigned int i=0;
ENLED = 0;
ADDR3 = 1;
ADDR2 = 1;
ADDR1 = 1;
ADDR0 = 0;
while(1)
{
P0 = ~(0x01 <<cnt);
for(i=0; i<30000; i++);
cnt++;
if(cnt>=8)
{
cnt = 0;
}
}
}