欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

mcu初始化解决思路

更新时间: 2014-01-05 03:14:48 责任编辑: Author_N1

 

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的值是怎么算出来的
--参考方法--
这个你要看BRT这个寄存器 在数据手册的具体定义
--参考方法--
看datasheet 有公式计算波特率
--参考方法--
这个根据主频,波特率计算出来的。datasheet上面有公式。
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 03:14:48
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/20036/
本文WWW.DOC100.NET DOC100.NET版权所有。