private void OnScan() { while (true) { if (cancel) { return; } System.Threading.Thread.Sleep(50); string er = string.Empty; bool result = true; string status = string.Empty; string strVal = string.Empty; CEL_ReadData rData = new CEL_ReadData(); if (comMon.ReadELData(curAddr, rData, out er)) { status += rData.ONOFF.ToString() + "|"; if (rData.Status != "OK") { status += rData.Status; } for (int j = 0; j < comMon.maxCH; j++) { strVal += rData.Volt[j].ToString("0.00") + "V-"; strVal += rData.Load[j].ToString("0.00") + "A|"; } } else { result = false; } ShowGrid(curAddr, result, status, strVal); if (curAddr < System.Convert.ToInt16(txtEndAddr.Text)) { curAddr++; rowNum++; } else { ShowEnd(); return; } } }
private void btnReadData_Click(object sender, EventArgs e) { try { btnReadData.Enabled = false; if (comMon == null) { labStatus.Text = "请确定串口是否打开?"; labStatus.ForeColor = Color.Red; return; } if (txtAddr.Text == "") { labStatus.Text = "请输入设置地址号."; labStatus.ForeColor = Color.Red; return; } int wAddr = System.Convert.ToInt16(txtAddr.Text); string er = string.Empty; CEL_ReadData rData = new CEL_ReadData(); if (!comMon.ReadELData(wAddr, rData, out er)) { labStatus.Text = "读取模块数据失败:" + er; labStatus.ForeColor = Color.Red; return; } labStatus.Text = "读取模块数据成功."; labStatus.ForeColor = Color.Blue; for (int i = 0; i < comMon.maxCH; i++) { labV[i].Text = rData.Volt[i].ToString("0.00"); labVs[i].Text = rData.Vs[i].ToString("0.00"); labCur[i].Text = rData.Load[i].ToString("0.00"); } labSatus.Text = rData.Status; labOnOff.Text = rData.ONOFF.ToString(); labT0.Text = rData.NTC_0.ToString(); labT1.Text = rData.NTC_1.ToString(); labOCP.Text = rData.OCP.ToString(); labOPP.Text = rData.OPP.ToString(); labOTP.Text = rData.OTP.ToString(); labOVP.Text = rData.OVP.ToString(); } catch (Exception) { throw; } finally { btnReadData.Enabled = true; } }
private void timer1_Tick(object sender, EventArgs e) { try { int wAddr = System.Convert.ToInt16(txtAddr.Text); string er = string.Empty; CEL_ReadData rData = new CEL_ReadData(); if (!comMon.ReadELData(wAddr, rData, out er)) { labStatus.Text = "读取模块数据失败:" + er + "-->" + (count++).ToString(); labStatus.ForeColor = Color.Red; return; } labStatus.Text = "读取模块数据成功-->" + (count++).ToString(); labStatus.ForeColor = Color.Blue; for (int i = 0; i < comMon.maxCH; i++) { labV[i].Text = rData.Volt[i].ToString("0.00"); labVs[i].Text = rData.Vs[i].ToString("0.00"); labCur[i].Text = rData.Load[i].ToString("0.00"); } labSatus.Text = rData.Status; labOnOff.Text = rData.ONOFF.ToString(); labT0.Text = rData.NTC_0.ToString(); labT1.Text = rData.NTC_1.ToString(); labOCP.Text = rData.OCP.ToString(); labOPP.Text = rData.OPP.ToString(); labOTP.Text = rData.OTP.ToString(); labOVP.Text = rData.OVP.ToString(); } catch (Exception ex) { labStatus.Text = ex.ToString(); labStatus.ForeColor = Color.Red; } }