【求助】如何实现active串口通信协议

时间:2020-11-30 10:13:17
请教有过串口通信协议编程的高手,如何利用active控件实现串口通信协议,本人特别不明白串口通信中非阻塞模式的同步问题,要想实现自定义的通信协议应该如何设计程序?
网上关于active控件的代码,接收和发送数据都是独立的,若发送数据后需要对方回复一个确认才能再继续发送,像这种通信协议该如何实现?谢谢!

8 个解决方案

#1


一般的串口控件就是mscomm啦,网上很多使用例子
一般的协议都是应答协议的,比如发起方先发起一个请求,应答方响应请求(回复),发起方收到回复后发起另一个请求,……

#2


楼上能不能给我一个应答协议实现的例子,之前你给我的建议都很受用,感谢一直以来对我的帮助。
我自己没有这方面的经验,感觉应答协议总是没法同步,接收应答程序就会进入错误处理部分,汗!

#3


你先看看这个例子吧,它是手动发送接收的
你的应答无非是收到信息后,调用发送信息的函数(只不过例子中是用手动Send)
你先看看吧,有什么问题你可以再问,我一般不用mscomm的,因为程序发布的时候还要注册mscomm

http://d.download.csdn.net/down/2349526/free2471889

#4


谢谢楼上,我先看看

#5


cncomm 开源的 去了解下

#6


如果LZ有时间.可以查看串口通信.用VC打开文件类.(可以打开串口).实现基本通信.网上的大部分代码都是通过这个类写的.关于问答.查看一下.TCP通信.能找到你想要的.

#7


这个我也不会

#8


协议你们自己定 上位机和下位机
你说的就是个握手信号,简单如下:
比如你发送一个a到下位机,他接受到后给你返回a,判断下位机返回和你发送到是不是一致
是,接着发b
不是,就不是了

#1


一般的串口控件就是mscomm啦,网上很多使用例子
一般的协议都是应答协议的,比如发起方先发起一个请求,应答方响应请求(回复),发起方收到回复后发起另一个请求,……

#2


楼上能不能给我一个应答协议实现的例子,之前你给我的建议都很受用,感谢一直以来对我的帮助。
我自己没有这方面的经验,感觉应答协议总是没法同步,接收应答程序就会进入错误处理部分,汗!

#3


你先看看这个例子吧,它是手动发送接收的
你的应答无非是收到信息后,调用发送信息的函数(只不过例子中是用手动Send)
你先看看吧,有什么问题你可以再问,我一般不用mscomm的,因为程序发布的时候还要注册mscomm

http://d.download.csdn.net/down/2349526/free2471889

#4


谢谢楼上,我先看看

#5


cncomm 开源的 去了解下

#6


如果LZ有时间.可以查看串口通信.用VC打开文件类.(可以打开串口).实现基本通信.网上的大部分代码都是通过这个类写的.关于问答.查看一下.TCP通信.能找到你想要的.

#7


这个我也不会

#8


协议你们自己定 上位机和下位机
你说的就是个握手信号,简单如下:
比如你发送一个a到下位机,他接受到后给你返回a,判断下位机返回和你发送到是不是一致
是,接着发b
不是,就不是了