99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

記錄為BL808添加GPIO驅(qū)動

冬至子 ? 來源:螺絲松掉的人 ? 作者:螺絲松掉的人 ? 2023-10-13 11:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

該文主要記錄為 BL808 BSP 添加 GPIO 驅(qū)動時踩到的一些坑及解決方案。這是我第一次對接 RT-Thread BSP 的驅(qū)動,整理出本文避免之后踩到同樣的坑,也希望能幫助到和我一樣的新手。如有描述不當(dāng)和不足的地方,還望大家指出和補(bǔ)充,一起交流學(xué)習(xí)。

構(gòu)建該項目最好在 Linux 環(huán)境,能夠避免大部分奇怪的問題,這里推薦使用 WSL ,因為筆者是 Linux 菜鳥,而且 WSL 和 windows 之間文件傳輸比較方便。

工具鏈需要在 WSL 中解壓 tar -xvf ,不能在 windows 中解壓后傳入 WSL ,不同環(huán)境下解壓出來的文件會有問題

可以使用如下命令指定工具鏈并進(jìn)行構(gòu)建(需要提前在 Linux 環(huán)境中配置好 scons 等,可以參考 RT-Thread BSP BL808 中的 READme )

scons --exec-path=/opt/Xuantie-900-gcc-elf-newlib-x86_64-V2.6.1/bin
export RTT_EXEC_PATH=/opt/Xuantie-900-gcc-elf-newlib-x86_64-V2.6.1/bin
scons

如果使用的是 WSL ,可以在命令行中運(yùn)行code .命令,即可通過VS code進(jìn)行開發(fā),前提是windows中已經(jīng)安裝了VS code

gpio的驅(qū)動我主要調(diào)用了m0librariesplatformsocbl808bl808_e907_stdbl808_bsp_driverhal_drvsrchal_gpio.c這里面的函數(shù)(后續(xù)并沒有直接使用 hal 中封裝的函數(shù),因為太多層的封裝可能會降低效率)

需要在 board.c 文件中添加以下代碼:

/* GPIO driver initialization is open by default */

#ifdef RT_USING_PIN
rt_hw_pin_init();
#endif
//這樣才調(diào)用了drv_gpio.c中定義的rt_hw_pin_init()函數(shù)
在m0driversSConscript中添加以下代碼:
if GetDepend('RT_USING_PIN'):
src += ['drv_gpio.c']
//這樣drv_gpio.c才加入到了編譯中

在m0librariesSConscript中添加相應(yīng)路徑(如果調(diào)用的頭文件,以及需要編譯的 .c 文件不包含在 SConscript 中,需要自行添加)

808能識別到兩個usb converter設(shè)備 但是識別不到串口設(shè)備,重新燒寫702的固件也沒用,最后的解決辦法是在設(shè)備管理器中右擊對應(yīng)的USB設(shè)備,選擇屬性,進(jìn)入高級設(shè)置,勾選vcp,刷新后出現(xiàn)串口。進(jìn)入下載模式是先上電,然后同時按住RST和BOOT按鍵,然后先松開RST,再松開BOOT即可。

最后提交PR的時候需要注意格式問題:注釋使用/**/,最后用自動化軟件刷一下格式。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 驅(qū)動器
    +關(guān)注

    關(guān)注

    54

    文章

    8655

    瀏覽量

    149595
  • USB設(shè)備
    +關(guān)注

    關(guān)注

    0

    文章

    57

    瀏覽量

    16666
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1279

    瀏覽量

    53882
  • RT-Thread
    +關(guān)注

    關(guān)注

    32

    文章

    1393

    瀏覽量

    41726
  • HAL庫
    +關(guān)注

    關(guān)注

    1

    文章

    121

    瀏覽量

    6853
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    BL808 RT-Thread Wi-Fi 驅(qū)動適配

    BL808 WiFi 屬于 SOC 單芯片型無線 MCU,片上集成 WiFi 功能,移植 RT-Thread 過程中,需要使用 RT-Thread wlan 框架。 RT-Thread wlan
    的頭像 發(fā)表于 12-02 11:06 ?2084次閱讀
    <b class='flag-5'>BL808</b> RT-Thread Wi-Fi <b class='flag-5'>驅(qū)動</b>適配

    BL808 RT-Thread Wi-Fi驅(qū)動適配

    BL808 WiFi 屬于 SOC 單芯片型無線 MCU,片上集成 WiFi 功能,移植 RT-Thread 過程中,需要使用 RT-Thread wlan 框架。
    的頭像 發(fā)表于 12-04 11:38 ?1277次閱讀

    嵌入式linux驅(qū)動gpio的基本操作

    文章目錄代碼驅(qū)動層代碼應(yīng)用層代碼 測試驅(qū)動Makefile這里記錄的是嵌入式linux驅(qū)動gpio的基本操作。實現(xiàn)的內(nèi)容是:
    發(fā)表于 11-05 07:59

    以rk808驅(qū)動例子講解i2c regmap方式讀寫

    和硬件IC之間做一層緩存,從而能減少底層I/O的操作次數(shù)Regmap拓?fù)浣Y(jié)構(gòu)應(yīng)用實例以rk808驅(qū)動例子講解i2c regmap方式讀寫使用配置文件初始化i2c
    發(fā)表于 08-11 16:43

    記錄BL808 BSP添加GPIO驅(qū)動時踩到的一些坑及解決方案

    該文主要記錄 BL808 BSP 添加 GPIO 驅(qū)動時踩到的一些坑及解決方案。這是我第一次對
    發(fā)表于 02-03 14:36

    NUC972如何添加LED驅(qū)動leds_gpio?

    。內(nèi)核還提供了一個非常方便的方法,就是用過leds_gpio驅(qū)動來控制LED. 我們只需要配置相關(guān)引腳就新了。 步驟如下: 1.添加配置引腳 修改 dev.c 文件在內(nèi)核目錄/arch/arm
    發(fā)表于 06-28 06:09

    簡要分析Thread的通用GPIO設(shè)備驅(qū)動

    為了給用戶提供操作GPIO的通用API,方便應(yīng)用程序開發(fā),RT-Thread中引入了通用GPIO設(shè)備驅(qū)動。并提供類似Arduino風(fēng)格的API用于操作GPIO,如設(shè)置
    發(fā)表于 11-13 14:57 ?1668次閱讀

    LINUX GPIO如何驅(qū)動源碼移植

    的寄存器驅(qū)動,是在linux-2.6.18_pro500\arch\arm\mach-davinci 目錄下的gpio.c,這個是寄存器級的驅(qū)動,搞過單片機(jī)MCU的朋友應(yīng)該比較熟悉寄存器級的驅(qū)
    發(fā)表于 06-26 17:43 ?4次下載
    LINUX <b class='flag-5'>GPIO</b>如何<b class='flag-5'>驅(qū)動</b>源碼移植

    808D設(shè)定值電纜信號與V60驅(qū)動接線說明

    808D設(shè)定值電纜信號與V60驅(qū)動接線說明。
    發(fā)表于 05-09 11:20 ?11次下載

    嵌入式Linux驅(qū)動 GPIO操作 包括驅(qū)動和應(yīng)用層程序?qū)?b class='flag-5'>驅(qū)動進(jìn)行測試

    文章目錄代碼驅(qū)動層代碼應(yīng)用層代碼 測試驅(qū)動Makefile這里記錄的是嵌入式linux驅(qū)動gpio的基本操作。實現(xiàn)的內(nèi)容是:
    發(fā)表于 11-02 14:36 ?10次下載
    嵌入式Linux<b class='flag-5'>驅(qū)動</b> <b class='flag-5'>GPIO</b>操作 包括<b class='flag-5'>驅(qū)動</b>和應(yīng)用層程序?qū)?b class='flag-5'>驅(qū)動</b>進(jìn)行測試

    只需5步,教你添加GPIO按鍵——飛凌教程

    本文將為大家介紹如何在飛凌OKT507-C開發(fā)板上添加兩個GPIO按鍵,希望能夠?qū)Ω魑还こ處熡兴鶐椭?,本文章以PE5、PE6兩個引腳例。
    的頭像 發(fā)表于 10-17 14:43 ?1227次閱讀
    只需5步,教你<b class='flag-5'>添加</b><b class='flag-5'>GPIO</b>按鍵——飛凌教程

    博流BL808三核編譯運(yùn)行上手指南

    bl808是三核異構(gòu)架構(gòu),分為m0、lp、d0,使用的都是平臺哥的RISC-V核,分別為E907/E902/C906,每個核需要單獨(dú)編譯并燒錄到對應(yīng)的位置,通過本文可以了解三核編譯、燒錄、運(yùn)行。
    的頭像 發(fā)表于 08-07 17:14 ?3739次閱讀
    博流<b class='flag-5'>BL808</b>三核編譯運(yùn)行上手指南

    【北京迅】iTOP-RK3568OpenHarmony系統(tǒng)南向驅(qū)動開發(fā)GPIO基礎(chǔ)知識

    【北京迅】iTOP-RK3568OpenHarmony系統(tǒng)南向驅(qū)動開發(fā)GPIO基礎(chǔ)知識
    的頭像 發(fā)表于 03-06 11:23 ?576次閱讀
    【北京迅<b class='flag-5'>為</b>】iTOP-RK3568OpenHarmony系統(tǒng)南向<b class='flag-5'>驅(qū)動</b>開發(fā)<b class='flag-5'>GPIO</b>基礎(chǔ)知識

    RK3568驅(qū)動指南GPIO子系統(tǒng) GPIO操作函數(shù)實驗

    電子RK3568開發(fā)板驅(qū)動指南GPIO子系統(tǒng) GPIO操作函數(shù)實驗
    的頭像 發(fā)表于 05-28 15:24 ?346次閱讀
    迅<b class='flag-5'>為</b>RK3568<b class='flag-5'>驅(qū)動</b>指南<b class='flag-5'>GPIO</b>子系統(tǒng) <b class='flag-5'>GPIO</b>操作函數(shù)實驗

    RK3568開發(fā)板驅(qū)動指南GPIO子系統(tǒng)GPIO子系統(tǒng)API函數(shù)的引入

    RK3568開發(fā)板驅(qū)動指南GPIO子系統(tǒng)GPIO子系統(tǒng)API函數(shù)的引入
    的頭像 發(fā)表于 05-29 14:05 ?423次閱讀
    迅<b class='flag-5'>為</b>RK3568開發(fā)板<b class='flag-5'>驅(qū)動</b>指南<b class='flag-5'>GPIO</b>子系統(tǒng)<b class='flag-5'>GPIO</b>子系統(tǒng)API函數(shù)的引入