2 qq 29764123 qq_29764123 于 2016.04.19 19:15 提问

串口通信异或问题 最头疼的一个问题 4C

如图 在编辑框中有一组数据 现在要对这些数据进行异或运算,现在在发送按钮下编写代码 如图第二张,这里面有自己写的一些代码 但是有很大的问题 。麻烦懂得师傅看一看,谢谢!图片图片

10个回答

qq_29764123
qq_29764123   2016.04.19 19:23

有没有懂的大哥大姐 只要解决这问题就结束了 小弟已经想了好多天了

qq_29764123
qq_29764123   2016.04.19 19:41

完蛋了 这下废的了 求救了

CSDNXIAOD
CSDNXIAOD   2016.04.19 21:01

串口通信的线程同步问题
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

qq_29764123
qq_29764123 不是啊 只是对读取过来的编辑框内容或者叫做16进制串进行异或
一年多之前 回复
qq_29764123
qq_29764123   2016.04.19 22:22

没人了吗?是不是mfc已经过时了图片说明图片说明图片说明

qq_29764123
qq_29764123   2016.04.20 08:18

神啊 快来拯救我这个菜鸟吧

caozhy
caozhy   Ds   Rxr 2016.04.20 08:20

字太小了,请你用电脑登录,以文本形式贴出代码

qq_29764123
qq_29764123 文本在下面
一年多之前 回复
qq_29764123
qq_29764123   2016.04.20 11:02

图片说明
void Ctest4Dlg::OnBnClickedButtonSend()//发送按钮功能函数
{
if(!m_ctrlcomm.get_PortOpen())//判断是否打开串口
AfxMessageBox(_T("请打开串口"));
else
{
UpdateData(TRUE);
if(m_ctrlHexSend.GetCheck())//判断是否是自动发送
{
CByteArray hexdate;
int len=String2Hex(m_strTXDATA=m_strcontrolgroup+m_strspeedchoose+m_strdirection,hexdate);
m_ctrlcomm.put_Output(COleVariant(hexdate));
}
else
m_ctrlcomm.put_Output(COleVariant(m_strTXDATA=m_strcontrolgroup+m_strspeedchoose+m_strdirection));
}

}
目的是将编辑框收到的16进制串在发送按钮下进行异或校验,以上代码是发送代码

qq_29764123
qq_29764123   2016.04.20 13:18

Help!到现在还是没有做出来,附现在的代码;
void Ctest4Dlg::OnBnClickedButtonSend()//发送按钮功能函数
{
if(!m_ctrlcomm.get_PortOpen())//判断是否打开串口
AfxMessageBox(_T("请打开串口"));
else
{
UpdateData(TRUE);
if(m_ctrlHexSend.GetCheck())//判断是否是自动发送
{
CByteArray hexdate;
int len=String2Hex(m_strTXDATA=m_strcontrolgroup+m_strspeedchoose+m_strdirection,hexdate);
m_ctrlcomm.put_Output(COleVariant(hexdate));
UpdateData(FALSE);
/*****************************************************现在加入的代码**************************************************/
TCHAR array[100];
LPTSTR pBuffer =m_strRXData.GetBuffer();
memcpy(array, pBuffer, m_YH.GetLength() * sizeof(TCHAR));//向数组复制数据
m_strRXData.ReleaseBuffer();//m_strRXdata是接收编辑框的变量
int i,bcc;
bcc=array[0];
for(i=0;i>0;i++)
{
bcc=bcc^array[i+1];
}
SetDlgItemText(IDC_EDIT_YH,bcc);
}
else
m_ctrlcomm.put_Output(COleVariant(m_strTXDATA=m_strcontrolgroup+m_strspeedchoose+m_strdirection));
}

}
我该怎么将异或的值显示到m_YH变量所属的编辑框???还有异或写的对吗?

qq_29764123
qq_29764123   2016.04.20 19:38

没人会了吗?弄了一台能还是没有弄出来

qq_29764123
qq_29764123   2016.04.21 12:24

大神,求教啊,50C

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!