博客專欄

        EEPW首頁 > 博客 > 「電路DIY」CAN轉USB接口

        「電路DIY」CAN轉USB接口

        發布人:電子資料庫 時間:2023-03-06 來源:工程師 發布文章

        image.png


        這個項目開始于一個需要建立一個簡單的設備來監控CAN總線。我選擇NUC140LC1CN 32K Cortex-M0微處理器Nuvoton主要原因是它有USB和CAN外設。

        特征
        • 簡單的設計

        • 兼容LAWICEL CANUSB協議

        • 將自身暴露為USB FTDI設備

        • 支持CAN 2.0A 11位和CAN 2.0B 29位幀

        • 具有內部FIFO CAN消息緩沖區

        • 從USB端口自供電

        • 用于固件更新的閃存駐留USB大容量存儲設備(MSD)引導加載程序

        • 固件可從下面的鏈接下載

        示意圖

        啟用NUC140與CAN總線通信的CAN外圍設備需要CAN收發器。這個TJA1051TNXP的芯片解決了這個問題。這個NUC140該裝置能夠從5V電源供電,不需要額外的3.3V電壓調節器。這種方便的組合使得實現CAN總線接口的任務變得簡單。有三個狀態指示燈:

        • D1是到主機的USB連接狀態

        • D2顯示CAN總線活動

        • D3表示CAN錯誤

        這個NUC140沒有內置的引導加載程序,唯一的編程方法是使用ARM串行線調試(SWD)接口(J2連接器)和Nuvoton ICP編程器。是的,如果bootloader已經被預先編程,它可以被激活。這就是JP1 jumper的目的。在接口通電之前連接JP1將觸發引導加載程序。

        image.png


        引導加載程序

        這個NUC140LC1號閃存分為兩部分,一部分用于執行32K大小的用戶程序代碼(APROM),另一部分用于引導加載程序(LDROM)。LDROM的大小只有4K,這使得構建一個功能齊全的USB引導加載程序成為一個挑戰。我使用了Nuvoton提供的大容量存儲設備(MSD)引導加載程序。連接跨接線JP1將啟動它。因此,在主機文件系統中應該可以看到大小為32KB的可移動驅動器。只需復制粘貼或拖放CAN-USB固件更新到引導加載程序驅動器。拔下USB電纜,拔下跳線并重新插入。新固件更新現在應該正在運行。

        image.png


        編程CAN-USB接口和NUTINY-SDK-140

        編程NUC140處理器需要Nuvoton的Nu Link編程器和Nuvoton ICP編程應用. 我決定用NUC140演示板(NuTiny-SDK-140)可從Digi Key獲得。它有兩部分,一部分是NUC140芯片和Nu-Link編程器本身。該板甚至穿孔,以分離Nu-Link部分。實際上,你可以只圍繞NuTiny-SDK-140演示板來構建這個設備,只需要額外的can收發器芯片。

        image.png


        連接Nu-Link后,NUC140的編程并不復雜。這里的關鍵問題是選擇從LDROM加載而不是從APROM加載(在配置設置中),以獲得USB引導加載程序功能。

        image.png


        軟件

        ICEL與USB協議兼容,與USB接口兼容。我用CAN-USB接口測試了兩個應用程序:

        CANHacker V2.00.02

        這個CANHacker應用程序是免費軟件。我找不到它的手冊,但使用它是簡單和直接的。

        image.png


        CAN監視器Pro V2.2

        本申請由WGSoft公司. 網站上大部分是德語注釋。

        image.png


        PCB設計
        image.png


        印刷電路板
        image.png


        image.png



        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。



        關鍵詞: 電子 USB

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 普宁市| 从化市| 洪洞县| 乐昌市| 隆化县| 洮南市| 九龙城区| 潜山县| 凤冈县| 丰都县| 平顺县| 寿阳县| 偏关县| 顺平县| 股票| 寻甸| 绍兴市| 盐山县| 通化县| 青冈县| 收藏| 贵阳市| 清远市| 修水县| 郸城县| 乐清市| 筠连县| 乌拉特后旗| 海口市| 松江区| 陈巴尔虎旗| 犍为县| 阳泉市| 信阳市| 百色市| 扎赉特旗| 萨迦县| 探索| 满城县| 湖南省| 德钦县|