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

📄 ppm.c

📁 频率发生器
💻 C
字号:
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit p32=P3^2;
sbit p33=P3^3;
sbit ppmout=P1^1;
uint d;
void delay_50us(uint t)
{   uchar i;
 	for(;t>0;t--)
	for(i=19;i>0;i--);
}


void time0(void) interrupt 1 using 1
{	if(d==0)
    {	TH0=0Xff;
    	TL0=0Xf5;
	 }

	 if(d==1)
	 {
	   TH0=0Xff;
       TL0=0Xf0;
	 }

	 if(d==2)
	 {
	   TH0=0Xff;
       TL0=0Xe0;
	 }
	 if(d==3)
	 {
	   TH0=0Xff;
       TL0=0Xd0;
	 }
	ppmout=~ppmout; 
}

void  int0(void) interrupt 0
{
  
   EA=0;
   d++;
   TMOD=0x01;
   while(!p32); 
   EA=1; 
}


void int1(void) interrupt 2
{
   EA=0;
   TMOD=0x01;
   if(d>0)
   d--; 		  
   while(!p33); 
   EA=1;  
}

void main(void)
{   d=0;
    
	IT1=1;
	EX1=1;	 
	IT0=1;
	EX0=1;
   TMOD=0x01;
   TH0=0Xff;
   TL0=0Xf5;
   ET0=1;
   TR0=1;
   EA=1;

	while(1)
	{
	 delay_50us(4);
	}
}

⌨️ 快捷键说明

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