// 车急停 private static void Car_EmergencyStop() { if (emergyStop == false) { for (byte add = 0x01; add < 0x05; add++) { try { com.Write(CarControl.EmergeStop(add), 0, 8); } catch (Exception e) { mainLog.WriteLog("串口写入失败", e.ToString()); } Thread.Sleep(serial_time); } Thread.Sleep(500); gpio.SetIoLow(); //关闭抱闸 SetIoH = false; emergyStop = true; } else { gpio.SetIoHigh(); emergyStop = false; } }
// 通信断,程序退出 private static void Trans_Error() { try { for (byte add = 0x01; add < 0x05; add++) { try { com.Write(CarControl.EmergeStop(add), 0, 8); } catch (Exception e) { mainLog.WriteLog("串口写入失败", e.ToString()); } Thread.Sleep(serial_time); } Thread.Sleep(1000); com.Close(); if (videotrans) { myVideo.CloseVideo(); } mainLog.WriteLog("通信中断", "强制退出"); Environment.Exit(-1); } catch (Exception e) { mainLog.WriteLog("通信中断", "强制退出失败"); } }