⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 paomadeng.c

📁 通过4位开关输入控制信号
💻 C
字号:
#include <c8051f040.h>

unsigned char LED;

void config(void){
	WDTCN=0XDE;
	WDTCN=0XAD;
	SFRPAGE=0X0F;
	XBR0=0X00;
	XBR1=0X00;
	XBR2=0X40;
	XBR3=0X00;
	P5MDOUT=0XFF;
}

void delay(unsigned int x){
	unsigned int i;
	for(i=0;i<x;i++)
		{;}
}

void MoveLeft(unsigned char *x){
	if((*x&0x80)==0)
		*x<<=1;
		else{
			*x<<=1;
			*x|=0x01;
		}
}

void MoveRight(unsigned char * x){
	if((*x&0x01)==0)
		*x>>=1;
		else{
			*x>>=1;
			*x|=0x80;
		}
}

main(){
	unsigned char Mode,Dir,Speed_2,Speed_3,Speed_4;
	config();
	LED=0x3;
	while(1){
		Mode=P7;
		Dir=Mode&0x01;
		Speed_2=Mode&0x02;
		Speed_3=Mode&0x04;
		Speed_4=Mode&0x08;
		if(Dir==0){
			if(Speed_2==0){
				P5=LED;
				delay(40000);
				MoveLeft(&LED);	
				P5=LED;
				continue;
			}
			if(Speed_3==0){
				P5=LED;
				delay(20000);
				MoveLeft(&LED);
				P5=LED;
				continue;
			}
			if(Speed_4==0){
				P5=LED;
				delay(10000);
				MoveLeft(&LED);
				P5=LED;
				continue;
			}
		}
		else{
			if(Speed_2==0){
				P5=LED;
				delay(40000);
				MoveRight(&LED);	
				P5=LED;
				continue;
			}
			if(Speed_3==0){
				P5=LED;
				delay(20000);
				MoveRight(&LED);
				P5=LED;
				continue;
			}
			if(Speed_4==0){
				P5=LED;
				delay(10000);
				MoveRight(&LED);
				P5=LED;
				continue;
			}	
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -