/// <summary> /// 血糖 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnMmol_Click(object sender, EventArgs e) { btnInfo.BackgroundImage = Properties.Resources.xinxi; btnPatientInfos.BackgroundImage = Properties.Resources.jiankuang; btnEcg.BackgroundImage = Properties.Resources.xindian; btnMmhg.BackgroundImage = Properties.Resources.xueya; btnSpo2.BackgroundImage = Properties.Resources.xueyang; btnC.BackgroundImage = Properties.Resources.tiwen; btnMmol.BackgroundImage = Properties.Resources.xuetangAfter; btnUrine.BackgroundImage = Properties.Resources.niaochanggui; btnDoctorInfos.BackgroundImage = Properties.Resources.yisheng; btnSystemInfo.BackgroundImage = Properties.Resources.xitong; panelFill.Controls.Clear(); if (!string.IsNullOrEmpty(SerialPortClass.CreateInstance().ComBloodString)) { SerialPortClass.CreateInstance().ReadComPort_Blood(SerialPortClass.CreateInstance().ComBloodString); } var bf = new BloodSugarForm { TopLevel = false, FormBorderStyle = FormBorderStyle.None }; panelFill.Controls.Add(bf); bf.Dock = DockStyle.Fill; bf.Show(); }
/// <summary> /// 打开小窝牛 /// </summary> private void OpenBloodSport() { bool isOpen = true; while (isOpen) { try { if (!string.IsNullOrEmpty(SerialPortClass.CreateInstance().ComBluetooth)) { isOpen = SerialPortClass.CreateInstance().ReadComPort_Bluetooth(SerialPortClass.CreateInstance().ComBluetooth); } if (isOpen) { SerialPortClass.CreateInstance().StartThread(); isOpen = false; } } catch (Exception ex) { WatchDog.Write(@"打开小蜗牛:", ex); } Thread.Sleep(3000); } }
/// <summary> /// 读取检测数据 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnUrineRead_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(SerialPortClass.CreateInstance().ComUrineAnalyzer)) { SerialPortClass.CreateInstance().GetUrineAnalyzerComs(); if (string.IsNullOrEmpty(SerialPortClass.CreateInstance().ComUrineAnalyzer)) { XtraMessageBox.Show(@"未检测到设备,请插入!", @"提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } } SerialPortClass.CreateInstance().ReadComPort(SerialPortClass.CreateInstance().ComUrineAnalyzer); SerialPortClass.CreateInstance().Analyzer_UrineData(); lb_LEU.Text = SerialPortClass.CreateInstance().LEU; lb_BIL.Text = SerialPortClass.CreateInstance().BIL; lb_BLD.Text = SerialPortClass.CreateInstance().BLD; lb_GLU.Text = SerialPortClass.CreateInstance().GLU; lb_KET.Text = SerialPortClass.CreateInstance().KET; lb_NIT.Text = SerialPortClass.CreateInstance().NIT; lb_PH.Text = SerialPortClass.CreateInstance().PH; lb_PRO.Text = SerialPortClass.CreateInstance().PRO; lb_SG.Text = SerialPortClass.CreateInstance().SG; lb_UBG.Text = SerialPortClass.CreateInstance().UBG; lb_VC.Text = SerialPortClass.CreateInstance().VC; }
private void timer_Tem_Tick(object sender, EventArgs e) { try { lb_C.ForeColor = Color.FromArgb(233, 155, 1); lb_CF.ForeColor = Color.FromArgb(233, 155, 1); string T = SerialPortClass.CreateInstance().T; if (T != "L" && T != "——" && !string.IsNullOrEmpty(T)) { if (Convert.ToDecimal(T) >= 36 && Convert.ToDecimal(T) <= 37) { lb_C.ForeColor = Color.FromArgb(2, 234, 17); lb_CF.ForeColor = Color.FromArgb(2, 234, 17); } if (Convert.ToDecimal(T) > 37) { lb_C.ForeColor = Color.FromArgb(234, 85, 3); lb_CF.ForeColor = Color.FromArgb(234, 85, 3); } } lb_C.Text = SerialPortClass.CreateInstance().T; lb_CF.Text = SerialPortClass.CreateInstance().F; } catch (Exception ex) { WatchDog.Write(@"获取温度:", ex); } }
/// <summary> /// 开始检测血压 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnBloodPressureStart_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(SerialPortClass.CreateInstance().ComBluetooth)) { XtraMessageBox.Show(@"未检测到设备,请开启!", @"提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } SerialPortClass.CreateInstance().MsbCatch = string.Empty; SerialPortClass.CreateInstance().Instance_BluetoothStart(); SerialPortClass.CreateInstance().IsblueToothMmhg = false; }
/// <summary> /// 血糖检测 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnBloodSugarRead_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(SerialPortClass.CreateInstance().ComBloodString)) { SerialPortClass.CreateInstance().GetUrineAnalyzerComs(); if (string.IsNullOrEmpty(SerialPortClass.CreateInstance().ComBloodString)) { XtraMessageBox.Show(@"未检测到设备,请插入!", @"提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } } SerialPortClass.CreateInstance().Analyzer_Blood(); lbMmol.ForeColor = Color.FromArgb(233, 155, 1); if (ConfigHelper.BloodSugarNum == 0)//餐前--空腹 { radiobtnBloodBefore.Checked = true; radiobtnBloodAfter.Checked = false; if (!string.IsNullOrEmpty(SerialPortClass.CreateInstance().M)) { if (Convert.ToDouble(SerialPortClass.CreateInstance().M) >= 4.4 && Convert.ToDouble(SerialPortClass.CreateInstance().M) <= 7.0) { lbMmol.ForeColor = Color.FromArgb(2, 234, 17); } if (Convert.ToDouble(SerialPortClass.CreateInstance().M) > 7.0) { lbMmol.ForeColor = Color.FromArgb(234, 85, 3); } } } if (ConfigHelper.BloodSugarNum == 1)//餐后--非空腹 { radiobtnBloodBefore.Checked = false; radiobtnBloodAfter.Checked = false; if (!string.IsNullOrEmpty(SerialPortClass.CreateInstance().M)) { if (Convert.ToDouble(SerialPortClass.CreateInstance().M) >= 4.4 && Convert.ToDouble(SerialPortClass.CreateInstance().M) <= 10.0) { lbMmol.ForeColor = Color.FromArgb(2, 234, 17); } if (Convert.ToDouble(SerialPortClass.CreateInstance().M) > 10.0) { lbMmol.ForeColor = Color.FromArgb(234, 85, 3); } } } lbMmol.Text = SerialPortClass.CreateInstance().M; ConfigHelper.BloodSugarNum = -1; }
public OBDIfEx() { StrLoadConfigResult = ""; OBDDll = new SH_OBD_Dll(".\\log"); OBDIf = OBDDll.GetOBDInterface(); Log = OBDDll.GetLogger(); _configResult = (int)LoadConfigResult.Success; if (!OBDIf.DllSettingsResult) { _configResult |= (int)LoadConfigResult.DllSettings; } MainSettings = LoadSettings <MainSettings>(_mainSettings_xml); DBandMES = LoadSettings <DBandMES>(_dbandMES_xml); OBDResultSetting = LoadSettings <OBDResultSetting>(_obdResultSetting_xml); if (_configResult != (int)LoadConfigResult.Success) { if ((_configResult & (int)LoadConfigResult.DllSettings) == (int)LoadConfigResult.DllSettings) { StrLoadConfigResult += "Dll设置读取错误\n"; } else if ((_configResult & (int)LoadConfigResult.DBandMES) == (int)LoadConfigResult.DBandMES) { StrLoadConfigResult += "数据库和MES设置读取错误\n"; } else if ((_configResult & (int)LoadConfigResult.OBDResultSetting) == (int)LoadConfigResult.OBDResultSetting) { StrLoadConfigResult += "OBD检测结果设置读取错误\n"; } else if ((_configResult & (int)LoadConfigResult.MainSettings) == (int)LoadConfigResult.MainSettings) { StrLoadConfigResult += "主程序设置读取错误\n"; } } ScannerPortOpened = false; if (MainSettings.UseSerialScanner) { ScannerSP = new SerialPortClass( MainSettings.ScannerPortName, MainSettings.ScannerBaudRate, Parity.None, 8, StopBits.One ); try { ScannerSP.OpenPort(); ScannerPortOpened = true; } catch (Exception ex) { Log.TraceError("打开扫码枪串口出错: " + ex.Message); } } }
private void NextScreen_Click() { if (serialPortSelection == null && _serialService.IsSimulationModeActive) { SerialPortSelection = new SerialPortClass() { SerialPort_PortName = "", } } ; SetSerialPort(); _naviService.NavigateTo("DiameterView"); } }
private void timerBloodPressure_Tick(object sender, EventArgs e) { try { lb_SYS.ForeColor = Color.FromArgb(233, 155, 1); lb_DIA.ForeColor = Color.FromArgb(233, 155, 1); if (!string.IsNullOrEmpty(SerialPortClass.CreateInstance().SYS)) { if (Convert.ToInt32(SerialPortClass.CreateInstance().SYS) > 90 && Convert.ToInt32(SerialPortClass.CreateInstance().SYS) < 140) { lb_SYS.ForeColor = Color.FromArgb(2, 234, 17); } if (Convert.ToInt32(SerialPortClass.CreateInstance().SYS) >= 140) { lb_SYS.ForeColor = Color.FromArgb(234, 85, 3); } } if (!string.IsNullOrEmpty(SerialPortClass.CreateInstance().DIA)) { if (Convert.ToInt32(SerialPortClass.CreateInstance().DIA) > 60 && Convert.ToInt32(SerialPortClass.CreateInstance().DIA) < 90) { lb_DIA.ForeColor = Color.FromArgb(2, 234, 17); } if (Convert.ToInt32(SerialPortClass.CreateInstance().DIA) >= 90) { lb_DIA.ForeColor = Color.FromArgb(234, 85, 3); } } lb_SYS.Text = SerialPortClass.CreateInstance().SYS; //收缩压 lb_DIA.Text = SerialPortClass.CreateInstance().DIA; //舒张压 if (string.IsNullOrEmpty(SerialPortClass.CreateInstance().MsbCatch)) { lb_MBSCatch.Visible = false; } else { lb_MBSCatch.Visible = true; } lb_MBSCatch.Text = SerialPortClass.CreateInstance().MsbCatch; } catch (Exception ex) { WatchDog.Write(@"获取血压:", ex); } }
private void timer_Spo2_Tick(object sender, EventArgs e) { try { lb_Spo2.ForeColor = Color.FromArgb(233, 155, 1); lbBloodOxygenBpm.ForeColor = Color.FromArgb(233, 155, 1); if (!string.IsNullOrEmpty(SerialPortClass.CreateInstance().Spo2)) { if (Convert.ToInt32(SerialPortClass.CreateInstance().Spo2) >= 94) { lb_Spo2.ForeColor = Color.FromArgb(2, 234, 17); } } lb_Spo2.Text = SerialPortClass.CreateInstance().Spo2; if (!string.IsNullOrEmpty(SerialPortClass.CreateInstance().Bpm)) { if (Convert.ToInt32(SerialPortClass.CreateInstance().Bpm) >= 60 && Convert.ToInt32(SerialPortClass.CreateInstance().Bpm) <= 100) { lbBloodOxygenBpm.ForeColor = Color.FromArgb(2, 234, 17); } if (Convert.ToInt32(SerialPortClass.CreateInstance().Bpm) > 100) { lbBloodOxygenBpm.ForeColor = Color.FromArgb(234, 85, 3); } } lbBloodOxygenBpm.Text = SerialPortClass.CreateInstance().Bpm; if (string.IsNullOrEmpty(SerialPortClass.CreateInstance().SpoCatch.ToString()) || SerialPortClass.CreateInstance().SpoCatch.ToString() == "——") { lb_SpoCatch.Visible = false; } else { lb_SpoCatch.Visible = true; } lb_SpoCatch.Text = SerialPortClass.CreateInstance().SpoCatch.ToString(); } catch (Exception ex) { WatchDog.Write(@"获取血氧:", ex); } }
public DllMain(string basePath) { _log = new Logger(basePath + "\\log", EnumLogLevel.LogLevelAll, true, 100); _log.TraceInfo("==========================================================================="); _log.TraceInfo("===================== START DllVersion: " + DllVersion <DllMain> .AssemblyVersion + " ====================="); _cfg = new Config(basePath, _log); _cfg.LoadConfigAll(); _addr = 0x83; _sync = 0x55; _k1 = 0x01; _k2 = 0x8A; _k3 = 0x75; _loopInterval = 20; _retryTimes = 2; _sp = new SerialPortClass(_cfg.Setting.Data.SerialPort, _cfg.Setting.Data.SerialBaud, Parity.None, 8, StopBits.One); try { _sp.OpenPort(); _sp.DataReceived += new SerialPortClass.SerialPortDataReceiveEventArgs(SerialDataReceived); _frames = new List <Frame>(); } catch (Exception ex) { _log.TraceError("Open serial port error: " + ex.Message); throw; } }
static void Main(string[] args) { _sp = new SerialPortClass("COM6", 9600, Parity.None, 8, StopBits.One); try { _sp.OpenPort(); _sp.DataReceived += new SerialPortClass.SerialPortDataReceiveEventArgs(SerialDataReceived); _frames = new List <Frame>(); Console.WriteLine("Waiting for command"); } catch (Exception ex) { Console.WriteLine("Open serial port error: " + ex.Message); throw; } try { while (true) { if (_frames.Count > 0) { if (_frames.First().Baud == 0x05 && _frames.First().Data == 0x83) { _sp.SendData(new byte[] { 0x96, 0x55 }, 0, 2); _sp.SendData(new byte[] { 0x96, 0x01 }, 0, 2); _sp.SendData(new byte[] { 0x96, 0x8A }, 0, 2); } else if (_frames.First().Baud == 0x96 && _frames.First().Data == 0x75) { ++_0300Times; SendData(0xF6, "ABSMadeByAPG"); } else if (_frames.First().Baud == 0x96 && _frames.First().Data != null) { List <byte> cmd = new List <byte>(); RecvCMD(cmd); switch (cmd[0]) { case 0x03: switch (cmd[2]) { case 0x00: switch (++_0300Times) { case 1: SendData(0xF6, "ABSMadeByAPG"); break; case 2: SendData(0xF6, "APG3550700E3"); break; case 3: SendData(0xF6, "SWV ZHU V500"); break; case 4: SendData(0xF6, new byte[] { 0x00, 0x07, 0xFA, 0x00, 0x01 }); _0300Times = 0; break; } break; case 0x05: // 不处理 _0300Times = 0; SendData(0x09, Array.Empty <byte>()); break; case 0x06: // 系统复位退出 _0300Times = 0; _0404Times = 0; _syncNum = 0; break; case 0x07: SendData(0xFC, new byte[] { 0x01, 0x1B, 0x05, 0x01, 0x1D, 0x05, 0x01, 0x22, 0x05, 0x01, 0x1F, 0x05, 0x01, 0x2D, 0x05, 0x01, 0x2E, 0x05 }); _0300Times = 0; break; case 0x09: // 不处理 _0300Times = 0; break; default: _0300Times = 0; break; } break; case 0x04: switch (cmd[2]) { case 0x04: switch (++_0404Times) { case 1: SendData(0xF5, new byte[] { 0x04, 0xFC }); break; case 2: SendData(0xF5, new byte[] { 0x02, 0xA1 }); break; case 3: SendData(0xF5, new byte[] { 0x02, 0xA3 }); break; case 4: SendData(0xF5, new byte[] { 0x02, 0xA4 }); break; case 5: SendData(0xF5, new byte[] { 0x02, 0xA5 }); break; case 6: SendData(0xF5, new byte[] { 0x02, 0xA6 }); break; case 7: SendData(0xF5, new byte[] { 0x02, 0xA3 }); break; case 8: SendData(0xF5, new byte[] { 0x02, 0xA2 }); break; case 9: SendData(0xF5, new byte[] { 0x02, 0xA1 }); break; case 10: SendData(0xF5, new byte[] { 0x02, 0xA8 }); break; case 11: SendData(0xF5, new byte[] { 0x02, 0xA9 }); break; case 12: SendData(0xF5, new byte[] { 0x02, 0xAA }); break; case 13: SendData(0xF5, new byte[] { 0x02, 0xAB }); break; case 14: SendData(0xF5, new byte[] { 0x02, 0xA8 }); break; case 15: SendData(0xF5, new byte[] { 0x02, 0xA2 }); break; case 16: SendData(0xF5, new byte[] { 0x02, 0xA1 }); break; case 17: SendData(0xF5, new byte[] { 0x02, 0xAD }); break; case 18: SendData(0xF5, new byte[] { 0x02, 0xAE }); break; case 19: SendData(0xF5, new byte[] { 0x02, 0xAF }); break; case 20: SendData(0xF5, new byte[] { 0x02, 0xB0 }); break; case 21: SendData(0xF5, new byte[] { 0x02, 0xAD }); break; case 22: SendData(0xF5, new byte[] { 0x02, 0xA2 }); break; case 23: SendData(0xF5, new byte[] { 0x02, 0xA1 }); break; case 24: SendData(0xF5, new byte[] { 0x02, 0xB2 }); break; case 25: SendData(0xF5, new byte[] { 0x02, 0xB3 }); break; case 26: SendData(0xF5, new byte[] { 0x02, 0xB4 }); break; case 27: SendData(0xF5, new byte[] { 0x02, 0xB5 }); break; case 28: SendData(0xF5, new byte[] { 0x02, 0xB2 }); break; case 29: SendData(0x0A, new byte[] { 0xAF }); _0404Times = 0; break; } break; case 0x29: SendData(0xE7, new byte[] { 0x01, 0x01, 0x01, 0x01 }); _0404Times = 0; break; default: _0404Times = 0; break; } break; } } _frames.Clear(); } } } catch (Exception ex) { Console.WriteLine(ex.Message); Console.ReadKey(); throw; } }
public FormLogin() { InitializeComponent(); SerialPortClass.CreateInstance().GetUrineAnalyzerComs(); }