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

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

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

3天內不再提示

如何將新增的board的代碼直接納入app下

智芯原動ICETech ? 來源:HalfCoder ? 作者: lgl88911 ? 2021-08-18 09:23 ? 次閱讀

在Zephyr應用的代碼結構--West提貨單一文中已經將zephyr和zephyr外部項目納入到應用的管理,應用可以基于zephyr的任意開發板進行開發。不過實際的嵌入式應用場景需要對硬件進行定制,這就需要添加新的board,為了方便應用項目代碼集中管理,我們希望將新增的board的代碼直接納入app下。

添加board

在app目錄下添加boards,添加的方式必須遵從boards/《arch》/《board_name》, 例如我的應用要跑在兩種不同的硬件上,增加了使用rt1052和esp32兩個芯片的board,那么就要新建arm和xtensa兩個arch目錄,并分別在其中建立新的開發板文件夾atclock和tclock,目錄樹如下

app

├── CMakeLists.txt

├── boards

│ ├── arm

│ │ └── atclock

│ └── xtensa

│ └── tclock

添加board一般的做法是在zephyr/boards目錄下找相同soc的board然后根據硬件對dts和配置文件進行修改,具體添加board的方法可以參考Zephyr移植新Board,例如atclock就是從mm_swiftio修改而來,文件如下

└── atclock

├── CMakeLists.txt

├── Kconfig.board

├── Kconfig.defconfig

├── atclock.dts

├── atclock.yaml

├── atclock_defconfig

├── atclock_flexspi_nor_config.c

├── atclock_flexspi_nor_config.h

├── atclock_sdram_ini_dcd.c

├── board.cmake

├── doc

└── pinmux.c

而tclock是從esp32修改而來,文件如下

└── tclock

├── CMakeLists.txt

├── Kconfig.board

├── Kconfig.defconfig

├── board.cmake

├── doc

├── tclock.dts

├── tclock.yaml

└── tclock_defconfig

如何使用

zephyr提供了兩種方法使用非zephyr目錄下的board

1.編譯時指定

west build -b atclock -- -DBOARD_ROOT=app/ app/

2.Cmake指定

編譯時指定需要在每次編譯時都指定BOARD_ROOT路徑,略顯累贅,可以在app/CMakeLists.txt中添加如下內容

list(APPEND BOARD_ROOT ${CMAKE_SOURCE_DIR})

CMAKE_SOURCE_DIR表示app的source code目錄,也就是app的目錄,由于boards在該目錄下,因此在編譯時就無需再指定board_root,直接執行下面命令即可

west build -b atclock app/

第二種方法是應用管理自定義board這種場景下比較推薦的方法。

參考

https://docs.zephyrproject.org/latest/application/index.html#custom-board-devicetree-and-soc-definitions

https://github.com/zephyrproject-rtos/zephyr/tree/main/samples/application_development/out_of_tree_board

編輯:jq

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

    關注

    1

    文章

    50

    瀏覽量

    16389
  • 代碼
    +關注

    關注

    30

    文章

    4886

    瀏覽量

    70255
  • Zephyr
    +關注

    關注

    0

    文章

    35

    瀏覽量

    6232

原文標題:Zephyr應用的代碼結構--自定義開發板

文章出處:【微信號:智芯原動ICETech,微信公眾號:智芯原動ICETech】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    如何將一個FA模型開發的聲明式范式應用切換到Stage模型

    模型切換概述 本文介紹如何將一個FA模型開發的聲明式范式應用切換到Stage模型,您需要完成如下動作: 工程切換:新建一個Stage模型的應用工程。 配置文件切換:config.json切換
    發表于 06-04 06:22

    燧原科技正式納入飛槳例行版本發布體系

    燧原科技與飛槳經過長時間的適配合作和持續集成(CI)建設,對飛槳合?的每?行代碼都在燧原硬件上進?了驗證。如今,燧原正式納入飛槳例行版本發布體系。未來,燧原基于這?合作模式,共同?持飛槳重大版本發布,推動AI技術創新和開源?態
    的頭像 發表于 04-11 11:31 ?369次閱讀
    燧原科技正式<b class='flag-5'>納入</b>飛槳例行版本發布體系

    如何將Linux安裝包快速轉成玲瓏包

    本篇將以 motrix 為例為大家展示如何將 Linux 安裝包快速轉成玲瓏包。
    的頭像 發表于 03-12 16:01 ?411次閱讀
    <b class='flag-5'>如何將</b>Linux安裝包快速轉成玲瓏包

    如何將項目從IAR遷移到Embedded Studio

    本文描述如何將IAR EWARM項目遷移到SEGGER Embedded Studio(簡稱SES)中。
    的頭像 發表于 02-25 17:11 ?465次閱讀
    <b class='flag-5'>如何將</b>項目從IAR遷移到Embedded Studio

    如何將RT-Thread移植到NXP MCUXPressoIDE上

    RT-Thread默認支持的IDE只有IAR 和 Keil, 那如何將RT-Thread移植到NXP MCUXPressoIDE上呢?本文內容比較簡單但稍有瑣碎,希望對有需要的小伙伴有所幫助。
    的頭像 發表于 02-13 10:37 ?1725次閱讀
    <b class='flag-5'>如何將</b>RT-Thread移植到NXP MCUXPressoIDE上

    如何將python文件導入到ROS系統中

    本文通過使用myCobot機械臂進行QR碼視覺追蹤的實踐案例分析,介紹如何將 python 文件導入到 ROS 系統中。
    的頭像 發表于 02-11 11:08 ?659次閱讀
    <b class='flag-5'>如何將</b>python文件導入到ROS系統中

    如何快速創建用戶自定義BoardApp工程

    概述自HPM_SDKv1.7.0發布開始,在HPM_ENV中新增了user_template文件夾,以方便用戶快速創建自定義的BoardApp工程。user_template是用戶模板工程,用戶
    的頭像 發表于 02-08 13:38 ?400次閱讀
    如何快速創建用戶自定義<b class='flag-5'>Board</b>和<b class='flag-5'>App</b>工程

    STM32 BOOT跳轉到APP后初始化完后成死機 用了FREERTOS

    重復的 __disable_irq();//卡死后新增的,但是沒有用,跟上面應該是功能重復的 jump2app=(iapfun)*(vu32*)(appxaddr+4);//用戶代碼區第二個字為程序開始
    發表于 11-25 21:19

    Taro鴻蒙技術內幕系列(一):如何將React代碼跑在ArkUI上

    基于 Taro 打造的京東鴻蒙 APP 已跟隨鴻蒙 Next 系統公測,本系列文章深入解析 Taro 如何實現使用 React 開發高性能鴻蒙應用的技術內幕。
    的頭像 發表于 10-25 17:24 ?647次閱讀
    Taro鴻蒙技術內幕系列(一):<b class='flag-5'>如何將</b>React<b class='flag-5'>代碼</b>跑在ArkUI上

    tas5731如何在廣告機的APP直接調整EQ的設置?

    直接調整EQ的設置(類似音樂播放器的是EQ設置方式),想咨詢下有什么公式或者轉換代碼能夠實現直接得到寄存器的配置值?
    發表于 10-21 06:18

    如何將LVDS/OLDI橋接到HDMI/DVI

    電子發燒友網站提供《如何將LVDS/OLDI橋接到HDMI/DVI.pdf》資料免費下載
    發表于 09-27 09:35 ?1次下載
    <b class='flag-5'>如何將</b>LVDS/OLDI橋接到HDMI/DVI

    如何將BQ35100配置為EOS模式

    電子發燒友網站提供《如何將BQ35100配置為EOS模式.pdf》資料免費下載
    發表于 09-11 10:03 ?0次下載
    <b class='flag-5'>如何將</b>BQ35100配置為EOS模式

    如何將THS4541輸出差分信號轉換為單端信號?能否直接只使用輸出的其中一端,比如OUT+?

    我使用TI官網啥推薦的OPA857+THS4541作為APD接收信號處理電路,后級想用比較器作為時間鑒別,如何將THS4541輸出差分信號轉換為單端信號?能否直接只使用輸出的其中一端,比如OUT+?
    發表于 08-21 06:03

    如何將GPIO修改為QSPI SLSO?

    我們使用的是 TC49x,我能否 GPIO 用作 SLSO(SLSO 不是專用的),如果可以,請告訴我們如何將 GPIO 修改為 QSPI SLSO。 我正在使用 QSPI1,需要使用 P31.6 作為 SLSO ,請提供指導。
    發表于 07-22 06:25

    請問light demo如何添加esp_http_client例程?

    );*/ //app_wifi_initialise(); xTaskCreate(&http_test_task, \"http_test_task\", 8192, NULL, 5, NULL); } 2.官方現在是有有無一個demo projec
    發表于 06-28 15:46
    主站蜘蛛池模板: 欧美三级网址 | 禁漫羞羞a漫入口 | 天天做天天爱天天射 | 亚洲1234区乱码 | 日本一区二区三区不卡在线视频 | 国产高清不卡一区二区 | 女人张开腿给男人桶爽免费 | 一级毛片免费不卡直观看 | 日本a级特黄三级三级三级 日本边添边爱边摸边做边爱 | 久久久夜色精品国产噜噜 | 色狠狠色综合吹潮 | 亚洲精品视频免费 | 韩国三级精品 | 午夜亚洲精品 | 手机看片1024免费视频 | 国产精品好好热在线观看 | 激情综合在线观看 | 亚洲娇小性色xxxx | 欧美爽妇| 亚洲成在人线影视天堂网 | 免费在线观看a视频 | 亚洲一区二区三区影院 | 成年片色大黄全免费 | 日日操夜夜操天天操 | 欧美四虎影院 | 狠狠操欧美 | 在线色片 | yy8090韩国日本三理论免费 | 亚洲 另类 在线 欧美 制服 | 国产精品污视频 | 天天爽天天爱 | 精品三级网站 | 成年免费大片黄在线观看免费 | 日本免费黄色小视频 | 成年女人毛片免费视频 | 国产操视频 | 亚洲香蕉久久一区二区三区四区 | 天天爽夜夜爽天天做夜夜做 | 1024手机在线观看你懂的 | 日韩加勒比在线 | 欧美精品一级 |