232demo.cpp

来自「英创386模块的RS232控制协议和函数,还有例程」· C++ 代码 · 共 62 行

CPP
62
字号
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
#include <string.h>
#include "rs232.h"

char InStr[2048];

int GetCOM_NUM( char* NumStr );

int main( int argc, char** argv )
{
   int  i, ii, i1, State, len, COM_NUM;
   char abyte;

   if( argc > 1 )  COM_NUM = GetCOM_NUM( argv[1] );
   else            COM_NUM = COM3;

   InitUART( COM_NUM, 12 );
   InstallISR( COM_NUM );

   for( ; ; )
      {
      ii = 0;
      for( ; ; )
	 {
	 i1 = GetInputData(  );
	 if( i1 == -1 ) break;
	 abyte = (char)i1;
	 PutOutputData( abyte );
	 printf( "%c", abyte );
	 ii++;
	 }

      if( ii > 0 )  StartSend( );
      if( kbhit( ) ) { getch( ); break; }
      }

   UninstallISR( COM_NUM );
   return 0;
}

int GetCOM_NUM( char* NumStr )
{
   int i, len;

   len = strlen( NumStr );
   for( i=0; i<len; i++ )
      {
      NumStr[i] = toupper( NumStr[i] );
      }

   if( !strcmp( NumStr, "COM2" ) ) return COM2;
   if( !strcmp( NumStr, "COM3" ) ) return COM3;

   if( !strcmp( NumStr, "1" ) ) return COM2;
   if( !strcmp( NumStr, "2" ) ) return COM3;

   return COM2;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?