/* X511Demo.c: Demo program for X511 Compiler: BC++ 3.1, Turbo C++ 1.01(3.01) (free from http://cc.codegear.com/free/cpp) Compile mode: large Project: X511Demo.c ..\..\lib\7186el.lib Hardware: uPAC-7186EX + X511 X511: COM3 (Data+, Data- RS-485) COM4 (Data+, Data- RS-485) COM5 (Data+, Data- RS-485) [Nov 02, 2008] by Liam */ #include #include #include "..\..\lib\7186e.h" #define BUFSIZE 256 char OutpBuf[BUFSIZE], InpBuf[BUFSIZE]; void main(void) { int idata, iAction, iValue, quit; InitLib(); Print("\r\n"); Print("*****************************************\r\n"); Print("| Demo program for uPAC-7186EX + X511 |\r\n"); Print("| |\r\n"); Print("| [Nov 02, 2008] |\r\n"); Print("*****************************************\r\n"); InstallCom(3, 115200L, 8, 0, 1); InstallCom(4, 115200L, 8, 0, 1); InstallCom(5, 115200L, 8, 0, 1); while(iAction!=4) { iAction=0; quit=0; Print("\n\r"); Print("1) Test COM3 (Data+,Data- RS-485)\n\r"); Print("2) Test COM4 (Data+,Data- RS-485)\n\r"); Print("3) Test COM5 (Data+,Data- RS-485)\n\r"); Print("\n\r"); Print("4) Quits Demo program\n\r\n\r"); Print("Choose an option and press [Enter]:"); Scanf("%d",&iAction); switch(iAction) { // FOR COM3 case 1: Print("\n\r"); Print("Send & Receive data to/from COM2\n\r"); Print("Enter a string to COM port:"); Scanf("%s", &OutpBuf); ToComStr(3, OutpBuf); Delay(2); idata=ReadComn(3, InpBuf, BUFSIZE); InpBuf[idata]=0x0; Print("Read COM port==>%s,idata=%d\r\n",InpBuf,idata); if(!strcmp(OutpBuf,InpBuf)) Print("Send COM3 <==> Receiv COM3 -->Test OK\n\r"); else Print("Send COM3 <==> Receiv COM3 -->Test error\n\r"); break; // FOR COM4 case 2: Print("\n\r"); Print("Send & Receive data to/from COM2\n\r"); Print("Enter a string to COM port:"); Scanf("%s",&OutpBuf); ToComStr(4,OutpBuf); Delay(2); idata=ReadComn(4,InpBuf,BUFSIZE); InpBuf[idata]=0x0; Print("Read COM port==>%s,idata=%d\r\n",InpBuf,idata); if(!strcmp(OutpBuf,InpBuf)) Print("Send COM4 <==> Receiv COM4 -->Test OK\n\r"); else Print("Send COM4 <==> Receiv COM4 -->Test error\n\r"); break; // FOR COM5 case 3: Print("\n\rSend & Receive data to/from COM2\n\r"); Print("Enter a string to COM port:"); Scanf("%s",&OutpBuf); ToComStr(5,OutpBuf); Delay(2); idata=ReadComn(5,InpBuf,BUFSIZE); InpBuf[idata]=0x0; Print("Read COM port==>%s,idata=%d\r\n",InpBuf,idata); if(!strcmp(OutpBuf,InpBuf)) Print("Send COM5 <==> Receiv COM5 -->Test OK\n\r"); else Print("Send COM5 <==> Receiv COM5 -->Test error\n\r"); break; case 4: quit=1; RestoreCom(3); RestoreCom(4); RestoreCom(5); break; default : quit=1; break; } if(quit!=1) { Print("\n\rPress any key to continue...\n\r"); Getch(); } } }