如何利用STC内部的RC振荡器频率做串口通讯

2019-03-24 19:36发布

//--获取内部RC,但是需要转化成10进制
void Get_Rc(char rc)
{
  uchar idata *idata_point;
  uchar i=0;
uchar j=0;
  idata_point=0xF8;
for(j=0;j<=3;j++)
{
i=*idata_point;
//--send_UART(i);
idata_point++;
}

}
以上是我读内部RC频率的程序,不知道如何将其转化成10进制的频率,并进行串行通讯,波特率用这个公式:TH1=TL1=256 - ( CON_OSC / 1 / 32/ 11520 ) ?请大虾们指教 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
8条回答
Li_Lei
2019-03-25 14:34
//stc特殊寄存器
sfr AUXR           = 0x8E;
sfr BRT         = 0x9C; //S2 Baud-Rate Timer   stc12c5A

void Com_Init(void)
{
//BRT设置
#ifdef COM_TIMER_1T_ENABLE
                AUXR|=0x4;
#endif
                  BRT= COM_TIMER_SETUP;
                AUXR|=0x11;                        //使能BRT
/**///串口设置
#ifdef COM_SMOD_DOUBLE_SPEED       
//        PCON |= 0x80;                //=0默认32分频        =1 16
#endif
        SCON = 0x50;                //0101,0000 8位可变波特率,无奇偶校验
        RI=0;
        TI=0;
        ES=1;                                //串口中断响应
        SBUF='O';
        while (!TI) TI=0;
        SBUF='K';
}

一周热门 更多>