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

📄 ken.c

📁 自己编的电机速度数字控制程序
💻 C
字号:
#include<stdio.h>
#include<reg52.h>
int tdelay;
char key;
void display(void);
void delay(int t)
{	int i;
	while(t--)
	{	for(i=0;i<125;i++)
	   {}
	}
}
void keyscan(void)
{	char scancode,tempcode;
	display();
	P2=0X00;
	P1=0XFF;
	delay(50);
	P1=0X0F;
	if((P1&0X0F)!=0X0F)
	{	delay(50);/*xiaodou	 yanshi*/
		scancode=0X0E;
		P1=0X0F;
		switch(P1)
		{
		case 0x0e:tempcode=0x00;break;
		case 0x0d:tempcode=0x01;break;
		case 0x0b:tempcode=0x02;break;
		case 0x07:tempcode=0x03;break;
		default:				break;
		}
		scancode=0X0d;
		P1=0X0F;
		switch(P1)
		{
		case 0x0e:tempcode=0x04;break;
		case 0x0d:tempcode=0x05;break;
		case 0x0b:tempcode=0x06;break;
		case 0x07:tempcode=0x07;break;
		default:				break;
		}
		scancode=0X0b;
		P1=0X0F;
		switch(P1)
		{
		case 0x0e:tempcode=0x08;break;
		case 0x0d:tempcode=0x09;break;
		case 0x0b:tempcode=0x0a;break;
		case 0x07:tempcode=0x0b;break;
		default:				break;
		}
		scancode=0X07;
		P1=0X0F;
		switch(P1)
		{
		case 0x0e:tempcode=0x0c;break;
		case 0x0d:tempcode=0x0d;break;
		case 0x0b:tempcode=0x0e;break;
		case 0x07:tempcode=0x0f;break;
		default:				break;
		}
    	key=tempcode;
		display();
		
	}
}
void display(void)
{	switch(key)
	{case 0x00: P3=0xc0;break;
	 case 0x01:	P3=0xf9;break;
	 case 0x02:	P3=0xa4;break;
	 case 0x03: P3=0xb0;break;
	 case 0x04:	P3=0x99;break;
	 case 0x05: P3=0x92;break;
	 case 0x06:	P3=0x82;break;
	 case 0x07: P3=0xf8;break;
	 case 0x08:	P3=0x80;break;
	 case 0x09:	P3=0x98;break;
	 case 0x0a:	P3=0x08;break;
	 case 0x0b:	P3=0x03;break;
	 case 0x0c:	P3=0xA7;break;
	 case 0x0d:	P3=0xA1;break;
	 case 0x0e:	P3=0x06;break;
	 case 0x0f:	P3=0x8E;break;
	 default:   P3=0xFF;break;	
	}	 
}
void mov(void)
{	switch(key)
	{
	 case 0x00: tdelay=170;break;
	 case 0x01:	tdelay=160;break;
	 case 0x02:	tdelay=150;break;
	 case 0x03: tdelay=140;break;
	 case 0x04:	tdelay=130;break;
	 case 0x05: tdelay=120;break;
	 case 0x06:	tdelay=110;break;
	 case 0x07: tdelay=100;break;
	 case 0x08:	tdelay=90;break;
	 case 0x09:	tdelay=80;break;
	 case 0x0a:	tdelay=70;break;
	 case 0x0b: tdelay=60;break;
	 case 0x0c:	tdelay=50;break;
	 case 0x0d:	tdelay=40;break;
	 case 0x0e:	tdelay=30;break;
	 case 0x0f:	tdelay=20;break;
	 default:   tdelay=10;break;
	 }	
	 P0=0X01;
	 delay(tdelay);
	 delay(tdelay);
	 P0=0x00;
	 delay(tdelay);
	 delay(tdelay);
}
main()
{	keyscan();
	display();
	mov();
}

⌨️ 快捷键说明

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