/* X506Demo.c: Demo program for X506 Compiler: BC++ 3.1, Turbo C ++ 1.01(3.01) (free from http://community.borland.com/museum) Compile mode: large Project: X506Demo.c ..\..\Lib\7188xbl.lib Hardware: 7188XB + X506 X506: COM3 (3-wire RS-232) COM4 (3-wire RS-232) COM5 (3-wire RS-232) COM6 (3-wire RS-232) COM7 (3-wire RS-232) COM8 (3-wire RS-232) [07/July/2005] by Liam */ #include #include #include "..\..\lib\7188xb.h" #define BUFSIZE 1024 void main(void) { char OutpBuf[BUFSIZE], InpBuf[BUFSIZE]; int idata, iAction, quit; InitLib(); InstallCom(3, 115200L, 8, 0, 1); InstallCom(4, 115200L, 8, 0, 1); InstallCom(5, 115200L, 8, 0, 1); InstallCom(6, 115200L, 8, 0, 1); InstallCom(7, 115200L, 8, 0, 1); InstallCom(8, 115200L, 8, 0, 1); Print("\r\n"); Print("****************************************\n\r"); Print("| 7188XB + X506 |\n\r"); Print("****************************************\n\r"); while(iAction!=7) { iAction=0; quit=0; Print("\r\n"); Print("1) Test COM3 (3-wire RS-232)\r\n"); Print("2) Test COM4 (3-wire RS-232)\r\n"); Print("3) Test COM5 (3-wire RS-232)\r\n"); Print("4) Test COM6 (3-wire RS-232)\r\n"); Print("5) Test COM7 (3-wire RS-232)\r\n"); Print("6) Test COM8 (3-wire RS-232)\r\n"); Print("\r\n"); Print("7) Quits Demo program\r\n\r\n"); Print("Choose an option and press [Enter]:"); iAction=0; Scanf("%d", &iAction); switch(iAction) { // FOR COM3 case 1: Print("\r\nSend & Receive data to/from COM3\r\n"); 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\r\n"); else Print("Send COM3 <==> Receiv COM3 -->Test error\r\n"); break; // FOR COM4 case 2: Print("\r\nSend & Receive data to/from COM4\r\n"); 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\r\n"); else Print("Send COM4 <==> Receiv COM4 -->Test error\r\n"); break; // FOR COM5 case 3: Print("\r\nSend & Receive data to/from COM5\r\n"); 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\r\n"); else Print("Send COM5 <==> Receiv COM5 -->Test error\r\n"); break; // FOR COM6 case 4: Print("\r\nSend & Receive data to/from COM6\r\n"); Print("Enter a string to COM port:"); Scanf("%s", &OutpBuf); ToComStr(6, OutpBuf); Delay(2); idata=ReadComn(6, InpBuf, BUFSIZE); InpBuf[idata]=0x0; Print("Read COM port==>%s, idata=%d\r\n", InpBuf, idata); if(!strcmp(OutpBuf,InpBuf)) Print("Send COM6 <==> Receiv COM6 -->Test OK\r\n"); else Print("Send COM6 <==> Receiv COM6 -->Test error\r\n"); break; // FOR COM7 case 5: Print("\r\nSend & Receive data to/from COM7\r\n"); Print("Enter a string to COM port:"); Scanf("%s", &OutpBuf); ToComStr(7, OutpBuf); Delay(2); idata=ReadComn(7, InpBuf, BUFSIZE); InpBuf[idata]=0x0; Print("Read COM port==>%s, idata=%d\r\n", InpBuf, idata); if(!strcmp(OutpBuf, InpBuf)) Print("Send COM7 <==> Receiv COM7 -->Test OK\r\n"); else Print("Send COM7 <==> Receiv COM7 -->Test error\r\n"); break; // FOR COM8 case 6: Print("\r\nSend & Receive data to/from COM8\r\n"); Print("Enter a string to COM port:"); Scanf("%s", &OutpBuf); ToComStr(8, OutpBuf); Delay(2); idata=ReadComn(8, InpBuf, BUFSIZE); InpBuf[idata]=0x0; Print("Read COM port==>%s, idata=%d\r\n", InpBuf, idata); if(!strcmp(OutpBuf,InpBuf)) Print("Send COM8 <==> Receiv COM8 -->Test OK\r\n"); else Print("Send COM8 <==> Receiv COM8 -->Test error\r\n"); break; case 7: quit=1; RestoreCom(3); RestoreCom(4); RestoreCom(5); RestoreCom(6); RestoreCom(7); RestoreCom(8); break; default : quit=1; break; } if(!quit){ Print("\r\nPress any key to continue...\r\n"); Getch(); } } }