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

📄 sifu_temp2

📁 伺服马达控制的C51程序。 文件: sifu*.c sifu*.Uv2 sifu*.hex 等相关文件。
💻
字号:
/****************************************************************/
/*Module: New technic
/*Creator: lianghaodang
/*Date: 11/19/2007   
/*Description: creat a pulse
/****************************************************************/
#include<AT892051.h>
#include<stdio.h>
#include<math.h>
#include<intrins.h>

sbit  Sig_x = P3^4;
sbit  Sig_y = P1^2;
sbit  KEY = P3^7;
sbit  PULS_x = P3^5;
sbit  PULS_y = P1^3;
unsigned int Counter_x,Counter_y,x_size,y_size;
void Delayms(unsigned char ms);
//----------------------------------------
void time0(void) interrupt 1
{	//PULS_x = ~PULS_x;
	//Counter_x++;
	PULS_y = ~PULS_y;
	Counter_y++;
	TH0 = 0xFF;
	TL0 = 0xB0;
}

void time1(void) interrupt 3
{
	PULS_x = ~PULS_x;
	Counter_x++;
	//PULS_y = ~PULS_y;
	//Counter_y++;
	TH1 = 0xFF;
	TL1 = 0xB0;
}

//----------------------------------------
void main(void)
{  
 //   bit Flag;
	P1 = 0XFF;
    P3 = 0XFF;
    PULS_x = 0;
	PULS_y = 0;
    TMOD = 0x11;
	IT0 = 1; 
	PCON=0X00;
	ET0 = 1;
	ET1 = 1;
	
	PT1 = 1;	//Time1 First the time0						
    TH0 = 0xFF;
	TL0 = 0xB0; 
    TH1 = 0xFF;
	TL1 = 0xB0;

    TR0 = 0;								
	TR1 = 0;
	EA = 1;

 while(1)
  {
/***********mark0 go to mark1 ******************/
	Sig_x = 0;
	Delayms(50);
	do   //x action 1
		{
		TR1 = 1;
		}while(Counter_x<3000);
    TR1 = 0;
	Counter_x = 0;
	PULS_x = 0;
/**********************************************/








/***********mark1 go to mark0 ******************/
	Sig_x = 1;
	Delayms(50);
	do   //x action 1
		{
		TR1 = 1;
		}while(Counter_x<3000);
    TR1 = 0;
	Counter_x = 0;
	PULS_x = 0;
/**********************************************/

  }
}
void Delayms(unsigned char ms)	
// relay ms
{	unsigned char i;
	while(ms--)
	{
		for(i = 0; i < 120; i++);
	}
}




	
			
	





	

⌨️ 快捷键说明

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