利用8051单片机定时器TO,系统晶振采用12MHZ,在P1.0口输出占空比80%的周期波形。

如题所述

第1个回答  2019-05-22
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit P10=P1^0;
void timer0() interrupt 1
{
uint a;
a++;
if(a<=8)
{
P10=0;
}
else if(a<=10)
{
P10=1;
}
else
{
a=0;
TR0=0;
}
}
void timer0_init()//1ms
{
EA=1;
ET0=1;
TMOD=0x01;
TH0=(65535-1000)/256;
TL0=(65535-1000)%256;
}
//******The main function******//
void main()
{
P10=0;
timer0_init();
while(1)
{
if(TR0==0) TR0=1;
}
}
希望能帮到你追问

这个52h是打错了吗
不应该是51h吗

追答

51里面的东西52都有,52是兼容51的

本回答被提问者采纳