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

📄 步进电机.c

📁 步进电机的驱动程序
💻 C
字号:
#include <at89x51.h>
unsigned char temp;
unsigned char key;
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,
							0x66,0x6d,0x7d,0x07,
							0x7f,0x6f,0x77,0x7c,
							0x39,0x5e,0x79,0x71};

delay10ms()
{
   unsigned char i,j;
	for(i=20;i>0;i--)
	 for(j=250;j>0;j--);
}




void main(void)
{
	while(1)
	{	
		P2=0xff;
		P2_4=0;
		temp=P2;              
		temp=temp&0x0f;
		if(temp!=0x0f)
			{
				delay10ms();
				temp=P2;
				temp=temp&0x0f;
				if(temp!=0x0f)
				   {temp=P2;
				    temp=temp&0x0f;
				switch(temp)
					   {
				 		case 0x0e: key=4;
					 	break;
				 		case 0x0d: key=8;
			 			break;
				 		case 0x0b: key=11;
			 			break;
						case 0x07: key=15;
						break;
				 		}
			 temp=P2;
			 P1=table[key];
			 temp=temp&0x0f;
			 while(temp!=0x0f)
			       {temp=P2;
				    temp=temp&0x0f;
				    }
		}
}


		P2=0xff;
		P2_5=0;
		temp=P2;
		temp=temp&0x0f;
		if(temp!=0x0f)
		   {
			delay10ms();
			temp=P2;
			temp=temp&0x0f;
			if(temp!=0x0f)
			   {
			   temp=P2;
			   temp=temp&0x0f;
				switch(temp)
					   {
						case 0x0e: key=3;
						break;
						case 0x0d: key=7;
						break;
						case 0x0b: key=10;
						break;
						case 0x07: key=14;
						break;
				 		}
			temp=P2;
			P1=table[key];
			temp=temp&0x0f;
			while(temp!=0x0f)
			   	  {temp=P2;
				   temp=temp&0x0f;}
			 }
	}


		P2=0xff;
		P2_6=0;
		temp=P2;
		temp=temp&0x0f;
		 if(temp!=0x0f)
			{
			 delay10ms();
			 temp=P2;
			 temp=temp&0x0f;
			 if(temp!=0x0f)
			    {
				 temp=P2;
				 temp=temp&0x0f;
				 switch(temp)
				  		{
				   			case 0x0e: key=2;
							break;
				   			case 0x0d: key=6;
							break;
							case 0x0b: key=0;
							break;
							case 0x07: key=13;
							break;}
				temp=P2;
				P1=table[key];
				temp=temp&0x0f;
				while(temp!=0x0f)
				 	  {temp=P2;
					   temp=temp&0x0f;}
		}
	}


		P2=0xff;
		P2_7=0;      
		temp=P2;
		temp=temp&0x0f;
		if(temp!=0x0f)
		   {
		    delay10ms();
		    temp=P2;
			temp=temp&0x0f;
			if(temp!=0x0f)
			   {
			    temp=P2;
				temp=temp&0x0f;
				switch(temp)
					   {
					    case 0x0e: key=1;
						break;
						case 0x0d: key=5;
						break;
						case 0x0b: key=9;
						break;
						case 0x07: key=12;
						break;
						}
				temp=P2;
				P1=table[key];
				temp=temp&0x0f;
				while(temp!=0x0f)
					  {temp=P2;
					   temp=temp&0x0f;}
				}
		}
}

}

⌨️ 快捷键说明

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