如何用FPGA实现CAN总线协议

2024-10-13 04:57:30

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总线协议
猜你喜欢