串口通信

我用mscomm控件做串口通信,wincc和电参数测量仪通信.串口已打开,发送十六进制数后,电参数测量仪没有回传参数.现在问题是:我不知道如何判断发送成功,接收成功.我用Text控件接收电参数测量仪传回的参数,如何变成十六进制显示出来.
 各位大虾,帮个忙啊;搞两天都没搞出来!急ing

问题补充:
现在可以和电参数测量仪通信上了;但是我想把接收的参数转换为十进制如何转换啊?

最佳答案

1.做串行通讯不能着急,要循序渐进。先不要急着和设备通讯,这样不好诊断发送的内容以及发送是否成功。装个虚拟串口软件(推荐VSPD XP),添加虚拟端口对(如COM3,COM4),当然如果的计算机有两个串口(如COM1,COM2)也可以用电缆将端口短接起来。
  WinCC使用COM3(COM1)端口,再使用串口调试工具使用COM4(COM2)端口来接收。
  2.网上关于16进制的资料很多,多利用网络资源:
  实现16进制接收实质就是按2进制接收 
  设置MSComm控件的属性InputMode = comInputModeBinary '二进制接收 
  接收后由HEX函数转为16进制字符串形式显示 
  Dim   ABuffer()  
  MSComm1.InputMode   =   comInputModeBinary 
  If   MSComm1.InBufferCount   >   0   Then 
   ABuffer   =   MSComm1.Input 
          Dim   iLoop
   Dim   ByteArrayToHexString
          ByteArrayToHexString   =   " " 
          For   iLoop   =   LBound(ABuffer)   To   UBound(ABuffer) 
                  ByteArrayToHexString   =   ByteArrayToHexString   &   Right( "0 "   &   Hex(ABuffer(iLoop)),   2)   &   "   " 
          Next   iLoop 
          ByteArrayToHexString   =   Trim(ByteArrayToHexString) 
   Text4.Text   =   "接收数据: "   &   ByteArrayToHexString(ABuffer) 
  End   If

 补充:添加成对端口了吗?WinCC和串口调试软件中的COM设置需要一致(端口号除外).

提问者对于答案的评价:
谢谢你的回答;但是照你说的做行不通;我采用VB编了;还是得谢谢你门

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc275962.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 下午12:00
下一篇 2019年6月11日 下午12:01

相关推荐

  • WinCC三维画面问题?

    看过别人做的一些项目,请问那些三位立体画面是通过什么方法画的啊,图库里面的画面和有限,可以通过什么途径画出那些三位画面然后弄到WinCC里面去,需要学习什么软件啊 最佳答案 你还是…

    SIMATIC WinCC 2019年6月11日
  • 归档变量到EXCEL

    现在已经制作好EXCEL报表范本,范本中需要几个监测的变量的值,而且是每过半个小时写入一次一共写入8次,为R22C3至R22C10这几个空写入的是一个变量TAG1;R23C3至R2…

    SIMATIC WinCC 2019年6月11日
  • wincc共享文件夹Simatic Shell中项目的互连是什么意思

    wincc共享文件夹Simatic Shell中项目的互连是什么意思 最佳答案 WinCC项目分为单用户项目以及多用户项目。单用户项目即为单机项目,与其它计算机没有任何关…

    SIMATIC WinCC 2021年7月5日
  • WINCC6.0死机,重起再激活时,激活按钮变灰色,不可用

    WINCC6.0前段时间项目运行正常,突然一下子WINCC6.0死机不能动,系统是XP,正常.关掉WINCC6.0再重起时,激活不能用,电脑重新启动后还是一样. 最佳答案 1.重现…

    SIMATIC WinCC 2019年6月11日
  • WINCC修改报警值

    怎么在上位机修改报警值?例如一个模拟量已经组态好了报警值,然后根据需要操作员想修改报警值,怎么做?不可能让操作员去组态吧? 问题补充:感谢大家的帮助.但连接一个变量的话,一旦重新激…

    SIMATIC WinCC 2019年6月11日
  • wincc归档数据的备份

    wincc的归档数据存在哪里,如何对其进行备份? 问题补充:怎样在wincc运行中进行备份? 最佳答案 WinCC 项目管理器中打开变量记录。 在“变量记录”导…

    SIMATIC WinCC 2019年6月11日
  • 画面是否可以直接调用?

    现在做个改造项目,阀门、电机都用的WINCC库中的,点击他们弹出相对应的操作对话框,我是用画面窗口加VB程序弄的,但是运行时间长了总是点击出来有刷屏的现象(就是卡),我想问下能不能…

    SIMATIC WinCC 2019年6月11日
  • wincc v7.3 如何实现两个画面自动切换

    我做了两个画面,想实现两个画面间隔5分钟自动轮回切换,求各位大师指点如何实现?自己试用C脚本触发,但是一直报错,不知道什么原因?见图: 图片说明:    最佳答…

    2021年7月5日
  • wincc脚本赋值

    我建了一个文本变量16位字符集banci   然后对这个变量赋早班、中班、晚班的文本   c脚本应该怎么写啊 最佳答案 …

    SIMATIC WinCC 2021年7月5日
  • Simatic WinCC标准窗口

    WinCC中或者触摸屏中如何建立一个标准的弹出式串口,然后通过索引值,在不同的情况下现实需要的界面 最佳答案 1、用结构变量,参考:WinCC V7.3中如何使用结构变量…

    SIMATIC WinCC 2021年7月5日