标题:虚拟串口vc++调试问题?
只看楼主
喜鹊王子
Rank: 1
等 级:新手上路
帖 子:105
专家分:0
注 册:2012-12-25
结帖率:89.74%
 问题点数:0 回复次数:1 
虚拟串口vc++调试问题?
我的笔记本本身是没有COM口的,插上LM3S9B96嵌入式微控制器后,生成一个虚拟串口:

利用这个虚拟串口,我根据书上的例子编了一个调试程序,调试时,数据发送不出去,不知道什么原因:
BOOL CMSCommTestDlg::OnInitDialog()
{
  ....
  m_ctrlComm.SetCommPort(4);//选择COM4
  m_ctrlComm.SetInputMode(1);//输入方式为二进制方式
  m_ctrlComm.SetInBufferSize(1024);//设置串口接受缓冲区大小为1024字节
  m_ctrlComm.SetOutBufferSize(512);//设置串口发送缓冲区大小为512字节
  m_ctrlComm.SetSettings("9600,n,8,1");//波特率为9600,无校验,8位数据位,1位停止位
  m_ctrlComm.SetPortOpen(TRUE);//打开串口
  m_ctrlComm.SetRThreshold(1);
  m_ctrlComm.SetInputLen(0);//设置当前接收区数据长度为0
  m_ctrlComm.SetInBufferCount(0);
 
}
//..............................................
void CMSCommTestDlg::OnComm()
{
    // TODO: Add your control notification handler code here
    VARIANT variant;
    COleSafeArray safearray;
    LONG len,k;
    BYTE rxdata[2048],bt;//设置BYTE数组
    CString strtemp;
    if(m_ctrlComm.GetCommEvent()==2)
      {
        variant=m_ctrlComm.GetInput();
        safearray=variant;
        len=safearray.GetOneDimSize();
        for(k=0;k<len;k++)
        safearray.GetElement(&k,rxdata+k);
        for(k=0;k<len;k++)
     {      
       bt=*(char*)(rxdata+k);
           strtemp.Format("%c",bt);
           m_strEditRXData+=strtemp;   
      }
      }
      UpdateData(FALSE);
}
//..............................................
void CMSCommTestDlg::OnButtonManualSend()
{
    // TODO: Add your control notification handler code here
    UpdateData(TRUE);
    m_ctrlComm.SetOutput(COleVariant(m_strEditTXData));
}
//..................................................


[ 本帖最后由 喜鹊王子 于 2013-1-15 16:15 编辑 ]
搜索更多相关主题的帖子: 二进制 缓冲区 
2013-01-15 16:01
喜鹊王子
Rank: 1
等 级:新手上路
帖 子:105
专家分:0
注 册:2012-12-25
得分:0 
后来莫名其妙的成功了,没有错误,哈哈。。。。多谢大家的阅读!!!

路漫漫其修远兮,吾将上下而求索。
2013-01-15 17:23



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




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

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