打印
[CAN-bus/DeviceNet]

请问CAN控制器为什么要有3个64深度的FIFO?

[复制链接]
1885|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
沙发
hyhmh| | 2012-8-22 14:23 | 只看该作者
要看 什么型号?
不可 一概而论吧

使用特权

评论回复
板凳
open82977352|  楼主 | 2012-8-22 15:28 | 只看该作者
那请问哪种是有这样的3个FIFO?有遇到过么?

2# hyhmh

使用特权

评论回复
地板
airwill| | 2012-8-22 20:20 | 只看该作者
这是考虑了 CAN 数据包的最大长度而定的

使用特权

评论回复
5
open82977352|  楼主 | 2012-8-23 08:02 | 只看该作者
4# airwill


请问能否稍微讲解下?

使用特权

评论回复
6
airwill| | 2012-8-25 21:03 | 只看该作者
每个 CAN 帧中最长的数据位 8 字节

使用特权

评论回复
7
open82977352|  楼主 | 2012-8-28 08:46 | 只看该作者
6# airwill


对啊,8字节和64深度什么关系啊?
第一个64深度好理解,后面两个4位的64深度和1位的64深度就不知道怎么用了。。。

使用特权

评论回复
8
hyhmh| | 2012-8-29 10:15 | 只看该作者
没有 具体的针对对象(CAN控制器型号) 讨论起来 意义不大。 AT90CAN128/64/32 内置的 CAN控制器 有15个MOB
15 MOb (Message Object) with their own: – 11 bits of Identifier Tag (rev 2.0 A), 29 bits of Identifier Tag (rev 2.0 B) – 11 bits of Identifier Mask (rev 2.0 A), 29 bits of Identifier Mask (rev 2.0 B) – 8 Bytes Data Buffer (Static Allocation) – Tx, Rx, Frame Buffer or Automatic Reply Configuration – Time Stamping
关于缓冲的描述: CAN Data Buffers To preserve register allocation, the CAN data buffer is seen such as a FIFO (with address pointer accessible) into a MOb selection.This also allows to reduce the risks of un-controlled accesses. There is one FIFO per MOb. This FIFO is accessed into a MOb page thanks to the CAN message register.

1.GIF (1.97 MB )

1.GIF

使用特权

评论回复
9
open82977352|  楼主 | 2012-8-30 08:10 | 只看该作者
8# hyhmh


针对sja1000能给我解释下FIFO,接收缓冲器和发送缓冲器的关系么?

使用特权

评论回复
10
hyhmh| | 2012-8-30 11:00 | 只看该作者
自己看书、看资料!

使用特权

评论回复
11
misra| | 2012-8-30 19:04 | 只看该作者
不设置FIFO  就是一下子就能就收8个字节

设置了FIFO  一下子就接收超过8个字节。

太简单了  很简单

使用特权

评论回复
12
misra| | 2012-8-30 19:04 | 只看该作者
FIFO 设置起来比较麻烦  
没那精力搞那玩意

我的场合用不上

使用特权

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

本版积分规则

2

主题

36

帖子

1

粉丝