串口通信问题

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;
...全文
47 4 点赞 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
我不懂电脑 2011-09-07
不建议用事件方式,阻塞方式更方便。
  • 打赏
  • 举报
回复
zzbinfo 2011-09-07
如果是这种握手通讯,用串口,要主意缓冲区的设置不能大,而且要每次都清除缓冲区,用现成的控件做不知道行不行,我原来都是用API和多线程实现的
  • 打赏
  • 举报
回复
wx_860825 2011-09-07
如果接受的不正确,如果重新发送命令;如果接受的正确,又该如何发送其余的命令呢
  • 打赏
  • 举报
回复
zzbinfo 2011-09-07
串口通讯接收数据的时候不是这样处理的,应该是在收到数据事件里面处理而且还要判断接收的数据的正确性
  • 打赏
  • 举报
回复
相关推荐
发帖
网络及通讯开发
创建于2007-08-02

1300

社区成员

C++ Builder 网络及通讯开发
申请成为版主
帖子事件
创建了帖子
2011-09-07 09:22
社区公告
暂无公告