52单片机串口波特率设置函数

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

52单片机串口波特率设置函数

波特率设置太麻烦了吧,用函数设置吧,不必东奔西走的找了,个人自己写的代码,欢迎使用,不需要金币,好用就评价一下吧

注意了,仅用于52系列单片机,代码如下:

/*----------52单片机波特率设置函数--------------

------------------------------------------------

作者:wenguang.li

Email:liwg@//wenguang.li@

MCU: *52

Cristal frequency unit MHz 晶体频率单位MHz

Baudrate as you desired

Example: set52_baudrate(11.0592,57600)

Use Timer2 使用定时器2

------------------------------------------------

----------------------------------------------*/

//if osc=11.0592M

//can set baudrate 110,300,600,1200,2400,4800,9600,19200,38400,57600,115200bps

void set52_baudrate(float frequency,long int baudrate)

{

unsigned int itmp;

unsigned char tlow,thigh;

itmp=(int)(65536-(frequency*1000000)/(baudrate*32));

thigh=itmp/256;

tlow=itmp%256;

SCON=0x56;

T2CON=0x30;

RCAP2H=thigh;

RCAP2L=tlow;

TH2=thigh;

TL2=tlow;

TR2=1; //set ok

}

///////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////

相关文档
最新文档