串口通信问题

wx_860825 2011-09-07 09:22:26
FHCBT窗体中

//读取数据
buttonclick事件中
void __fastcall TFHCBT::FHCBT_readClick(TObject *Sender)
{
Fmain->Comm->WriteCommData(&D[0],num);
Edit1->Text=Fmain->RecStr;???发送数据后,为啥接受到的RecStr为空}
Fmain窗体中
//接受数据
void __fastcall TFmain::CommReceiveData(TObject *Sender, Pointer Buffer,
WORD BufferLength)
{// RecStr 为公有字符串变量,能接受到值,值不为空
RecStr = S;
...全文
66 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
我不懂电脑 2011-09-07
  • 打赏
  • 举报
回复
不建议用事件方式,阻塞方式更方便。
zzbinfo 2011-09-07
  • 打赏
  • 举报
回复
如果是这种握手通讯,用串口,要主意缓冲区的设置不能大,而且要每次都清除缓冲区,用现成的控件做不知道行不行,我原来都是用API和多线程实现的
wx_860825 2011-09-07
  • 打赏
  • 举报
回复
如果接受的不正确,如果重新发送命令;如果接受的正确,又该如何发送其余的命令呢
zzbinfo 2011-09-07
  • 打赏
  • 举报
回复
串口通讯接收数据的时候不是这样处理的,应该是在收到数据事件里面处理而且还要判断接收的数据的正确性

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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