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

📄 main.c

📁 这是基于ATMEL的芯片89C51的编程
💻 C
字号:
#include<AT89x51.h>


int i,j,rate,direction1,direction2;
unsigned int s1,s2;
//unsigned int v1[20]={2800,2820,2840,2860,2880,2900,2920,2940,2980,3000,3020,3040,3060,3080,3100,3120,3140,3160,3180,3200};
//unsigned int v3[20]={2000,2100,2200,2300,2400,2500,2600,2700,2800,2900,2900,3000,3100,3200,3300,3400,3500,3600,3700,3800};
//unsigned int v2[20]={2900,2910,2920,2930,2940,2950,2960,2970,2980,2990,3000,3010,3020,3030,3040,3050,3060,3070,3080,3090};
unsigned int v1[20]={900,1000,1125,1250,1375,1500,1625,1750,1875,2000,1875,1750,1625,1500,1375,1250,1125,1000,950,900};
unsigned int v2[20]={1450,1455,1460,1465,1470,1475,1480,1485,1490,1495,1500,1505,1510,1515,1520,3025,1530,1535,1540,1545};
//unsigned int v1[20]={90,100,112,125,137,150,162,175,187,200,187,175,162,150,137,125,112,100,95,90};


void timer0(void) interrupt 1 using 2{
	
//		if(j>=20) {i=0;}
    	if(s1>2500) {
								TH0=255-(s1/256);
								TL0=255-(s1%256);
								P1_7=0;
								i++;
								s1=v1[i];
								}//if
				else if(500<s1<2500){
										TH0=255-(s1/256);
										TL0=255-(s1%256);
										P1_7=1;
										s1=20000-s1;
										}//else if
		 else ;
	}


void initial(void){
	i=j=0;
	rate=1;
	s1=v1[i];
	s2=v2[j];
	direction1=0;
	direction2=0;
	P3_7=1;
	P3_4=1;
	
}
/****************************************************************************
角度的大小按公式计算:90*(angle-3000)/(1000-3000)  +:顺时针; -:逆时针;
*****************************************************************************/	
void main(){
	initial();
	TMOD=0x11;
	TH0=255;
	TL0=240;
	TH1=255;
	TL1=230;
	ET0=PT0=1;
	ET1=PT1=1;
	EA=1;
	TR0=1;
	TR1=1;
    while(1){
	if(P3_6==1){
                if(P3_5==1) rate=1;//11
				else if(P3_5==0) rate=2;//10
				}	
	else if(P3_6==0){
			    if(P3_5==1) rate=3;//01
			    else if(P3_5==0) rate=4;//00
				}
		}
		
}

			

⌨️ 快捷键说明

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