| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1379 人关注过本帖
标题:求助VC6 MSComm控件串口通信问题。。
只看楼主 加入收藏
zsq408
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-11-10
收藏
 问题点数:0 回复次数:4 
求助VC6 MSComm控件串口通信问题。。
vc MSComm控件串口通信时,通过调试接收缓存区是有数据的,但用GetInput()无法获取接收数据?
如果这段代码没问题的话,一般可能是哪里出问题了?

接收数据代码如下:
void CJsDlg::OnOnCommMscomm1()  
{
// TODO: Add your control notification handler code here
  VARIANT m_input1;
  COleSafeArray m_input2;   
  long length,i;   
  BYTE data[1024];   
  CString strJS,str;   
  int nn=m_MSComm2.GetCommEvent();   
  str.Format("%d",nn);   
  AfxMessageBox(str);   
  if(m_MSComm2.GetCommEvent()==2)//接收缓冲区内有字符   
  {  
  m_input1=m_MSComm2.GetInput();//读取缓冲区内的数据  
m_input2=m_input1;//将VARIANT型变量转换为ColeSafeArray型变量   
length=m_input2.GetOneDimSize();//确定数据长度   
  for(i=0;i<length;i++)   
  m_input2.GetElement(&i,data+i);//将数据转换为BYTE型数组   
  for(i=0;i<length;i++)//将数组转换为Cstring型变量   
  {   
  BYTE a=* (char *)(data+i);   
  strJS.Format("%c",a);   
  m_strJS+=strJS;      
  }   
  UpdateData(FALSE);//更新编辑框内容
  }   
}

[ 本帖最后由 zsq408 于 2011-11-10 11:32 编辑 ]
搜索更多相关主题的帖子: 通信 control 缓冲区 
2011-11-10 11:01
红色警戒
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:19
帖 子:444
专家分:2967
注 册:2005-11-20
收藏
得分:0 
只有缓冲区满才会触发这个事件OnOnCommMscomm1,看看SetRThreshold()设置的缓冲区多大。

[ 本帖最后由 红色警戒 于 2011-11-12 19:52 编辑 ]

2011-11-12 19:42
zsq408
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-11-10
收藏
得分:0 
以下是引用红色警戒在2011-11-12 19:42:42的发言:

只有缓冲区满才会触发这个事件OnOnCommMscomm1,看看SetRThreshold()设置的缓冲区多大。
初始化时m_MSComm2.SetRThreshold(1);//接收缓冲区有1个及1个以上字符时,将引发接收数据的OnComm事件
所以不是这个问题,同样的工程自己的机子接收不到数据,但用别人的机子运行就可以接收导数据,为什么?
2011-11-14 12:46
红色警戒
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:19
帖 子:444
专家分:2967
注 册:2005-11-20
收藏
得分:0 
回复 3楼 zsq408
用串口调试大师试试看,是不是你机器的串口有为题?

2011-11-14 15:02
CycloneSir
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2011-10-4
收藏
得分:0 
应该要通过协议传输吧,需要定义一个Protol协议程序,才能与下位机握手言和
2011-11-14 15:54
快速回复:求助VC6 MSComm控件串口通信问题。。
数据加载中...
 
   



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

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