资源描述:
《WindowsXPRS485通讯测试程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、WindowsXP/2000下RS485通讯测试程序此测试程序为WindowsXP/2000下的测试工具。操作说明:1.把COM1,COM2的设置成RS485,。2.用短接线把的COM1,COM2连接好,即COM1的5/7与COM2的5/7直接连接。3.进入系统,运行RS485Test.exe。4.选择要测试的COM口,工作模式,CHANGECOMMODE:SENDORREAD(SORR)在这里选择是要发送还是接收。回车5.如果COM1,COM2出现相应的字符既表示这2个串口工作正常。#include#include
2、#include#include"Serial.h"//RS485测试程序intRS485Test(){unsignedintunComNum1=0;//unsignedintunComNum2=0;unsignedcharucCom1Mod=0;unsignedcharucCom2Mod=0;charchCom[5]={0};CSerialserial1;CSerialserial2;charbuffer[1024]={0};longlSendCounter=0;charszSendBuff[1024]={0};DWORDdwRea
3、d=0;inti=0;//==================输入COM1的端口号和工作模式===========================//fprintf(stdout,"EnterCOM1Number(1,2):");//scanf("%d",&unComNum1);unComNum1=1;fprintf(stdout,"ChangeCOM1mode:SendorRead(sorr):");scanf("%s",&ucCom1Mod);memset(chCom,0,5);sprintf(chCom,"COM%d",unComNum1);B
4、OOLbSer=serial1.InitCOM(chCom,19200,8,0,0,1);if(!bSer){fprintf(stdout,"Can'tInitCOMCom1.");return-1;}//==================输入COM2的端口号和工作模式===========================//fprintf(stdout,"EnterCOM2Number(1,2):");//scanf("%d",&unComNum2);unComNum2=2;fprintf(stdout,"ChangeCOM2mode:Sen
5、dorRead(sorr):");scanf("%s",&ucCom2Mod);memset(chCom,0,5);sprintf(chCom,"COM%d",unComNum2);bSer=serial2.InitCOM(chCom,19200,8,0,0,1);if(!bSer){fprintf(stdout,"Can'tInitCOMCom2.");return-1;}fprintf(stdout,"InputSenddata:");scanf("%s",szSendBuff);for(intk=0;k<10;k++){if((ucCom1Mo
6、d=='s')
7、
8、(ucCom1Mod=='S')){serial1.SendData(szSendBuff,strlen(szSendBuff));}if((ucCom2Mod=='s')
9、
10、(ucCom2Mod=='S')){serial2.SendData(szSendBuff,strlen(szSendBuff));}Sleep(100);if((ucCom1Mod=='r')
11、
12、(ucCom1Mod=='R')){memset(buffer,0,sizeof(buffer));dwRead=serial1.ReadData(buffer,siz
13、eof(buffer));printf("COM1k=%d,ReceiveDataLen=%d,Data(HEX):",k,dwRead);for(i=0;i14、
15、(ucCom2Mod=='R')){memset(buffer,0,sizeof(buffer));dwRead=serial2.ReadData(buffer,sizeof(buffer));printf("COM2k=%d,ReceiveDataLen
16、=%d,Data(HEX):",k,dwRead);for(i=0;i