stc独立波特率发生器不工作!求助!!!

2020-01-20 19:00发布

本帖最后由 牛东 于 2015-5-21 15:04 编辑

正在做一个无刷驱动程序,想到独立波特率发生器作串口通信,程序怎么都不成功,借鉴网上的程序也不行!!(注:用T1串口就可以)

#include<reg51.h>                //包含文件预处理命令

//-------------------------串口独立波特率发生器的特殊寄存器地址定义--------------------------------
sfr  AUXR=0x8E;          
sfr  BRT=0x9C;   
//================================================
//使用串口独立波特率发生器
void uart_init()
{
        //(注:用T1串口就可以)
        /*SCON=0x50;
        TMOD=(TMOD&0x0f)|0x20;
        TH1=TL1=0xFD; //11.0592M  9600
        TR1=1;*/

        //用此段就不行!!
        SCON=0x50;
        AUXR=0x11;
        BRT=0XFD; //11.0592M  9600
}
//=============================================                                         
void send_byte(u8 dat)
{
        SBUF=dat;
        while(!TI);  //等待TI变为1
        TI=0;   //TI清0
}
//==========================主函数===============================
void main()
{
            uart_init();
        while(1)               
        {                                                                             
                send_byte(get_ad_data(ch));
        }
}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。