打印

MCU与PC通信的协议

[复制链接]
3001|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
heweibig|  楼主 | 2012-6-5 19:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我最近在做一个需要用到单片机与PC上位机通信的项目。我用的是RS232接口与PC通信,原本是想采用xmodem协议的,但发现不太适合我的项目。
我的项目是PC机需要向单片机发送指令和数据,单片机收到指令后需要进行一些操作并且返回一些状态信息。
但因为我的通信是非固定长度的数据传输,有时候只需要传输一个字节,而有的时候需要传输上百KB。
沙发
heweibig|  楼主 | 2012-6-5 19:19 | 只看该作者
希望大家介绍一种可以变化传输数据长度,并且有校验功能

使用特权

评论回复
板凳
liliang9554| | 2012-6-5 19:20 | 只看该作者
不太理解你的问题

使用特权

评论回复
地板
liliang9554| | 2012-6-5 19:20 | 只看该作者
PC机需要向单片机发送指令和数据,单片机收到指令后需要进行一些操作并且返回一些状态信息。

使用特权

评论回复
5
午夜粪车| | 2012-6-5 19:22 | 只看该作者
PC的通信是怎么实现的?

使用特权

评论回复
6
午夜粪车| | 2012-6-5 19:22 | 只看该作者
是利用串口调试助手呢?

使用特权

评论回复
7
heweibig|  楼主 | 2012-6-5 19:22 | 只看该作者
上位机是我自己做的

使用特权

评论回复
8
heweibig|  楼主 | 2012-6-5 19:23 | 只看该作者
现在主要是想要一种"安全"、"长度可调整"的传输协议。

使用特权

评论回复
9
zhaoxqi| | 2012-6-5 19:25 | 只看该作者
看一下modbus协议

使用特权

评论回复
10
jiajs| | 2012-6-5 19:25 | 只看该作者
简单打包即可
包头+包类+长度+数据+CRC

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
nongfuxu + 1
11
huangchui| | 2012-6-5 19:26 | 只看该作者
楼主的意思是串口要复用?
自己做一个协议吧。

使用特权

评论回复
12
zhanghqi| | 2012-6-5 19:26 | 只看该作者
这样的应用无所谓什么协议,xmodem之类的想法就更差远了,在232标准操作距离之内,直接传输即可,不放心就附上CRC校验,然后做个很简单的应答式“协议”即可

使用特权

评论回复
13
zhenykun| | 2012-6-5 19:34 | 只看该作者
CRC校验是不是那个判断加上冗余码后是否能被G对方整除的那个?这种校验经常用到吗

使用特权

评论回复
14
jlyuan| | 2012-6-5 19:34 | 只看该作者
想想两个人之间怎么确认信息的准确交流,那么机器之间也是同样的。

使用特权

评论回复
15
wyjie| | 2012-6-5 19:36 | 只看该作者
在Win95时代,操作系统内置了一个“直接电缆连接”,可以通过串口或并口在两台PC间交互数据、文件等

使用特权

评论回复
16
yszong| | 2012-6-5 19:37 | 只看该作者
其“协议”甚至连CRC都没有用,而是采用奇偶校验,直接发送的。

使用特权

评论回复
17
heweibig|  楼主 | 2012-6-5 19:43 | 只看该作者
嗯,了解了,多谢大家

使用特权

评论回复
18
heweibig|  楼主 | 2012-6-5 19:43 | 只看该作者
结贴了,一人2分

使用特权

评论回复
19
nongfuxu| | 2012-6-6 06:50 | 只看该作者
10楼: 简单打包即可
包头+包类+长度+数据+CRC

LZ给分也吃大锅饭,10L这么好的回答,也是2分?

使用特权

评论回复
20
dong_abc| | 2012-6-12 00:31 | 只看该作者
楼上也可以打分呀!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

869

主题

13089

帖子

7

粉丝