Skip to content

一、基础知识

01 LED亮灭控制

c
void main(){

	while(1){
		P2 = ((P2 & 0x1F) | 0x80); // 闲鱼清零前三位,在写前三位 138译码器 
		LED_Port = 0xFF; //LED关
		P2 &= 0x1F; 
		delay();

		P2 = ((P2 & 0x1F) | 0x80); // 闲鱼清零前三位,在写前三位 138译码器
		LED_Port = 0x00; //LED开
		P2 &= 0x1F; 
		delay();
	}
}

02 LED按位移

c
void main(){
    unsigned char i = 0; //1111 1110  
    cls_hardware();
	while(1){
        for(i = 0;i < 8;i ++){
            P2 = (P2 & 0x1F) | 0x80; //选中Y4 LED ENA
            P0 = 0xFE<<i;//1111 1110  按位左移,低位取0
            P2 &= 0x1F;//译码器复位
            delay();//延时200ms
        }
	}
}

03 独立按键控制LED位移

二、真题练习

三、相关资料

原理图

原理图

Updated at: