串口发送数据不成功.

shakira008 2006-07-20 09:05:19
你好, 我最近又碰到一难题。
LRESULT CEewriterDlg::OnSerialMsg (WPARAM wParam, LPARAM /*lParam*/)
{
CSerial::EEvent eEvent = CSerial::EEvent(LOWORD(wParam));
CSerial::EError eError = CSerial::EError(HIWORD(wParam));

if (eEvent & CSerial::EEventRecv)
{
}
}
接下来我用一线程做数据处理和发送..
void CEewriterDlg::WriteEprom()
{
char ch2 = '9';
CString strData[16],strTemp, strTemp1;
CString strEpromData;
int iCount = m_cListEprom.GetItemCount();
DWORD dwSend = 0;
if (iCount) {
for (int i = 0; i < 1; i++) {
for (int m = 1; m < 17 ; m++) {
strEpromData = m_cListEprom.GetItemText(i, m);
strTemp.Format("%X", i);
strTemp1.Format("%X", m-1);
strTemp = strTemp + strTemp1;
strEpromData = strEpromData + "\n";
strTemp = strTemp + "\n";
m_serial.Write(&ch2, 1);
Sleep(2);
m_serial.Write(strTemp, strTemp.GetLength());
Sleep(2);
m_serial.Write(strEpromData, strEpromData.GetLength());
Sleep(2);
strTemp.Empty();
strEpromData.Empty();
strTemp1.Empty();
}
}
}
AfxMessageBox("已经成功写入1!");
}
发送的数据老是一部分正确,一部分错误,,似呼一些没有发过去..但又不知道为什么./? 希望你能指点一二..谢谢..
...全文
296 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
双杯献酒 2006-07-20
  • 打赏
  • 举报
回复
GZ
DentistryDoctor 2006-07-20
  • 打赏
  • 举报
回复
用SetEvent/WaitEvent来代替Sleep(2)
DentistryDoctor 2006-07-20
  • 打赏
  • 举报
回复
write/Sleep(2)?
why?

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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