多串口程序的几个问题请教?

alexmayer 2005-06-03 01:10:02
1、使用串口类(如CSerialPort)的情况下,串口类的实例一般作为哪个类的成员?View?Frame?Doc?App?

2、问答式协议如何主动发送数据?要求收到下位机的回应数据(长度不确定)后,立即发送下一帧数据该如何处理?

3、想把现成的串口类封装成动态连接库可行吗?要如何做?

4、某个串口连接的设备始终发送数据,数据靠某几个特殊字节分帧,程序应该如何处理?
...全文
182 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
alexmayer 2005-06-09
  • 打赏
  • 举报
回复
UP
oyljerry 2005-06-07
  • 打赏
  • 举报
回复
1,一般view或frame中
liuyan4794 2005-06-07
  • 打赏
  • 举报
回复
你的数据靠某几个特殊字节分帧
1。要么你在数据内容中不会出现特殊字节
2。要么你的帧有确定长度

你用一个缓冲区保存接收到的字节,然后再判断就可以了
nuaawenlin 2005-06-07
  • 打赏
  • 举报
回复
2、问答式协议如何主动发送数据?要求收到下位机的回应数据(长度不确定)后,立即发送下一帧数据该如何处理?
??????
///////////////////////////////////

加数据头,数据尾,单字节接收
alexmayer 2005-06-07
  • 打赏
  • 举报
回复
可以看看龚建伟《Visual C++/Turbo C串口通信编程实践》上有的

==========================================================
???????
现在我手边就有这本书,那一页上有?


2、问答式协议如何主动发送数据?要求收到下位机的回应数据(长度不确定)后,立即发送下一帧数据该如何处理?
??????
alexmayer 2005-06-07
  • 打赏
  • 举报
回复
2、问答式协议如何主动发送数据?要求收到下位机的回应数据(长度不确定)后,立即发送下一帧数据该如何处理?
??????
///////////////////////////////////

加数据头,数据尾,单字节接收

nuaawenlin(飘人)老大,我想可能是我的表达问题,其实我的想法是,我的程序通过多个串口与多个设备通信,只有我的程序请求数据,设备才会上送数据,我现在使用WM_TIMER,定时组帧下发,而不考虑子设备是否回答,这是无法保证实时性的!如何做,才可以做到我的程序下发后,如果设备正确回答,就立即发送下一帧询问,否则等待直到超时时间到再发送下一帧询问。
xnlcx 2005-06-05
  • 打赏
  • 举报
回复


可以看看龚建伟《Visual C++/Turbo C串口通信编程实践》上有的

JerryWang2000 2005-06-05
  • 打赏
  • 举报
回复
最好是定义一个数据包格式,用一个特别的字节(如0x7E)作包头与包尾,若包中间也有这个字节,就可以使用转义符(如0x7D),然后将0x7E->0x7D 7C,0x7D->0x7D 7B,这样在接收时,就在串口数据流中截取完整数据包就是了。
nuaawenlin 2005-06-03
  • 打赏
  • 举报
回复
1,随便,没有限制,看你怎么使用了

2,最好长度一定

3,可以

4,单字节接收,判断数据头
combusMartin 2005-06-03
  • 打赏
  • 举报
回复
使用多串口,我也不是很清楚。
一般来说作为view 或者frame的实例比较好。
每个串口被映射成一个文件,对每个串口操作开一个线程去跑就可以了,
界面线程辅助调度一下就可以了。
串口类就没有必要封装成dll库了,个人感觉。

18,356

社区成员

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

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