单片机stc12c5a60s2串口2工作方式0初始化子程序

如题

第1个回答  2014-06-03
#include<reg51.h>
#define uchar unsigned char
sfr AUXR=0x8e;
sfr S2CON=0x9a;
sfr S2BUF=0x9b;
sfr BRT=0x9c;
sfr IE2=0xaf;

#define S2RI=0x01
#define S2TI=0x02

uartinit()
{
S2CON=0x50;
BRT=-12000000/32/9600;
AUXR=0x14;
IE2=0x01;
EA=1;
}追问

是工作方式0,S2CON=0x50是方式1把

追答

哦,对,S2CON=0x00,定时器模式
S2CON=0x40,计数器模式

追问

BRT还用设初值吗?AUXR怎么设置

追答

BRT当然得设置初值了,这是一个波特率发生器,但是多大的波特率你的设置呀。
AUXR直接赋值就可以了。当然这里是用BRT做波特率发生器,所以是赋值14H,置BTR有效,采用1T模式。

本回答被提问者采纳
相似回答