本測(cè)試程序選擇STC12C4052AD單片機(jī),采用內(nèi)部晶振6M起振,傳輸波特率為2400bps,測(cè)試于2012年11月17日通過。使用STC-ISP,V488版本刷機(jī),用其自帶串口助手程序測(cè)試。源代碼如下:
#include <reg51.h> #include <intrins.h> unsigned char tmp; void send_int(void); void send_char(unsigned char txd); main() { send_int(); while(1) { if(RI) // 是否有數(shù)據(jù)到來 { tmp = SBUF; // 暫存接收到的數(shù)據(jù) send_char(tmp); //數(shù)據(jù)傳回 RI = 0; //RI清零 } } } void send_int(void) { TMOD =0x20;//T1工作為方式2 SCON =0x50;//方式1:10位異步同通訊,串口允許接收 PCON =0x80;//波特率倍增,SMOD='1' TH1=TL1=0xf3; // 波特率2400 TR1=1;// 啟動(dòng)定時(shí)器1 ES=1; EA=1;//總中斷允許 } void send_char(unsigned char txd) // 傳送一個(gè)字符 { SBUF = txd; while(!TI); TI=0; } void send_string(char *s) //傳送字符串時(shí)使用 { while(*s) { send_char(*s++); } }