标题:VFP 通过 COM 口接收数据问题
取消只看楼主
youyaoshuan
Rank: 1
等 级:新手上路
威 望:1
帖 子:33
专家分:5
注 册:2008-12-20
结帖率:50%
 问题点数:0 回复次数:3 
VFP 通过 COM 口接收数据问题
在网上搜到一段接收COM口的代码:
(2) 在VFP中,建立一个新的表单
(3) 插入标签 (命名为重量)  
(4) 插入文本 (命名为 TEXT1,用来显示重量数据)
(5) 建立 Microsoft Communication Control1 控件 在工具栏中点插入ole容器控件,选择 Microsoft Communication Control 控件(NAME 为 OLECONTRO1)
(6) 设置 commport = 2 (串口2)
(7) 设置 settings = 1200,e,7,2(1200 波特率,偶校验,7 个数据位,1 个停止位)
(8) 设置 Rthreshold = 17 表示当缓冲区中有 17 个数据等待接受时,产生 OnComm
(9) 在表单的 init 事件中写 thisform.olecontrol1.portopen=.t.,
      释放事件中写 thisform.olecontrol1.portopen = .f.  
(10) 在控件 olecontrol1 的 OnComm 事件中写如下程序代码   
      if = 2    && 缓冲区中有 17 个字符等待接受,产生 OnComm 事件   
      dbbl=subs(this.input,1,17)   && 取串口数据   
      thisform.text1.value=subs(dbbl,5,6)  && 取字符串中的重量数据   
      thisform.refresh
      endif
为什么运行的时候是一串数字和问号在TEXT1中循环滚动?怎么才能接收到正确的称重数据,并在TEXT1中显示出来,让TEXT1中的内容和电子称显示屏上显示的数据相同?
搜索更多相关主题的帖子: Microsoft settings 工具栏 波特率 缓冲区 
2014-09-27 21:40
youyaoshuan
Rank: 1
等 级:新手上路
威 望:1
帖 子:33
专家分:5
注 册:2008-12-20
得分:0 
期待高手帮助
2014-09-27 21:42
youyaoshuan
Rank: 1
等 级:新手上路
威 望:1
帖 子:33
专家分:5
注 册:2008-12-20
得分:0 
和这个贴子上的情况不一样
2014-09-28 09:04
youyaoshuan
Rank: 1
等 级:新手上路
威 望:1
帖 子:33
专家分:5
注 册:2008-12-20
得分:0 
解决了,是SETTING值的问题,把E改成N就好了
2014-10-27 15:30



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-436672-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.170168 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved