《51单片机串口调试程序》由会员分享,可在线阅读,更多相关《51单片机串口调试程序(2页珍藏版)》请在金锄头文库上搜索。
1、串口调试程序:(已通过编译) /串口调试程序 51 单片机 /*/#include/头文件调用,写程序时都要加上 #define uint unsigned int/宏定义,为了后面定义变量书写简便 #define uchar unsigned char/*/*名称:主函 数*/ /*内容:打开串口调试程序,将波特率设置为 9600,无奇偶校验*/ /*晶振 11.0592MHz,发送和接收使用的格式相同,如都使用*/ /*字符型格式,在发送框输入 hello,ILoveMCU,在接*/ /*收框中同样可以看到相同字符,说明设置和通信正确*/ /*/*波特率设置及串口初始化 #define b
2、audrate 9600UL#define fosc 11059200UL/其中,UL 是不能省略的,代表长整型。 unsigned char a,flag; void serial_init(void) unsigned char S_MOD=1;TMOD=0x20;/T1 工作在方式 2SCON=0x50;/SM0=0 SM1=1-串口通信在模式 1, /SM2=0-多级通信中使用的位,REN=1;PCON=0;if(PCONTH1=256-(fosc*S_MOD)/(baudrate*12*32);/其中 SMOD=0,TL1=256-(fosc*S_MOD)/(baudrate*12*32);TR1=1;ES=1;EA=1; /* void main(void) serial_init(); /初始化 while(1)/主循环不做任何动作 /*/*串口中断程 序*/ /*/ void UART_SER() interrupt 4 uchar Temp;/定义临时变量if(RI) RI=0;/标志位清零Temp=SBUF;/读入缓冲区的值 P1=Temp;/把值输出到 P1 口,用于观察 SBUF=Temp;/把+接收到的值再发回电脑端 if(TI)/如果是发送标志位,清零 TI=0;