大家帮我看看at89c52串口使用定时器T2定时器0工作在定时方式定时器1工作在计数方式初始化串口不接收发送
voidinit(void){//at89c52串口使用定时器T2-------------------SCON=0xd0;//串口方式3T2MOD=0x01;//自动重...
void init(void)
{ //at89c52串口使用定时器T2-------------------
SCON = 0xd0; //串口方式3
T2MOD = 0x01; //自动重载
T2CON = 0x31; //T2用做发送接收时钟
TH2 = 0xFF; //9600波特率,11.0592Mhz晶振
TL2 = 0xDC;
RCAP2H = 0xFF;
RCAP2L = 0xDC;
TR2 = 1; //启动T2
ES=0;
//--------------------定时器t0,t1设置
TMOD = 0x51; //定时器0工作在定时方式,定时器1工作在计数方式
TL0=0x00; //50ms,11.0592m
TH0=0x4c;
TH1 = 0x00; //计数初值
TL1 = 0x00;
ET0 = 1; //使能TIMER0中断
EA = 1; //允许中断
} 展开
{ //at89c52串口使用定时器T2-------------------
SCON = 0xd0; //串口方式3
T2MOD = 0x01; //自动重载
T2CON = 0x31; //T2用做发送接收时钟
TH2 = 0xFF; //9600波特率,11.0592Mhz晶振
TL2 = 0xDC;
RCAP2H = 0xFF;
RCAP2L = 0xDC;
TR2 = 1; //启动T2
ES=0;
//--------------------定时器t0,t1设置
TMOD = 0x51; //定时器0工作在定时方式,定时器1工作在计数方式
TL0=0x00; //50ms,11.0592m
TH0=0x4c;
TH1 = 0x00; //计数初值
TL1 = 0x00;
ET0 = 1; //使能TIMER0中断
EA = 1; //允许中断
} 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询