这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 如果发送多帧数据怎么办

共25条 1/3 1 2 3 跳转至

如果发送多帧数据怎么办

工程师
2014-07-09 15:39:04     打赏
CAN总线发送数据时,一帧数据只能发送8个字节,如果要是发送多帧数据怎么办呢。假设我需要发送的数据很多,一帧数据发送不完,需要多帧数据才能发送完,请问怎么处理呢。谢谢大家。

高工
2014-07-09 15:55:55     打赏
2楼
那就分多次发呗

高工
2014-07-09 16:13:12     打赏
3楼
所以的串行发数据方式都是先发一字节再发一字节的。相当于你做一个循环,在那儿查有没有没发完,发完就结束,没发完就移到下一字节继续发。

院士
2014-07-09 16:18:57     打赏
4楼

    采取串行发送,多发送几次,占用时间就长了,使用环境(网络)是否允许再提高一点速率或并行发送呢?我不太熟悉CAN总线,只是这样想想而已,不对就飘过。期待高手的继续指点。


专家
2014-07-09 16:19:18     打赏
5楼

这个问题我之前碰到过。

建议将场数据打包发送,接收后再解包拼接数据。

比如:

发送:12345678

分包:1234     5678

收到后拼包:

 12345678


院士
2014-07-09 16:28:26     打赏
6楼
    因为我以后可能也会遇到这类问题,接着问一下:打包时是否压缩呢,如果不压缩,只是分开发送,速率不变的话,占用的总时间还是那么多吧?

高工
2014-07-09 17:10:57     打赏
7楼

包越短,头和尾的开销越大,效率越低。大数据时,一定要传大包,还会加入crc之类的校验信息。

单片机传数据一般不会压缩,压缩比传输更占时间。


高工
2014-07-09 20:31:08     打赏
8楼
拆开来发呗,发完再合并一块,相当于自己做了个协议

院士
2014-07-09 21:16:01     打赏
9楼

CAN总线设计的初衷并不是用来传送大量数据的。

其每次8字节的帧格式也是为了快速响应而设计的。

可以考虑其它方式来传送大量数据,如果非要使用CAN总线来完成大量数据传送,只能采取循环发送的方式。


工程师
2014-07-11 22:27:19     打赏
10楼
嗯,多帧数据,一次发送8个字节。谢谢您了。

共25条 1/3 1 2 3 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]