独立波特率发生器的重装值 分数波特率发生器

串行口独立波特率发生器


例如:Fosc=11.59200MHzBaud=9600

Reload=256-INT(1159200/9600/32/12+0.5)

=256-3

=253

=FD

Baud=1159200/(256-253)/32/12//检验有无误差

=9600

无误差

程序:

#include
#define uchar unsigned char

void SendByte(unsigned chardat)

{

SBUF = dat;

while(!TI);

TI = 0;

}

void SendStr(unsigned char*s)

{

while(*s!='')// 表示字符串结束标志,通过检测是否字符串末尾

{

SendByte(*s);

s++;

}

}

void initUART(void)

{

SCON=0x50; //SM1=1 SM0=0REN=1

BRT = 0XFD; //设置独立波特率发生器的重装值

AUXR=0X11;//设置独立波特率发生器

AUXR1 = 0X80;//串口设为txd--P1.3rxd--P1.2

}

void main()

{

initUART();

SendStr("正在初始化...");

while(1)

{

P0=0xfe;

}

}

void chuankou() interrupt 4

{

unsigned char i;

if(RI)

{

RI=0;

i=SBUF;

P2=i;

}

}


AUXR寄存

T0x12和T1x12用于设置定时器0和定时器1的速度。EXTRAM用于
设置是否允许使用内部扩展的1024字节扩展RAM。
1)UART_M0x6:串行口模式0的通信速度设置位。
0:UART串口模式0的速度是传统12T的8051速度,12分频。
1:UART串口模式0的速度是传统12T的8051的6倍,2分频。
2)BRTR:独立波特率发生器运行控制位。
0:不允许独立波特率发生器运行。
1:允许独立波特率发生器运行。
3)S2SMOD:UART2的波特率加倍控制位。
0:UART2的波特率不加倍。
1:UART2的波特率加倍。
4)BRTx12:独立波特率发生器计数控制位。
0:独立波特率发生器每12个时钟计数一次。
1:独立波特率发生器每1个时钟计数一次。
独立波特率发生器的重装值 分数波特率发生器
5)S1BRS:串口1波特率发生器选择位。
0:选择定时器1作为串口1波特率发生器。
1:选择独立波特率发生器作为串口1的波特率发生器,此
时定时器1得到释放,可以作为独立定时器使用。

  

爱华网本文地址 » http://www.aihuau.com/a/25101015/261747.html

更多阅读

360一键重装系统win7 64位系统图文教程 一键重装系统64位

360一键重装系统win7 64位系统图文教程——简介360重装系统大师3.0以上版本终于支持一键重装Win7 64位系统了,这也意味着,360重装系统大师现在可以支持全系统的Win7版本和XP系统;360重装系统大师的优点是,只要你的电脑还能上网,那就可以

华硕笔记本怎么系统重装 华硕电脑不能重装系统

华硕笔记本怎么系统重装——简介这里介绍的win7/8系统的重装,通用方法,这是无安装光盘下的方法,先制作系统启动U盘,然后进行安装--------------若有安装盘则直接进行光盘启动,进行安装华硕笔记本怎么系统重装——工具/原料硬件至少4G

怎样重装IE浏览器 ie浏览器重新安装

先说明下,这里的重装是指恢复IE到旧版本,然后重新安装。一般问题重置浏览器即可。怎样重装IE浏览器——工具/原料IE浏览器。。。怎样重装IE浏览器——步骤/方法怎样重装IE浏览器 1、

声明:《独立波特率发生器的重装值 分数波特率发生器》为网友沒讓我失望分享!如侵犯到您的合法权益请联系我们删除