首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 单片机 >

MCU初始化解决思路

2013-10-23 
MCU初始化如下代码,#define RELOAD_COUNT0xd9//12.000MHz,12T,SMOD0,9600bpsvoid serial_port_one_initia

MCU初始化
如下代码,
#define RELOAD_COUNT  0xd9   //12.000MHz,12T,SMOD=0,9600bps
void serial_port_one_initial()
{
    SCON    =   0x50;   //0101,0000 8位可变波特率,无奇偶校验位
//   TMOD    =   0x21;   //0011,0001 设置顶时器1为8位自动重装计数器
//    TH1     =   RELOAD_COUNT;   //设置定时器1自动重装数
//    TL1     =   RELOAD_COUNT;
//    TR1     =   1;    //开定时器1
BRT=RELOAD_COUNT;
//  BRTR = 1, S1BRS = 1, EXTRAM = 1 ENABLE EXTRAM
//AUXR=0x11; // T0x12,T1x12,UART_M0x6,BRTR,S2SMOD,BRTx12,EXTRAM,S1BRS
AUXR=0x15; //For 12MHz OSC
    ES      =   1;    //允许串口中断
    EA      =   1;    //开总中断
}
RELOAD_COUNT的值是怎么算出来的 STC12C560AD
[解决办法]
这个你要看BRT这个寄存器 在数据手册的具体定义
[解决办法]
看datasheet 有公式计算波特率
[解决办法]
这个根据主频,波特率计算出来的。datasheet上面有公式。

热点排行