private static SerialPort serialPort1 = new SerialPort();//创建
SerialPort 对象
private void Form1_Load(object sender, EventArgs e)
{
LoadMeter();
}
private void timer1_Tick(object sender, EventArgs e)//timer控
件事件
{
string strRead = serialPort1.ReadExisting();
String strChar = "";
if (strRead != string.Empty || !"".Equals(strRead))
{
try
{
strChar = strRead.Substring(strRead.IndexOf
((Char)Convert.ToInt32("0002", 16)), strRead.LastIndexOf((Char)
Convert.ToInt32("0003", 16)) - strRead.IndexOf((Char)Convert.ToInt32
("0002", 16)));
}
catch (Exception)
{
//不处理
}
}
if (strChar.Length > 0)
{
string[] array = strChar.Split((Char)Convert.ToInt32
("0003", 16));
double[] doublePyte = new double[array.Length];
for (int i = 0; i )
{
string str1 = array[i].Substring(1, 8);
string str2 = str1.Insert(5, ".");
doublePyte[i] = Convert.ToDouble(str2);
label1.Text = doublePyte[i].ToString().Substring
(0, doublePyte[i].ToString().Length-1);//给label1赋值
}
}
}
private void LoadMeter()//加载时设置COM参数(load)
{
string[] portNames = SerialPort.GetPortNames();
if (portNames.Length > 0)
{
serialPort1.PortName = "COM1";
serialPort1.BaudRate = 1200;
serialPort1.Parity = 0;
serialPort1.StopBits = StopBits.One;
try
{
serialPort1.Open();
}
catch(Exception)
{
//...
}
}
else
{
MessageBox.Show("没打开COM");
}
}
///
/// 设置timer可用属性
///
///
///
private void button1_Click(object sender, EventArgs e)
{
timer1.Enabled = true;
}