AT89X52 RS232 单片机 串口 通信

上传人:飞*** 文档编号:39934928 上传时间:2018-05-21 格式:DOCX 页数:11 大小:33.29KB
返回 下载 相关 举报
AT89X52 RS232 单片机 串口 通信_第1页
第1页 / 共11页
AT89X52 RS232 单片机 串口 通信_第2页
第2页 / 共11页
AT89X52 RS232 单片机 串口 通信_第3页
第3页 / 共11页
AT89X52 RS232 单片机 串口 通信_第4页
第4页 / 共11页
AT89X52 RS232 单片机 串口 通信_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《AT89X52 RS232 单片机 串口 通信》由会员分享,可在线阅读,更多相关《AT89X52 RS232 单片机 串口 通信(11页珍藏版)》请在金锄头文库上搜索。

1、#include #define uchar unsigned char #define uint unsigned int uchar code table1=“error“; uchar code table2=“OK“; uchar table30=0; uchar flag,flag_reset=0,a; uchar test=0; void send_error(); void send_OK(); /*/ void delayms( uint xms)/delay ms uint i,j; for(i=xms;i0;i-) for(j=110;j0;j-); /*/ void in

2、it_uart() TMOD=0x20;/TIMER1工作在MODE2 PCON=PCON/SMOD=0 TH1=0xfd; TL1=0xfd;/波特?率为a9600 SCON=0x50;/UART工作在MODE1 TR1=1;/开a始?计?数y IE=0x90; IP=0x10; /*/ void receive()/接收?数y据Y模块 uchar num=0; while(1) if(flag=1) if(a!=O) ES=0; tablenum=a; num+; flag=0; ES=1; else break; flag=0; /*/void send_error()/发送“error

3、“ uchar i; ES=0; for (i=0;i5;i+) SBUF=table1i; while(!TI); TI=0; ES=1; /*/ void send_OK()/发送“OK“ uchar i; ES=0; for (i=0;i2;i+) SBUF=table2i; while(!TI); TI=0; ES=1; /*/ void send(uchar i) /发送“1“或“0“ ES=0; SBUF=i; while(!TI); TI=0; ES=1; /*/ void estimate()/判D断?接收?到?的?数y据Y if(table0=W send_OK(); bre

4、ak; case 1: P11=1; send_OK(); break; case 2: P12=1; send_OK(); break; case 3: P13=1; send_OK();break; case 4: P14=1; send_OK(); break; case 5: P15=1; send_OK(); break; case 6: P16=1; send_OK(); break; case 7: P17=1; send_OK(); break; default : send_error(); else if(table0=W send_OK(); break; case 1:

5、 P11=0; send_OK(); break; case 2: P12=0; send_OK(); break; case 3: P13=0; send_OK(); break; case 4: P14=0; send_OK(); break; case 5: P15=0; send_OK(); break; case 6: P16=0; send_OK(); break; case 7: P17=0; send_OK(); break; default : send_error();else if(table0=W send_OK(); break; case 1: P21=1; sen

6、d_OK(); break; case 2: P22=1; send_OK(); break; case 3: P23=1; send_OK(); break; case 4: P24=1; send_OK(); break; case 5: P25=1; send_OK(); break; case 6: P26=1; send_OK(); break; case 7: P27=1; send_OK(); break; default : send_error(); else if(table0=W send_OK(); break; case 1: P21=0; send_OK(); br

7、eak; case 2: P22=0; send_OK(); break; case 3: P23=0; send_OK(); break; case 4: P24=0; send_OK(); break; case 5: P25=0; send_OK(); break;case 6: P26=0; send_OK(); break; case 7: P27=0; send_OK(); break; default : send_error(); else if(table0=W send_OK(); break; case 1: P31=1; send_OK(); break; case 2

8、: P32=1; send_OK(); break; case 3: P33=1; send_OK(); break; case 4: P34=1; send_OK(); break; case 5: P35=1; send_OK(); break; case 6: P36=1; send_OK(); break; case 7: P37=1; send_OK(); break; default : send_error(); else if(table0=W send_OK(); break; case 1: P31=0; send_OK();break; case 2: P32=0; se

9、nd_OK(); break; case 3: P33=0; send_OK(); break; case 4: P34=0; send_OK(); break; case 5: P35=0; send_OK(); break; case 6: P36=0; send_OK(); break; case 7: P37=0; send_OK(); break; default : send_error();else if(table0=R if(CY) send(1); else send(0); break; case 1: CY=P01; if(CY) send(1); else send(

10、0); break; case 2: CY=P02; if(CY) send(1); else send(0); break; case 3: CY=P03; if(CY) send(1); else send(0); break;case 4: CY=P04; if(CY) send(1); else send(0); break; case 5: CY=P05; if(CY) send(1); else send(0); break; case 6: CY=P06; if(CY) send(1); else send(0); break; case 7: CY=P07; if(CY) se

11、nd(1); else send(0); break; default : send_error(); else if(table0=R if(CY) send(1); else send(0); break; case 1: CY=P11; if(CY) send(1); else send(0); break; case 2: CY=P12; if(CY) send(1); else send(0); break; case 3: CY=P13; if(CY)send(1); else send(0); break; case 4: CY=P14; if(CY) send(1); else

12、 send(0); break; case 5: CY=P15; if(CY) send(1); else send(0); break; case 6: CY=P16; if(CY) send(1); else send(0); break; case 7: CY=P17; if(CY) send(1); else send(0); break; default : send_error();else if(table0=R if(CY) send(1); else send(0); break; case 1: CY=P21; if(CY) send(1); else send(0); b

13、reak; case 2: CY=P22; if(CY)send(1); else send(0); break; case 3: CY=P23; if(CY) send(1); else send(0); break; case 4: CY=P24; if(CY) send(1); else send(0); break; case 5: CY=P25; if(CY) send(1); else send(0); break; case 6: CY=P26; if(CY) send(1); else send(0); break; case 7: CY=P27; if(CY) send(1)

14、; else send(0); break; default : send_error(); else if(table0=R if(CY) send(1); else send(0); break; case 1: CY=P31; if(CY) send(1);else send(0); break; case 2: CY=P32; if(CY) send(1); else send(0); break; case 3: CY=P33; if(CY) send(1); else send(0); break; case 4: CY=P34; if(CY) send(1); else send(0); break; case 5: C

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号