CAN
来源:互联网 发布:notepad++ mac 编辑:程序博客网 时间:2024/06/05 09:22
- 时间触发通信方案指的是什么?回复:用来进行同步通信。
- CAN是群发,然后谁要谁收。
- CAN1,Master bxCAN, 管理bxCAN与SRAM之间的通信。CAN2, Slave bxCAN, 不能直接访问SRAM。
- 进入正常模式前,需让bxCAN和总线同步。
- 发送优先级:1.邮箱标识码(小者先行) 2.发送请求顺序(适用于分段发送)。
- 两个邮箱,分别三级缓冲(FIFO)
- 接收到的数据会根据其识别码、优先级等“有序”的存储在SRAM中,方便调用
- 优先级规则
- 32位滤波器高于16位
- 同等规模滤波器,先考虑List mode再考虑Mask Mode
- 同等规模同种模式,考虑滤波器值(Filter Number,小者优先)
- 工作模式
上图描述了比起传统结构的优势。
- 不同物理层共用一个接口,比如高速/FD(Flexible Data-Rate) CAN(CAN C)、低速/容错 CAN(CAN B)、单线CAN(CAN A)。
- 三者对应的通信速率分别为1Mbps、125Kbps、33.3kbps。
- 将数据切割以消息的方式发送,以保证数据的连续性。
CAN ISO11898 标准架构
看了这么多的Specifications, 还是觉得TI家的最好,清晰易懂,语法多变但简练。
- 显性信号是不是必须CANH=1,CANL=0,可不可以是CANH=0, CANL=1?回复:只能是CANH=1,CANL=0.
- 节点每次传输的数据都会受到节点自身的监控(这也就是传输线(CANH,CNAL)从内部连接到了接收器上的原因)
- CAN Bus可以连接不同通信速率的通讯网络,Figure out how does it works.回复:GateWay
- 或许错误帧有最高优先级,可以观察一下它的帧结构
- 五种查错方式,三种在帧的层面,两种在位的层面,分别是(1)CRC、(2)ACK、(3)SOF/EOF以及各种定界符、(4)数据帧的位检测及ACK帧中的某一位,(5)至多允许5个连续相同的逻辑位出现。
- (This means that an error frame can be from the original six bits to twelve bits long with all the replies. This error frame is then followed by a delimiter field of eight recessive bits and a bus idle period before the corrupted message is retransmitted.)暂时不能理解的一段,大概是帧结构还不太熟悉。
- 休眠状态下是2.5v, Dominant Bit CANH=3.5v, CANL=1.5v, creat a 2-V differential singnal,and required a 120R resistance to avoid signal reflections(EMC).
- 总线上传输的数据和收发器发送的数据的极性是相反的(这个有点意思,之前没注意到)
- CAN的底层协议(Physical Layer&Data Link Layer)已经标准化了,接下来能研究的就是上层协议(HLP:底层到应用层之间。整个结构虽然参考了OSI模型,却不尽是)。
- “When implementing standardized HLPs in your device, you can buy a protocol stack or you can program it yourself.”哈哈哈,what CAN I say...
总结:接触了CAN后最深刻的认识是,将USART,IIC,SPI,CAN这些通讯方式进行组网应用,才能体会到他们各自的优势及用途,同时也更深地体会到了Computer Network中的Network的概念。
阅读全文