在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

hpm5361在rtthread輕松搞起USB轉換器

RTThread物聯網操作系統 ? 來源:未知 ? 2023-11-21 20:20 ? 次閱讀

一、概述

在半個月前,先楫發布了rtthread bsp 1.3.0版本,該版本其中一個功能就是加入了hpm5300的支持,對應的板型是hpm5300evk,對應的芯片型號是hpm5361。從先楫官方的數據手冊可知,除了豐富的電機外設,也有對應的豐富通訊外設接口。這里只截圖了通訊接口部分,其他功能可以詳情看對應的數據手冊。

wKgaomVcoaCANagWAACdNBh4Q6g723.png

對應的rtthread設備驅動框架中,先楫也做好了不少外設,其中包括了gpio, uart, spi, timer, i2c, usb, canfd等。

wKgaomVcoaCAP5riAABxEq14BJ0474.png

本來主要著重于利用rtthread的芯片設備驅動,制作一個USB轉換器,USB CDC轉換SPI、IIC、CAN這三個設備,方便用戶可以簡單驗證外設功能以及調試需要。

本文的code例子,找到usb_converter鏈接:

https://gitee.com/RCSN/hpmicro_rtthread_demo

二、開發流程

(一)鏈接

1、rtthread的bsp包安裝教程詳看先楫官方公眾號發布的文章:【重磅來襲】RT-Thread BSP v1.3.0 發布

2、既然是USB轉換器,那就需要一個PC端的上位機進行數據簡易轉換收發,主要實現了USB轉SPI/IIC/CAN,使用QT開發,code倉庫也提供代碼盒可執行文件。

wKgaomVcoaCAeVKAAABjAB5gZTM403.png

(二)新建工程

這里使用模板工程進行新建,調試器選擇FT2232。

wKgaomVcoaCAJckMAACRpJInkEU656.png

(三)外設驅動加入

這里使用到了USB、SPI、I2C、CAN,故在硬件的芯片設備驅動中需要選擇以下:

wKgaomVcoaGAHGpqAADYzLqzS3U799.png

組件中,確保CAN、I2C、SPI的設備驅動程序對應使能

wKgaomVcoaGATz7LAAFs3NV1Rec303.png

(四)添加軟件包(cherryusb加入和配置)

在軟件包中搜索cherryusb,進行添加。

wKgaomVcoaGAABL4AAE386QtC4c708.png

點擊右鍵選擇配置項

wKgaomVcoaGAEF4DAAAi9Db4OZM953.png

分別使能USB device模式,速度選擇HS,USB IP選擇HPM,并使能usb cdc設備類型。

wKgaomVcoaKAeK5AAAFoc7Mzq5Y186.png

(五)加入應用

1、以上配置完成后,進行編譯下,發現會報錯提示沒有usb_config.h這個頭文件

wKgaomVcoaSAGFjoAAFHmjX_mvo624.png

該頭文件主要是需要用戶自行配置USB相關參數,cherryusb也提供了該模板文件,在倉庫的主目錄中cherryusb_config_template.h

wKgaomVcoaSAUgBKAAB3w0KtyGI799.png

2、由此我們可以在工程下右鍵新建一個文件夾,可叫usb2xxx,里面再新建一個inc和src文件夾,以及再新建個SConscript文件

wKgaomVcoaSAS54TAABv5I26VVQ235.png

wKgaomVcoaWAUp23AAAacJ5Ickc441.png

SConscript文件中寫入添加Inc包含,以及src下的所有文件加入。

wKgaomVcoaWAC3m6AAFBGf46vjE981.png

cherryusb_config_template.h改名為usb_config.h,并放在usb2xxx的inc中

需要注意配置的是,USB的printf和malloc free需要切換為rtthread的對應API

wKgaomVcoaWAMbODAACBY2zPh9A128.png

先楫有自身的usb vid參數,可以在config中加入。

wKgaomVcoaaAJ37ZAABfUdfJVMw462.png

3、USB打開與關閉設備操作流程

這里以SPI設備作為例子

USB tools的設備打開和關閉操作主要通過轉換cdc的配置參數進行,比如設置波特率、parity和stop位來表示SPI的數據模式和傳輸模式。在QT的源碼中可以看到:

wKgaomVcoaeAY1DUAAScsB7XgIA902.png

下位機中, cherryusb的串口配置同樣提供了回調 usbd_cdc_acm_set_line_coding這個API,我們需要把對應的串口配置保存起來,在一個線程里面進行處理判斷USB設備的打開和關閉。

wKgaomVcoaeAOHeJAAHZw2AFBBA062.png

這些串口參數根據上位機進行解析判斷打開或者關閉的是哪個設備,比如SPI。

wKgaomVcoamADAF0AAUj_7k63b8538.png

驗證打開下SPI。

wKgaomVcoamAYk0-AAE-8JZLTWE307.png

通過msh打印可知道,下位機解析設備完成,同樣I2C和CAN也是如此

wKgaomVcoamALM3pAAA5rq8jHD8612.png

4、外設收發與初始化

在設備框架中,rtthread對于設備的操作無非就是open, close, config, write, read等操作,同樣先楫也對應做好了適配

(1)SPI

在rtthread官方文檔中

https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/programming-manual/device/spi/spi

配置SPI設備使用的是rt_spi_configure這個API

wKgaomVcoamAJkR2AAC9FDQZ2es849.png

對于config參數如下解釋

wKgaomVcoamAGjs-AABbKHL54eU997.png

如此一來可以封裝如下:

wKgaomVcoaqANo3IAAQrJQ81oHw174.png

對于SPI的收發,rtthread同樣也提供了對應接口

wKgaomVcoaqARKPDAAEPE2F-V00484.png

同樣進行封裝

wKgaomVcoaqAH7omAAByixbbXTA772.png

(2)I2C

在rtthread官方文檔中

https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/programming-manual/device/i2c/i2c

對于I2C的數據收發,提供了rt_i2c_master_send和rt_i2c_master_recv兩個API,以此可以進行封裝

wKgaomVcoaqAcT_RAAEdRTmCnAs941.png

(3)CAN

同樣rtthread也有對應的文檔說明

https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/programming-manual/device/can/can

先楫在適配CAN設備的時候,支持了硬件濾波組

wKgaomVcoaqATzpzAAGfuKL0lSM950.png

在接收上,可以設置接收回調函數,該函數可以發送一個事件或者信號量通知CAN數據處理線程有數據到達,可以進行接收。

wKgaomVcoaqAIEg3AADF9jUT_lg780.png

wKgaomVcoauAbuEPAAGtLzCGTaA524.png

5、USB數據轉換

通過以上的外設數據收發API封裝,可以在USB的接收中,也類似做個回調,發送信號量通知處理

wKgaomVcoauAMOptAATp8zXHzxU013.png

三、驗證

在I2C中,另外一塊HPM5300EVK燒錄hpm_sdk的從機例子,讀取地址為0x16,讀取8字節,接收消息中可以顯示到

wKgaomVcoauAbGyHAAFzSPl-Hac104.png

在SPI中,另外一塊HPM5300EVK燒錄hpm_sdk的從機例子,進行數據收發,USB轉換器可以正常顯示收發

wKgaomVcoauAA-TsAAKxgbwGZkY385.png

在CAN中,使用CAN盒進行收發,也可正常顯示收發。

wKgaomVcoauAChT8AAKNE8zFbGU721.png

四、結論

1、先楫對接rtthread的設備驅動豐富,基本的通訊外設都可以使用rtthread的外設設備框架,保證項目的無縫切換。

2、使用rtthread的設備驅動框架,可以無需太多理解底層,只需關注應用開發,實現快速開發。

3、rtthread的文檔相對豐富,從快速上手到內核、設備驅動、組件、軟件包等都有對應的說明。

鏈接:https://www.rt-thread.org/document/site/#/

———————End——————

新生態,創未來 | 2023RT-Thread 開發者大會開啟報名

邀請你參加 2023 RT-Thread 開發者大會的大理由

1、刷新RT-Thread最新技術動態和產業服務能力

2、聆聽行業大咖分享,洞察產業趨勢

3、豐富的技術和產品展示,前沿技術發展和應用

4、絕佳的實踐機會:AIOT、MPU、RISC-V...

5、精美伴手禮人手一份開發板盲盒和免費午餐

6、黑科技滿點~滴水湖地鐵口安排無人車接送至會場

立刻掃碼報名吧

wKgaomVcoauAXb2PAAAGEVCsn_o382.png

點擊閱讀原文報名


原文標題:hpm5361在rtthread輕松搞起USB轉換器

文章出處:【微信公眾號:RTThread物聯網操作系統】歡迎添加關注!文章轉載請注明出處。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • RT-Thread
    +關注

    關注

    32

    文章

    1376

    瀏覽量

    41608

原文標題:hpm5361在rtthread輕松搞起USB轉換器

文章出處:【微信號:RTThread,微信公眾號:RTThread物聯網操作系統】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    USB協議轉換器USB轉TTL/232/485,光電隔離

    USB協議轉換器是一種將USB接口轉換為其他通信協議接口的硬件設備,主要用于解決不同接口設備之間的兼容性問題,實現數據通信或設備控制。 一、產品特點
    的頭像 發表于 05-29 14:59 ?169次閱讀

    如何使用 miniProg4 作為 USB-I2C 轉換器

    我想用 miniProg4 作為 USB-I2C 轉換器。 但是我找不到一個例子(最好是 Python 中)。 有人能引導我找到正確的資源嗎?
    發表于 05-28 07:56

    USB轉485/422轉換器拆解

    前兩天群里的好大哥給我寄了兩個他設計的USB轉485/422轉換器,制作的初衷也很簡單,就是消耗一下他手頭的物料,設計的關鍵就是電子丐幫,面向庫存設計,探索低成本!在這里先感謝胡博設計的轉換器
    的頭像 發表于 04-10 10:33 ?742次閱讀
    <b class='flag-5'>USB</b>轉485/422<b class='flag-5'>轉換器</b>拆解

    離線燒錄來啦!HPM OBOX發布

    親愛的伙伴們,感謝大家的耐心等待!HPMOBOX離線燒錄正式發布啦!量產燒錄終于可以擺脫上位機的束縛!離線OBOX在手,量產輕松搞定!HPMOBOX是先楫半導體推出的,基于HPM5361MCU開發
    的頭像 發表于 02-08 13:38 ?645次閱讀
    離線燒錄<b class='flag-5'>器</b>來啦!<b class='flag-5'>HPM</b> OBOX發布

    RS232接口與USB轉換器使用指南

    RS232接口與USB轉換器使用指南主要包括以下幾個步驟和注意事項: 一、轉換器選擇與購買 品牌與質量 :選擇知名品牌的USB-RS232串口轉換
    的頭像 發表于 12-18 17:58 ?4075次閱讀

    USB ACDC轉換器使用指南

    USB ACDC轉換器是一種將交流電(AC)轉換為直流電(DC)的設備,廣泛應用于筆記本電腦、手機、平板電腦等電子設備的充電。本文將詳細介紹USB ACDC
    的頭像 發表于 12-09 10:55 ?1783次閱讀

    不同類型ACDC轉換器優缺點 ACDC轉換器負載能力分析

    ACDC轉換器是將交流電(AC)轉換為直流電(DC)的設備,電力電子領域具有廣泛的應用。以下是不同類型ACDC轉換器的優缺點以及ACDC轉換器
    的頭像 發表于 12-09 10:53 ?2014次閱讀

    HDMI接口轉換器的使用技巧

    和DisplayPort顯示。 HDMI轉USB-C/Thunderbolt轉換器 :適用于新型筆記本電腦和顯示。 HDMI轉光纖音頻轉換器
    的頭像 發表于 11-27 14:35 ?1529次閱讀

    HPM6750 Bootloader設計

    rtthread。boot工程燒入0x80000400處,APP燒入0x80100000處,但是這樣跑起來后boot工程能正常怕跑到跳轉的地方,但是跳轉后就沒反應了,意思就是說
    發表于 10-23 18:59

    usb與音頻線轉換器怎么連接

    ,一個USB與音頻線轉換器就顯得尤為重要。本文將詳細介紹如何連接USB與音頻線轉換器,以及相關的技術細節和使用場景。 二、USB與音頻線
    的頭像 發表于 10-08 14:28 ?3870次閱讀

    同軸轉換器為什么容易壞 同軸轉換器對音質的影響

    同軸轉換器為什么容易壞 同軸轉換器容易壞的原因可以從多個方面來分析: 質量問題 :轉換器的質量是直接影響其耐用性的關鍵因素。低質量的轉換器往往采用較為廉價的材料和元器件,這些材料和元器
    的頭像 發表于 10-06 14:16 ?2071次閱讀

    什么是DC/DC轉換器

    和電子產品中,以將較高的電池電壓轉換為設備所需的低電壓。 升降壓型DC/DC轉換器:既可以一定條件下升壓,也可以降壓,適用于輸入輸出電壓變化范圍較大的場合。 此外,DC/DC轉換器
    發表于 09-29 15:26

    使用升壓轉換器USB Type C端口為超級電容器組充電

    電子發燒友網站提供《使用升壓轉換器USB Type C端口為超級電容器組充電.pdf》資料免費下載
    發表于 09-29 10:05 ?0次下載
    使用升壓<b class='flag-5'>轉換器</b>從<b class='flag-5'>USB</b> Type C端口為超級電容器組充電

    轉換器供電和不供電什么區別

    引言 現代電子設備中,轉換器是一種常見的電子元件,用于將一種形式的能量轉換為另一種形式。轉換器可以是直流-直流轉換器、交流-直流
    的頭像 發表于 08-19 14:26 ?1355次閱讀
    主站蜘蛛池模板: 国产真实乱xxxav | 天天射网站 | 丁香激情综合 | videosgratis乱色欧美野外 | 操女人网| 亚洲性一区 | 日韩一级片免费在线观看 | 免费爱爱视频 | 亚洲毛片大全 | 台湾三级毛片 | 色天天综合网色鬼综合 | 伊人久久综合网站 | 免费视频网站在线看视频 | 四虎影在线永久免费观看 | 清冷双性被cao的合不拢腿 | 色多多在线免费观看 | 丁香亚洲综合五月天婷婷 | 无毒在线 | 国产不卡毛片 | 夭天干天天做天天免费看 | 久久精品屋| 韩国理论片2023现在观看 | 亚洲综合一二三区 | 精品一级毛片 | 天天拍天天干 | 国产午夜在线观看视频播放 | 西西人体www303sw大胆高清 | 日本三级日产三级国产三级 | 插久久| 日韩在线三级视频 | 国产成人精品日本亚洲网站 | 午夜cao | 奇米影视7777 | 亚洲精品福利你懂 | 亚洲欧洲色天使日韩精品 | 四虎永久在线精品免费观看地址 | 久久影视一区 | 中文在线最新版天堂 | 亚洲欧洲一区二区三区在线观看 | 婷婷四房播客五月天 | 欧美激情片网站 |