新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于Verilog HDL語言的CAN總線控制器設計及驗證

        基于Verilog HDL語言的CAN總線控制器設計及驗證

        作者: 時間:2012-08-01 來源:網絡 收藏

        f.JPG


        接著使用ModelSim軟件對所設計的各個模塊和整個進行了功能仿真,仿真結果表明達到了設計目標。

        2 測試驗證
        本文最后設計了的測試程序,其目的是模擬一塊微處理器對進行讀寫操作,從而實現對CAN總線控制器的寄存器訪問,完成總線收發功能。在該測試程序編寫中,各個功能基本上以任務的形式實現,進行不同的仿真時只需調用相關的任務模塊。圖8為驗證程序的組成框圖。

        g.JPG


        仿真驗證完成以后將其 CAN總線程序下載到中進行測試,目標芯片采用Cyclone系列的EP1C6Q240C8,為了驗證所設計的 CAN總線控制器,還設計了一款基于該的CAN總線控制器的節點電路,然后利用所設計的節點電路與其他3個利用SJA1000作為控制器的CAN總線節點進行了通信測試。所有的節點使用AT89S52單片機作為節點微處理器,PCA82C250作為收發器,測試結果表明下載到FPGA中的控制器程序工作正常,實現了預計的CAN總線通訊功能。測試網絡示意圖如圖9所示。

        h.JPG


        測試時,按動節點1上的開關并將該狀態發送到節點2,在節點2上能顯示對應的狀態,反之也可。同時也可在節點2通過鍵盤輸入某一代碼,而在節點1上的數碼管上顯示相應的結果。該實驗結果表明下載到FPGA中的控制器程序工作正常。

        3 結語
        本項目利用 語言設計了一款CAN總線控制器芯片,并使用ModelSire軟件對所設計的CAN總線控制器進行了功能仿真;之后為了驗證設計,還編制一個驗證程序,并將驗證之后的設計配置到了FPGA中;最后用所設計的基于FPGA的CAN總線控制器制作了CAN節點,并與其他采用SJA1000為控制器的CAN節點進行了通訊測試,實現了CAN總線良好的工作,驗證了設計的正確性。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 天镇县| 四川省| 大姚县| 宜春市| 连云港市| 丹东市| 额尔古纳市| 鄄城县| 龙川县| 尉犁县| 防城港市| 姚安县| 中山市| 利川市| 山西省| 临洮县| 胶州市| 凤翔县| 中牟县| 大姚县| 尚志市| 临洮县| 林西县| 齐河县| 吉木萨尔县| 南城县| 富源县| 西宁市| 长子县| 齐河县| 长沙市| 西华县| 亚东县| 平武县| 惠东县| 永兴县| 兰溪市| 和林格尔县| 东乌珠穆沁旗| 武宣县| 剑川县|