一烦粒、完整代碼如下:C#include#define uchar unsigned char
#define uint unsigned int
void send(uchar state)
{
SBUF=state;
while(TI==0);
TI=0;
}
void SCON_init(void)
{
TMOD=0x20;//6T模式唤崭,11.05992@115200
SCON=0x50;
PCON=0x80;
TL1=0xFF;
TH1=0xFF;
TR1=1;
/*SCON=0x50;//定時(shí)器2模式,11.0592@115200
TH2=0xFF;
TL2=0xFD;
RCAP2H=0xFF;
RCAP2L=0xFD;
TCLK=1;
RCLK=1;
C_T2=0;
EXEN2=0;
TR2=1;*/
}
void main()
{
SCON_init();
while(1)
{
send('A');
}
}
二域那、備注
“SCON_init”子程序是串口波特率設(shè)置和初始化的子程序,在主程序開(kāi)始時(shí)調(diào)用一次即可。在整個(gè)串口波特率初始化子程序中檩咱,我們兩種方式完整的代碼都在里面,沒(méi)有用注釋符號(hào)標(biāo)注的是6T模式方式的代碼胯舷,用注釋符號(hào)標(biāo)注的是12T模式下通過(guò)定時(shí)器2來(lái)實(shí)現(xiàn)的代碼刻蚯。
6T或12T模式的設(shè)置是在燒寫程序時(shí)自己選擇的,不需要代碼設(shè)置桑嘶。定時(shí)器2只有在STC89C52RC這種增強(qiáng)型51單片機(jī)才有炊汹。