5480|6

75

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

用C#和MSComm控件和万用表通信,收不到数据 [复制链接]

因项目需要,我需要从一块带RS232串口的数字万用表读取电压数据。该万用表串口设置如下:波特率 19200,停止位 1,数据位 7,奇偶校验 odd。

  我用C#和MSComm控件写了个简单的接收程序。部分代码如下:

//串口设置

  axMSComm1.CommPort = Convert.ToSByte("1");
  axMSComm1.RTSEnable = true;
   
    //收到1字符就触发OnComm事件
  axMSComm1.RThreshold = 1;
   
    //串口参数设置
  axMSComm1.Settings = "19200,O,7,1";   

  axMSComm1.InBufferSize = 1024;
  axMSComm1.OutBufferSize = 512;
  
    //设为文本模式
  axMSComm1.InputMode = MSCommLib.InputModeConstants.comInputModeText;
  axMSComm1.InputLen = 0;
  axMSComm1.NullDiscard = false;
                               
  axMSComm1.PortOpen  = true;

//OnComm函数

  string strReadBuffer = "";
  if(axMSComm1.InBufferCount > 0)
  {
    strReadBuffer = axMSComm1.Input.ToString();
    ReadData.Text += strReadBuffer;
  }

  现在,我用虚拟串口工具 VSPD 和 串口调试助手 SCommAssists(http://www.gjwtech.com/myprogram.htm)进行测试,我的程序能正常接收数据,但当尝试与万用表通信时,无法收到数据。

  我用SCommAssists与万用表通信,同样无法收到数据。但使用另一串口调试软件(http://www.cmsoft.cn/?id=204)时,却可以正常接收万用表数据。收到的数据如下:

  //以16进制显示时:
  30 30 33 38 38 3B 38 30 36 0D 0A 30 30 33 38 38 3B 38 30 36 0D 0A

  //以ASCII码显示时:
  00388;806
  00488;806


  万用表工作方式:当万用表处于串口模式时,即不断发送数据至串口。


  请问大家,有什么可能的原因?如何解决?


   
  
  

最新回复

net
硬件短信平台 用短信猫做短信平台,比较稳定,不受网络安全影响,响应及时,适合一些重要的安全性高的业务需求,但是发送速度有限制,一般是800条/小时 sp短信通道发送速度快,但是由于接入的开发商很多,在服务器不多的情况下,必然会排队,有时繁忙时提交一条短信,第二天才能收到,而且网络不正常时,也会影响使用 建议一些管理软件用短信猫做短信平台 1.方寸GSM-Modem 短信平台 GSM-Modem 短信平台,无需联网,只需一台电脑,一个短信猫(或手机),一个短信开发接口,就可轻松建立短信服务器,可实现短信收发,短信互动等功能,一台电脑可以连接多个短信猫硬件,从而提高吞吐量。 2.方寸短信数据库接口(手机短信接口,短信二次开发控件) 通过本数据库接口,能使你现有的系统(如OA、CRM、ERP等系统)轻松实现无线办公功能,无论你用的是哪种开发语言(VB\VC\VFP\asp\jsp\java\pb\delphi...),只要你的系统能读写数据库即可对接!你仅需要在指定的表中添加记录,本接口程序就自动进行发送短信了,收到的短信会自动保存到数据库里,所以,您不需要了解任何有关数据通信方面的知识,就可实现手机短信的收发等功能! 电话:0755-25996144/25536144 联系人:陈先生 网址:http://www.fcwww.com qq:393376247   详情 回复 发表于 2007-4-13 15:16
点赞 关注

回复
举报

66

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
up~~
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
记得一个同事用C#来做的时候,他得定时地去扫COM的缓冲区
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

4
 
先用调试工具看看是否通信正常
然后在测试代码通信是否正常
 
 
 

回复

58

帖子

0

TA的资源

一粒金砂(初级)

5
 
flowercity(菜农) ( ) 信誉:95    Blog  2007-02-01 21:52:27  得分: 0  


   先用调试工具看看是否通信正常
   然后在测试代码通信是否正常

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

我用四种串口工具测过,有2种正常,2种不正常。

我的代码测试时,只要串口上插了万用表自带的串口线(不接万用表),一旦打开串口,MSComm控件就会报comEventBreak错误(错误代码1001:通信中断),什么也收不到。但是我的代码可以正常收到其他外设发来的字符串。

  

 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

6
 
你在试一下初始参数了。可能是停止位或校验位错误。
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

7
 
硬件短信平台
用短信猫做短信平台,比较稳定,不受网络安全影响,响应及时,适合一些重要的安全性高的业务需求,但是发送速度有限制,一般是800条/小时
sp短信通道发送速度快,但是由于接入的开发商很多,在服务器不多的情况下,必然会排队,有时繁忙时提交一条短信,第二天才能收到,而且网络不正常时,也会影响使用
建议一些管理软件用短信猫做短信平台
1.方寸GSM-Modem 短信平台

GSM-Modem 短信平台,无需联网,只需一台电脑,一个短信猫(或手机),一个短信开发接口,就可轻松建立短信服务器,可实现短信收发,短信互动等功能,一台电脑可以连接多个短信猫硬件,从而提高吞吐量。

2.方寸短信数据库接口(手机短信接口,短信二次开发控件)

通过本数据库接口,能使你现有的系统(如OA、CRM、ERP等系统)轻松实现无线办公功能,无论你用的是哪种开发语言(VB\VC\VFP\asp\jsp\java\pb\delphi...),只要你的系统能读写数据库即可对接!你仅需要在指定的表中添加记录,本接口程序就自动进行发送短信了,收到的短信会自动保存到数据库里,所以,您不需要了解任何有关数据通信方面的知识,就可实现手机短信的收发等功能!
电话:0755-25996144/25536144
联系人:陈先生
网址:http://www.fcwww.com
qq:393376247
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表