如何用FPGA实现CAN总线协议

2025-06-18 03:03:13

1、CANFD与CAN相比:可变速率,CAN协议最高1Mbps,CANFD最高20Mbps以上。数据段最高可以有64个字节 。

如何用FPGA实现CAN总线协议

2、CRC段的校验根据数据段的字节数选择CR觊皱筠桡C17或CRC21,在CANFD协议中,需要注意其中的BRS位(变速标志位),不是一位准确的位宽长度。

如何用FPGA实现CAN总线协议

3、它的位长俣觊鄄幼度是正常位的同步段、相位段1+高速位的相位段2.当初在调试时就是一直卡在这,调了我好久,最后一位一位抓出来对比才发现就是那个BRS位的原因。

如何用FPGA实现CAN总线协议

4、一般意义上如果FPGA没有带硬核ARM的话,FPGA和ARM的通信可以采用ARM总线的方式,也是就FPGA和ARM芯片留出的总线相联系。

如何用FPGA实现CAN总线协议
如何用FPGA实现CAN总线协议

5、那么FPGA端提供的接口就是要与ARM总线协议一致。一般来说采用类似SDRAM的接口就可以了,通过片选来切换到FPGA数据。

如何用FPGA实现CAN总线协议

6、当FPGA需要发送数据时,可以先给ARM一个中断信号,ARM再通过片选访问FPGA数据即可。

如何用FPGA实现CAN总线协议
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢