STC12C5410AD學(xué)習(xí)板---串口通信
/************ STC12C5410AD學(xué)習(xí)板 ******************/
/*功能描述:單片機(jī)與電腦串口通信 */
/*作者:鄭 文 */
/*編寫(xiě)時(shí)間:2008.8.13 */
/*功能:把單片機(jī)的一些數(shù)據(jù)傳給電腦 */
/*接外部晶振22.1184 MHZ */
/*把波特率設(shè)置為51的12倍,現(xiàn)在波特率 115200 */
#include
#include
#include
#include
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
void Delay1ms(unsigned int count);
void init_rs232(void); //串口初始化
/***************************1秒延時(shí)子程序start***************************/
void Delay1ms(unsigned int count)
{
unsigned int i,j;
for(i=0;i
}
/***************************1秒延時(shí)子程序end***************************/
/* 串口通信初始化設(shè)置 */
void init_rs232(void)
{
AUXR=74; //設(shè)置波特率是普通51的12倍 ,允許AD中斷
SCON=0x50;
PCON=0x00;
TH1=0xFA; //波特率 115200 22.1184MHZ 時(shí)候(F4 4800 FA 9600 FDH 9600)*12
TL1=0XFA;
TMOD=0X20;
TR1=1;
}
/*****************主程序************************/
main()
{ //main start
uchar temp;
Delay1ms(5000);
init_rs232(); //串口初始化
TI=1;
printf("STC12C5410AD學(xué)習(xí)板 串口測(cè)試程序n");
printf("ClimberWin 2008.8.13nn");
Delay1ms(5000);
printf("串口初始化成功nn");
Delay1ms(5000);
printf("進(jìn)入串口測(cè)試程序nn");
while(1)
{
Delay1ms(5000);
SBUF=temp;
temp++;
}
} //mian end
評(píng)論