《c51很简洁易懂的rs232串口通信接收发送程序》由会员分享,可在线阅读,更多相关《c51很简洁易懂的rs232串口通信接收发送程序(2页珍藏版)》请在金锄头文库上搜索。
1、/* 标题: RS232串口通信试验(接受与发送) * * * 1.通过本例程了解串口的基本原理及使用 ,理解并掌握对串口进行初始化 * * 2.请使用串口调试助手(Baud 4800、数据位8、停止位1、效验位无)做为上位机来做收发试验。* 在调试助手字符串输入框中输入数字和字符,按发送按钮,然后观察接受窗口的变化。也可以用* 调试助手自动循环发送。 * * * 请学员认真消化本例程,学会用C语言操作串口 * */#include sbit BEEP = P14;bit Flag;unsigned int ReData,SenData;void main (void) SCON = 0x50
2、; /REN=1允许串行接受状态,串口工作模式1 TMOD|= 0x20; /定时器工作方式2 PCON|= 0x80; /TH1 = 0xFD; /baud*2 /* reload value 19200、数据位8、停止位1。效验位无 (11.0592) TH1 = 0xF3;/ /baud*2 /* 波特率4800、数据位8、停止位1。效验位无 (12M) TL1 = 0xF3; TR1 = 1; ES = 1; /开串口中断 EA = 1; / 开总中断 BEEP=1; / IE = 0x0; while(1) if (Flag=1) SBUF=SenData; /SUBF接受/发送缓冲器 while(TI=0); TI=0; Flag=0; /* 串口中断程序*/void ser_int (void) interrupt 4 using 1 if(RI = 1) /RI接受中断标志 RI = 0; /清除RI接受中断标志ReData = SBUF; /SUBF接受/发送缓冲器SenData=ReData; Flag=1;