VS2010 MFC串口接收与发送问题 10

voidCmoniDlg::OnCommMscomm1(){//TODO:Addyourmessagehandlercodeherestaticunsignedintcn... void CmoniDlg::OnCommMscomm1()
{
// TODO: Add your message handler code here
static unsigned int cnt=0;
VARIANT variant_inp;
COleSafeArray safearray_inp;
long len,k;
unsigned int data[1024]={0};
byte rxdata[1024]; //设置 BYTE 数组
CString strtemp;

if(m_mscomm.get_CommEvent()==2) //值为 2 表示接收缓冲区内有字符
{
cnt++;
variant_inp=m_mscomm.get_Input(); //读缓冲区消息
safearray_inp=variant_inp; ///变量转换
len=safearray_inp.GetOneDimSize(); // safearray_inp.GetElement(&k,rxdata+k); 得到有效的数据长度
for(k=0;k<len;k++)
{
safearray_inp.GetElement(&k,rxdata+k);
}

unsigned int jy=0;
//jy= CRC16(rxdata,6);
unsigned char panduan[2];
//panduan[0]=jy;
//panduan[1]=jy>>8;
panduan[0]=0xDB;
panduan[1]=0x85;
unsigned int result[12]={0};

unsigned char td[15];
CByteArray array;
array.RemoveAll();
array.SetSize(15);

for(int i = 0; i < 15; i++)
array.SetAt(i,td[i]);
m_mscomm.put_Output(COleVariant(array));

UpdateData(false); //更新编辑框内容
}

//m_mscomm.put_Output(COleVariant(m_EditSend));//发送数据

}
这个是程序,我删减了一些,主要功能是串口软件发送一帧数据。这个软件以一帧数据位触发事件并校验然后按帧格式返回数据,可是这接收半段好像出了问题。不能接收串口数据。求大神解答~~
展开
 我来答
杭州同济医院13
2015-06-12 · TA获得超过864个赞
知道大有可为答主
回答量:2494
采纳率:0%
帮助的人:1834万
展开全部
ActiveX控件用于Web的过程是将控件嵌入主页中,用户通过浏览器访问该主页时,将主页中的控件下载,并在用户机器上注册,以后就可在用户的浏览器上运行。
控件下载一次后就驻留在用户本地机器上,下次再访问相同的主页时,可不再下载该控件,而是直接运行用户本地的控件。这里控件容器就是浏览器,用户不需要通过浏览器调用控件的属性或方法。
因此,开发面向Web的ActiveX控件比开发桌面的控件还要简单些,所复杂的是如何将该控件很好地嵌入主页,使用户能正常浏览。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式