/// /// Set baud rate /// summary> /// param> public void resetbaudrate (int bdr) {bool return = true; Win32com. DCB DCB = New Win32com.dcb (); RET = WIN32COM.GETCOMMSTATE (HPORT, REF DCB); dcb.baudrate = BDR; RET = Win32com.Setcommstate (HPORT, REF DCB); purgein (); purgeout ();} / // /// Clear read buffer content /// summary> public void purgein () {bool return = false; ret = Win32com.purgecomm (hport, win32com.purge_rxabort | win32com.purge_rxclear); / / RET = Cancelread (); // Ret = PurgeRead ();} /// /// clear write buffer content /// summary> public void purgeout () {bool ret = false; Ret = Win32com.purgecomm (HPORT, WIN32COM.PURGE_TXABORT | WIN32COM.PURGE_TXCLEAR); // Ret = CancelWrite (); // Ret = PURGEWRITE (); // Ret = PURGEWRITE ();} To delay the communication thread, call the following assumptions to comMint BaudRate = 57600; Comm.Sleep (100); comm.resetbaudrate (baudrate); Comm.Sleep (100);