用8051单片机编程由P1.0和P1.1引脚分别输出周期为1ms和500us的方波

#include<reg51.h>

unsigned char k;

sbit Gate1=P1^0;
sbit Gate2=P1^1;
main()
{
  n=0;
  TH1=0xff;
  TL1=0x06; //定时器250us产生一次中断
  TMOD = 0x10; //定时器1工作于模式1
  TR1=1; //使能定时器
  ET0=1; //开中断 
  EA=1; //开全局中断
  while(1)  {;}

}

void Timer(void) interrupt 1
{  

  TH1=0xff; 

  TL1=0x05; //定时器250us产生一次中断 

  Gate2=!Gate2; //产生500us方波  
  k++;   
  if(k==2) 
  { 

         k=0; 

         Gate1=!Gate1; //产生1ms方波

  }
}
发布了10 篇原创文章 · 获赞 27 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/szw_yx/article/details/68584694