RM新时代网站-首页

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

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

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

West提貨單單一應用的提貨單使用方法

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

簡潔清晰的代碼結(jié)構(gòu)有利于項目代碼的管理,Zephyr的West工具對多倉庫代碼文件提供了多種拓撲結(jié)構(gòu)管理方式。West對多倉庫的管理基本概念可以參考Zephyr west簡介中”提貨單簡介”章節(jié),本文主要討論單一應用的提貨單使用方法。

Zephyr代碼工作空間的拓撲結(jié)構(gòu)

West支持的代碼拓撲結(jié)構(gòu)有三種

T1: 星型結(jié)構(gòu),manifest 在zephyr中

T2: 星型結(jié)構(gòu),manifest 在app中, 適用于單獨應用管理

T3: 樹型結(jié)構(gòu),專門的manifest目錄, 適用于多應用管理

T1

zephyr倉庫作為中央存儲庫,并在它的west.yml 中指定其模塊(外部項目), app可以放到任意目錄。這種形式在不修改west.yml的情況下會下載所有的外部module,適合于Zephyr本身的開發(fā)。

類似于以Zephyr為主項目,其它為git子模塊,這是Zephyr Getting Started示例使用的目錄結(jié)構(gòu),這里就不再舉例說明

T2

應用程序的倉庫充當中央存儲庫,并在它的west.yml中指定要使用的模塊(zephyr和其它外部項目)。該方式適合于單個獨立的Zephyr應用的開發(fā)。

類似于以Zephyr應用為主項目,其它(包括zephyr)為git子模塊,后文會詳細說明該方式的使用,這里不做舉例。

T3

不包含 Zephyr 源代碼的專用”提貨單”存儲庫,指定所有處于同一“級別”的項目列表,適合于多個相互獨立的Zephyr應用開發(fā)。

類似于google的repo管理,示例如下

工作空間的代碼結(jié)構(gòu)

west-workspace/

├── app1/ # .git/ project

│ ├── CMakeLists.txt

│ ├── prj.conf

│ └── src/

│ └── main.c

├── app2/ # .git/ project

│ ├── CMakeLists.txt

│ ├── prj.conf

│ └── src/

│ └── main.c

├── manifest-repo/ # .git/ never modified by west

│ └── west.yml # main manifest with optional import(s) and override(s)

├── modules/

│ └── lib/

│ └── tinycbor/ # .git/ project from either the main manifest or

│ # from some import

└── zephyr/ # .git/ project

└── west.yml # This can be partially imported with lower precedence or ignored.

# Only the ‘manifest-rev’ version can be imported.

對應的提貨單應該放在manifest-repo/west.yml

manifest:

remotes:

- name: zephyrproject-rtos

url-base: https://github.com/zephyrproject-rtos

- name: your-git-server

url-base: https://git.example.com/your-company

defaults:

remote: your-git-server

projects:

- name: zephyr

remote: zephyrproject-rtos

revision: v2.5.0

import: true

- name: app1

revision: SOME_SHA_OR_BRANCH_OR_TAG

- name: app2

revision: ANOTHER_SHA_OR_BRANCH_OR_TAG

self:

path: manifest-repo

單一應用West提貨單

我的個人項目只有單應用,因此采用T1或者T2結(jié)構(gòu)都可以。我希望應用倉庫里面只有單純和應用相關(guān)的代碼,同時又能夠通過應用倉庫拿到Zephyr代碼和必要的外部項目代碼,這一點T2就非常合適了。

應用倉庫的代碼拓撲結(jié)構(gòu)如下

app

├── CMakeLists.txt

├── boards

├── drivers

├── dts

├── prj.conf

├── scripts

├── src

└── west.yml

west.yaml內(nèi)容如下

manifest:

remotes:

- name: zephyrproject-rtos

url-base: https://github.com/zephyrproject-rtos

projects:

- name: zephyr

remote: zephyrproject-rtos

revision: zephyr-v2.6.0

clone-depth: 1

import:

name-allowlist:

- cmsis

- hal_nxp

- hal_espressif

- fatfs

- lvgl

self:

west-commands: scripts/west-commands.yml

執(zhí)行下面命令west init -l app/就會按照west.yaml指定的內(nèi)容下載zephyr和zephyr外部項目的代碼,該west.yaml要下載的內(nèi)容:

Zephyr的源代碼:指定下載v2.6.0 tag的

cmsis: 使用cortex-m7,需要cmsis

hal_nxp: 應用會跑到rt1052上因此需要nxp hal

hal_espressif: 應用會跑到esp32上因此需要espressif hal

fatfs:應用使用了文件系統(tǒng)

lvgl:應用使用了gui

除以上內(nèi)容外,不會再下載其它內(nèi)容,這樣大大縮減了T1模式下載代碼的時間和占用的空間

├── LICENSE

├── README.en.md

├── README.md

├── app

│ ├── CMakeLists.txt

│ ├── boards

│ ├── drivers

│ ├── dts

│ ├── prj.conf

│ ├── scripts

│ ├── src

│ └── west.yml

├── modules

│ ├── fs

│ ├── hal

│ └── lib

└── zephyr

參考

https://docs.zephyrproject.org/latest/guides/west/workspaces.html#topologies-supported

編輯:jq

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

    關(guān)注

    6

    文章

    323

    瀏覽量

    39189
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4779

    瀏覽量

    68521
  • Zephyr
    +關(guān)注

    關(guān)注

    0

    文章

    21

    瀏覽量

    5963
收藏 人收藏

    評論

    相關(guān)推薦

    利用RFID技術(shù)實現(xiàn)倉管人員提貨的自動化管理方案

    那么在現(xiàn)代高度集成化的貨物倉儲管理中,如何合理安排人員權(quán)限問題呢?針對個大型貨運倉庫,如果能做到恰當安排人員的提貨權(quán)限,那么就可以大大減少甚至避免發(fā)貨物、提錯貨、貨物丟失的情況;從而實現(xiàn)高效
    的頭像 發(fā)表于 12-20 09:31 ?4694次閱讀
    利用RFID技術(shù)實現(xiàn)倉管人員<b class='flag-5'>提貨</b>的自動化管理方案

    瑞芯微2022年財報:凈利下滑近半,Q3提貨接近0

    下降 50.58% ;扣非歸母凈利潤為1.73億元, 同比下降 61.28% 。從財報數(shù)據(jù)來看,瑞芯微也沒能“逃離”行業(yè)下游需求下滑,以及去庫存的影響,這兩大關(guān)鍵因素也是瑞芯微2022年業(yè)績下滑的原因。 ? 2022 年需求下滑至冰點,Q3 提貨接近0 分季度來看,瑞芯微在第
    的頭像 發(fā)表于 04-14 01:12 ?1998次閱讀
    瑞芯微2022年財報:凈利下滑近<b class='flag-5'>一</b>半,Q3<b class='flag-5'>提貨</b>接近0

    九江市歐姆龍定位模塊回收 回收上門提貨

    回收咨詢***-同步微信。九江市歐姆龍定位模塊回收 回收上門提貨,,回收二手歐姆龍CPU模塊上門回收歐姆龍產(chǎn)品,專業(yè)從事各種電子元件的回收,回收歐姆龍模塊、回收歐姆龍plc擴展模塊,觸摸屏高價回收
    發(fā)表于 10-21 14:57

    ESD5641D12-3/TR現(xiàn)貨出售 濰坊回收進口電容 統(tǒng)貨單片機收購

    濰坊回收進口電容 統(tǒng)貨單片機收購科啟源專業(yè)電子回收18年,價高同行,誠信報價收購工廠呆料IC芯片,退港貨,轉(zhuǎn)行積壓庫存貨,金額大小都收;自己壓貨,現(xiàn)金交易(IC 、內(nèi)存、傳感器)樂意還價!厭不其煩
    發(fā)表于 10-26 13:39

    東莞常平回收工廠電感 統(tǒng)貨單片機收購

    東莞常平回收工廠電感 統(tǒng)貨單片機收購科啟達電子專業(yè)收購電料貼片直插IC集成IC、二、三極管、手機料、CPU內(nèi)存、繼電器、濾波器、光耦、模塊TI,XILINX,ATMEL,ALTERA,AD,ST
    發(fā)表于 11-03 13:52

    底片的使用方法()

    底片的使用方法() 作者:占斌1.前言
    發(fā)表于 04-16 21:17 ?693次閱讀
    底片的<b class='flag-5'>使用方法</b>(<b class='flag-5'>一</b>)

    Matlab使用方法和程序設計

    Matlab使用方法和程序設計 實驗 Matlab使用方法和程序設計、
    發(fā)表于 10-17 00:18 ?5392次閱讀
    Matlab<b class='flag-5'>使用方法</b>和程序設計

    基于RFID技術(shù)的倉儲管理提貨方案設計

    設計了種基于EPC編碼規(guī)則的倉管人員提貨管理方案。通過對提貨人員EPC特殊編碼,從而實現(xiàn)提貨權(quán)限的合理分配與管理。有效解決了大型倉庫出入庫操作的復雜流程,大大減少
    發(fā)表于 02-16 16:13 ?99次下載
    基于RFID技術(shù)的倉儲管理<b class='flag-5'>提貨</b>方案設計

    奇趣科技推出款基于嵌入式linux的面向單一應用的開發(fā)平臺

    奇趣科技公司日前推出了款基于嵌入式linux的面向單一應用嵌入式產(chǎn)品的開發(fā)平臺qtopiacore,可用于汽車自動化、醫(yī)療設備、pos機、辦公設備以及圖象處理設備的開發(fā)等。
    發(fā)表于 03-11 15:03 ?994次閱讀

    Keil的使用方法 - 常用功能(

    Keil的使用方法 - 常用功能(
    的頭像 發(fā)表于 04-07 14:51 ?8812次閱讀
    Keil的<b class='flag-5'>使用方法</b> -  常用功能(<b class='flag-5'>一</b>)

    示波器的使用方法(三):示波器的使用方法詳解

    示波器的使用方法并非很難,重點在于正確使用示波器的使用方法。往期文章中,小編對模擬示波器的使用方法和數(shù)字示波器的使用方法均有所介紹。為增進大家對示波器的
    的頭像 發(fā)表于 12-24 20:37 ?3257次閱讀

    淺析Zephyr應用的代碼結(jié)構(gòu)中的自定義驅(qū)動

    本篇是《《Zephyr應用的代碼結(jié)構(gòu)》》系列的終篇和下面兩篇文章起可以構(gòu)建出個有app獨立管理的zephyr項目 Zephyr應用的代碼結(jié)構(gòu)--West提貨單: zephyr和ze
    的頭像 發(fā)表于 08-18 09:08 ?4776次閱讀

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

    在Zephyr應用的代碼結(jié)構(gòu)--West提貨單一文中已經(jīng)將zephyr和zephyr外部項目納入到應用的管理,應用可以基于zephyr的任意開發(fā)板進行開發(fā)。不過實際的嵌入式應用場景需要對硬件進行定制
    的頭像 發(fā)表于 08-18 09:23 ?1795次閱讀

    數(shù)智先鋒談丨軟通咨詢彭智勇(下):融合“咨詢+實施”能力,重塑供應鏈金融

    某小企業(yè)手握大量訂單也不敢擴大生產(chǎn),因為缺乏資金采購原材料;某企業(yè)同批產(chǎn)品重復質(zhì)押融資,暴雷后給銀行帶來巨額資金損失;某信貸經(jīng)理爬上高高的倉庫,識別出提貨單造假,避免了貸款風險…… 類似的故事
    的頭像 發(fā)表于 12-20 09:45 ?301次閱讀
    數(shù)智先鋒談丨軟通咨詢彭智勇(下):融合“咨詢+實施”能力,重塑供應鏈金融

    從多線程設計模式到對 CompletableFuture 的應用

    提到的 Future 模式 ,以及在實際業(yè)務開發(fā)中對該模式的應用,而這些內(nèi)容對于本書來說只是冰山角,還是推薦大家有時間去閱讀原書。 1. Future 模式:“先給您提貨單” 我們先來看個場景:假如我們?nèi)サ案獾曩I蛋糕,下單后
    的頭像 發(fā)表于 06-26 14:18 ?343次閱讀
    從多線程設計模式到對 CompletableFuture 的應用
    RM新时代网站-首页