mfc 串口接收数据显示 自动回复问题

tomorrow~ 2016-10-06 11:56:33
mfc 串口通信中,怎么表示当前收到的内容 (以前收到的内容依然在Edit里显示),
比如,第一次接收到的是数字1,第二次是2,第三次是3,那这个3用什么来表示。
LONG CSerialPortTestDlg::OnComm(WPARAM ch, LPARAM port) //串口数据接收
{

m_strEditReceiveMsg += (char)ch; //接收数据显示
UpdateData(FALSE);

if(m_strEditReceiveMsg==_T("1"))
{
m_strEditSendMsg==_T("Y");
m_SerialPort.WriteToPort((char *)(LPCTSTR)m_strEditSendMsg); //收到1则回复Y
}
return 0;
}
在上面这段代码中,只有第一次发送1时才会自动回复Y,从第二次开始就不再自动回复,各位大神有啥好办法没
...全文
224 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
tomorrow~ 2016-10-07
  • 打赏
  • 举报
回复
没看懂,能不能稍微具体一点,谢谢啦
schlafenhamster 2016-10-07
  • 打赏
  • 举报
回复
if((char)ch >= '1') && ( (char)ch <= '9')) { ....... }
schlafenhamster 2016-10-07
  • 打赏
  • 举报
回复
//if(m_strEditReceiveMsg==_T("1")) //{ m_strEditSendMsg==_T("Y"); m_SerialPort.WriteToPort((char *)(LPCTSTR)m_strEditSendMsg); //收到 any 回复Y //}
tomorrow~ 2016-10-07
  • 打赏
  • 举报
回复
这个我懂了,那要是换成字符串,或者是汉字或者是,标点符号之类的呢

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧