本帖最后由 Doci 于 2013-3-21 16:50 编辑
at89c52 定时器T2产生波特率串口老是无反应,谁做过,帮忙看看或者给个例程看看,谢谢
void UART_init(void)
{
SCON=0x50; //SM0 SM1 SM2 REN TB8 RB8 TI RI
RCAP2H=0xff;
RCAP2L=0xfd;
TH2=RCAP2H;
TL2=RCAP2L;
T2CON=0x34; //TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 CP/RL2
TR2=1; /* 启动定时器2*/
T2MOD=0;
ES=1; /*开串口中断*//* 波特率不倍增*/
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
TH1 = 0xFD; // 波特率9600
TL1 = 0xFD;
SCON = 0x50; // 设定串行口工作方式
PCON &= 0xef; // 波特率不倍增
TR1 = 1; // 启动定时器1
您好,我用的是定时器2做波特率发生器,一直有问题
您好,没什么现象,串口发送接收都无效,串口不工作。所以不知道问题出在哪
一周热门 更多>