用FPGA來做CAN匯流排主控制器是可行的,具體實現方式就是FPGA+CAN2.0協議的硬體組合,二是使用FPGA內部CAN2.0協議的IP核+CAN物理層,掛載在FPGA內部軟核上。下面我主要介紹利用FPGA的zynq系列7010,自帶CAN2.0協議的介面來實現。
圖1 CAN匯流排控制器IP
zynq系統如下:
第三步:配置zynq系統的外設,CAN匯流排,配置CAN時鐘 1Mhz。
CAN匯流排設定時鐘 1Mhz:
第四步:配置zynq其他外設,如DDR3,UART。
第六步:生成system。
第八步:生成頂層檔案後,匯出Block Desgin,不需要綜合佈線、生成bit流檔案。
第九步:啟動SDK。
第十步:建立system can匯流排的測試工程
第十一步:新建測試檔案
main.c
第十二步:新增CAN匯流排自檢測試例程
第十三步:Debug除錯,在zynq7010平臺下除錯模擬即可。
本文到此就介紹這裡,將硬體驗證部分留給感興趣朋友,或者有這樣的硬體平臺的開發者。
用FPGA來做CAN匯流排主控制器是可行的,具體實現方式就是FPGA+CAN2.0協議的硬體組合,二是使用FPGA內部CAN2.0協議的IP核+CAN物理層,掛載在FPGA內部軟核上。下面我主要介紹利用FPGA的zynq系列7010,自帶CAN2.0協議的介面來實現。
圖1 CAN匯流排控制器IP
zynq系統如下:
第三步:配置zynq系統的外設,CAN匯流排,配置CAN時鐘 1Mhz。
CAN匯流排設定時鐘 1Mhz:
第四步:配置zynq其他外設,如DDR3,UART。
第六步:生成system。
第八步:生成頂層檔案後,匯出Block Desgin,不需要綜合佈線、生成bit流檔案。
第九步:啟動SDK。
第十步:建立system can匯流排的測試工程
第十一步:新建測試檔案
main.c
第十二步:新增CAN匯流排自檢測試例程
第十三步:Debug除錯,在zynq7010平臺下除錯模擬即可。
本文到此就介紹這裡,將硬體驗證部分留給感興趣朋友,或者有這樣的硬體平臺的開發者。