当前位置: 代码迷 >> WinCE >> moble6 读电子称有关问题
  详细解决方案

moble6 读电子称有关问题

热度:8   发布时间:2016-04-28 12:49:13.0
moble6 读电子称问题。
moble6系统连接电子称
  我写的系统打开串口后。读取电子称的数据没有问题。但是电子称上数据有变化时,系统里面的数据不会变化。只有关闭系统后,在打开串口,才能读取到新的数据。下面是源码:
请各位大侠帮助一下。
   
  private String strReceive;
  public delegate void InvokeDelegate();
  public void Display()//--把数据传到listview中
  {
   
  string zs = "";
  string xs = "";
  ListViewItem ps = new ListViewItem();
  zs = strReceive.Substring(4, 4).ToString();
  xs = strReceive.Substring(8, 2).ToString();
  ps.Text = int.Parse(zs.ToString()).ToString() +"." + xs.ToString();
   
  // ps.Text = strReceive.ToString();
  tbReceive.Items.Clear();
  tbReceive.Items.Add(ps);
  sp.Close();
  sp.Open();
  }
  private void sp_DataReceived(object sender, SerialDataReceivedEventArgs e)//接收数据
  {
  int int_len = sp.BytesToRead;
  char[] bytes = new char[int_len];
  sp.Read(bytes, 0, int_len);
   
  for (int i = 0; i < bytes.Length; i++)
  {
  strReceive += bytes[i].ToString();
   
  }
  strReceive += "";
  tbReceive.BeginInvoke(new InvokeDelegate(Display));
   
   
  }
先拜谢了。

------解决方案--------------------
没有进行实时的更新。。
------解决方案--------------------
这个问题,和代码没什么关系,关键在电子称在数据变化时,有没有实时将数据送到串口。
------解决方案--------------------
如果电子称实在没有,就只能采用查询的方式来实现
------解决方案--------------------
是呀,你的电子秤有数据时,有实时发送到你的系统吗?然后你的系统有实时接收并处理的线程吗?
  相关解决方案