一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

Duo 系列開(kāi)發(fā)板支持 Zephyr 了,趕緊拿出你的 Duo 來(lái)試試吧!

算能開(kāi)發(fā)者社區(qū) ? 2024-05-17 08:33 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

RTOS(Real-Time Operating System實(shí)時(shí)操作系統(tǒng))能夠讓設(shè)備在關(guān)鍵時(shí)刻以精準(zhǔn)的時(shí)序執(zhí)行任務(wù),為工業(yè)控制、物聯(lián)網(wǎng)設(shè)備、智能家居設(shè)備等都提供了可靠的底層支持,選擇一個(gè)合適的 RTOS 將決定項(xiàng)目的成功與否,那么今天就為大家介紹如何使用 DuoS 運(yùn)行 Zephyr RTOS 這款由 Linux 基金會(huì)維護(hù)、功能齊全的實(shí)時(shí)操作系統(tǒng)。

什么是 Zephyr RTOS?

Zephyr是一個(gè)開(kāi)源、靈活且安全的RTOS,從資源受限的物聯(lián)網(wǎng)傳感器到復(fù)雜的工業(yè)設(shè)備,Zephyr憑借其日漸強(qiáng)大和完善的功能迅速獲得了廣泛的認(rèn)可。這里我們列出幾個(gè)主要特性:

  • 模塊化設(shè)計(jì):輕量級(jí)、靈活,Zephyr RTOS最低只要求8KB的內(nèi)存,并允許開(kāi)發(fā)者根據(jù)需求定制操作系統(tǒng)的各個(gè)模塊,來(lái)擴(kuò)展支持復(fù)雜的應(yīng)用和硬件。
  • 強(qiáng)大的安全性:支持多種調(diào)度算法,包括合作式、搶占式和最早截止期優(yōu)先調(diào)度等。Zephyr還提供了加密、安全啟動(dòng)和固件更新等多種安全功能。
  • 廣泛的硬件支持:兼容多種架構(gòu),如ARM、x86、RISC-V和ARC等,并擁有豐富的外圍驅(qū)動(dòng)和板級(jí)支持包,目前社區(qū)支持的板卡已經(jīng)超過(guò)了450種。
  • 強(qiáng)大開(kāi)發(fā)工具:與主流開(kāi)發(fā)工具集成,擁有活躍的社區(qū)支持和詳細(xì)文檔,能夠讓開(kāi)發(fā)者迅速上手。

感興趣的話可以查閱官方網(wǎng)站了解關(guān)于 Zephyr OS 的更多功能。

Zephyr 系統(tǒng)架構(gòu)

Zephyr是一個(gè)開(kāi)源、靈活且安全的RTOS,從資源受限的物聯(lián)網(wǎng)傳感器到復(fù)雜的工業(yè)設(shè)備,Zephyr憑借其日漸強(qiáng)大和完善的功能迅速獲得了廣泛的認(rèn)可。這里我們列出幾個(gè)主要特性:

  • 模塊化設(shè)計(jì):輕量級(jí)、靈活,Zephyr RTOS最低只要求8KB的內(nèi)存,并允許開(kāi)發(fā)者根據(jù)需求定制操作系統(tǒng)的各個(gè)模塊,來(lái)擴(kuò)展支持復(fù)雜的應(yīng)用和硬件。
  • 強(qiáng)大的安全性:支持多種調(diào)度算法,包括合作式、搶占式和最早截止期優(yōu)先調(diào)度等。Zephyr還提供了加密、安全啟動(dòng)和固件更新等多種安全功能。
  • 廣泛的硬件支持:兼容多種架構(gòu),如ARM、x86、RISC-V和ARC等,并擁有豐富的外圍驅(qū)動(dòng)和板級(jí)支持包,目前社區(qū)支持的板卡已經(jīng)超過(guò)了450種。
  • 強(qiáng)大開(kāi)發(fā)工具:與主流開(kāi)發(fā)工具集成,擁有活躍的社區(qū)支持和詳細(xì)文檔,能夠讓開(kāi)發(fā)者迅速上手。感興趣的話可以查閱官方網(wǎng)站了解關(guān)于 Zephyr OS 的更多功能。

Zephyr 系統(tǒng)架構(gòu)

169bf91a-13e5-11ef-9043-92fbcf53809c.png

Zephyr 與其他 RTOS 的對(duì)比

特性

Zephyr

FreeRTOS

RT-Thread

許可證

Apache 2.0

MIT

Apache 2.0

架構(gòu)支持

ARM, x86, RISC-V, ARC等

ARM, x86, RISC-V等

ARM, x86, RISC-V, ARC等

模塊化設(shè)計(jì)

高度模塊化

中度模塊化

高度模塊化

內(nèi)存占用

安全特性

內(nèi)存保護(hù)、多層次加密

基本加密支持

內(nèi)存保護(hù)、加密支持

網(wǎng)絡(luò)協(xié)議

多種協(xié)議支持,包括BLE、Wi-Fi、CAN

TCP/IP、UDP等

TCP/IP、BLE等

社區(qū)支持

活躍、全球性

活躍、全球性

活躍、亞洲為主

典型應(yīng)用

工業(yè)、物聯(lián)網(wǎng)、可穿戴設(shè)備等

工業(yè)、汽車等

工業(yè)、家居等

優(yōu)點(diǎn)

內(nèi)核服務(wù)、靈活調(diào)度、多架構(gòu)支持

任務(wù)管理、內(nèi)存管理、低功耗模式

多線程管理、事件驅(qū)動(dòng)、文件系統(tǒng)、中文資料豐富

Zephyr 在 Duo S 上的應(yīng)用

算能SG2000和SG2002,作為同時(shí)能夠支持RISC-V、ARM以及已經(jīng)適配了FreeRTOS的新型SoCs,結(jié)合了高計(jì)算能力與低功耗的特點(diǎn),同樣支持Zephyr RTOS。想體驗(yàn)、探索Zephyr的開(kāi)發(fā)者們,繼續(xù)往后看,這里我們以Milk-V Duo-S這塊開(kāi)發(fā)板(搭載sg2000)為例,展示如何移植(以下步驟均在Ubuntu22..04環(huán)境下執(zhí)行)。

16b57d9a-13e5-11ef-9043-92fbcf53809c.png

1.環(huán)境搭建:

具體參考Zephyr官方文檔:https://docs.zephyrproject.org/latest/develop/getting_started/index.html

安裝依賴庫(kù)

sudo apt install --no-install-recommends git cmake ninja-build gperf \ccache dfu-util device-tree-compiler wget \python3-dev python3-pip python3-setuptools python3-tk python3-wheel xz-utils file \make gcc gcc-multilib g++-multilib libsdl2-dev libmagic1

主要的依賴庫(kù)所需的最低版本如下,請(qǐng)安裝完成后檢查是否滿足要求。

  • CMake:3.20.5
  • Python:3.10
  • Devicetree compiler:1.4.6 按照官方建議,我們使用python虛擬環(huán)境來(lái)進(jìn)行Zephyr項(xiàng)目的構(gòu)建:

sudoaptinstallpython3-venvpython3 -m venv ~/zephyrproject/.venv //構(gòu)建一個(gè)新的虛擬環(huán)境source ~/zephyrproject/.venv/bin/activate //激活環(huán)境pip install west //zephyr提供的”meta-tool”,可看成一個(gè)git工具

接下來(lái)我們需要安裝Zephyr SDK:

wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.5-1/zephyr-sdk-0.16.5-1_linux-x86_64.tar.xzwget -O - https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.5-1/sha256.sum | shasum --check --ignore-missingcd zephyr-sdk-0.16.5-1 && ./setup.sh

2.項(xiàng)目配置

west init ~/zephyrproject –m https://github.com/plctlab/rvspoc-p2307-zephyr.gitcd ~/zephyrproject/zephyrwest update //確認(rèn)版本是否一致

3.編譯

這里我們用經(jīng)典的blinky閃爍來(lái)做測(cè)試,該示例會(huì)以1s的時(shí)間間隔閃爍開(kāi)發(fā)板上的LED燈:

west build -p always -b milkv_duos -s samples/basic/blinky

編譯成功后,會(huì)在~/zephyrproject/zephyr/build/zephyr路徑下找到我們的zephyr.bin

4.驗(yàn)證

刪掉milkv官方倉(cāng)庫(kù)里的PINMUX設(shè)定來(lái)避免引腳復(fù)用,然后重新編譯鏡像(具體細(xì)節(jié)查看倉(cāng)庫(kù)README)并燒錄到TF卡上,掛載到boot分區(qū)。記得先將大核 linux 下的 /mnt/system/blink.sh 重命名,此時(shí)LED 燈將不再默認(rèn)閃爍。接下來(lái),用如下命令將編譯好的zephyr.bin替換掉原本的fip.bin:

python3 /path/to/duo-buildroot-sdk/fsbl/plat/cv180x/fiptool.py \ -v genfip "/path/to/tfcard/fip.bin" \ --OLD_FIP="/path/to/tfcard/fip.bin" \ --BLCP_2ND="build/zephyr/zephyr.bin"

將TF卡放到duo-s開(kāi)發(fā)板的卡槽中,上電!開(kāi)機(jī)!可以看到藍(lán)色LED燈重新開(kāi)始閃爍,代表我們的Zephyr RTOS就成功移植到我們的板子上啦!


此示例里我們驗(yàn)證了GPIO,SysTick(CLINT中斷)的可行性。

適配外設(shè)

  • Mailbox
  • PINMUX
  • GPIO
  • PWM
  • UART

16de69d0-13e5-11ef-9043-92fbcf53809c.png

以上就是我們對(duì)Zephyr RTOS的介紹和移植說(shuō)明。無(wú)論您是在開(kāi)發(fā)智能家居設(shè)備,還是計(jì)劃在物聯(lián)網(wǎng)領(lǐng)域大展宏圖,Zephyr 都是一個(gè)不錯(cuò)的選擇。搭載 SG200X 的 Duo 系列開(kāi)發(fā)板能夠?yàn)殚_(kāi)發(fā)者提供可靠的項(xiàng)目支持??靵?lái)開(kāi)啟 Zephyr on RISC-V 的探索之旅吧!

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

    關(guān)注

    37

    文章

    7140

    瀏覽量

    125527
  • 智能家居
    +關(guān)注

    關(guān)注

    1934

    文章

    9796

    瀏覽量

    190473
  • RTOS
    +關(guān)注

    關(guān)注

    24

    文章

    850

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】Duo S(SG2000)開(kāi)發(fā)板測(cè)評(píng)

    安全啟動(dòng),安全更新,安全加密等,為用戶從開(kāi)發(fā)、量產(chǎn)、產(chǎn)品應(yīng)用,提供一系列安全解決方案。 Duo S GPIO 引腳分配如下圖所示。 排針 J3 排針 J3 上的 GPIO 使用 3.3V 邏輯電平
    發(fā)表于 07-11 22:46

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】SDK編譯、人臉檢測(cè)、OpenCV測(cè)試

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】SDK編譯、人臉檢測(cè)、OpenCV測(cè)試 本文介紹 Milk-V Duo S 開(kāi)發(fā)板實(shí)現(xiàn) Bui
    發(fā)表于 07-11 13:48

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】開(kāi)發(fā)環(huán)境搭建和測(cè)試

    是gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu。 四、編譯源碼 選擇demo里面的點(diǎn)燈,需要針對(duì)Milk-V Duo S 開(kāi)發(fā)板修改初始化代碼: #include <
    發(fā)表于 07-10 00:31

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】Duo S(SG2000)初步使用

    。 加載完鏡像后點(diǎn)擊“寫入”按鈕即可,會(huì)彈出警告,點(diǎn)擊“Yes”等待寫入完成。 等待燒寫完成即可。 寫入成功后即可將SD卡插入開(kāi)發(fā)板。 4 系統(tǒng)調(diào)試 如果系統(tǒng)燒寫成功后,接下來(lái)就可以調(diào)試系統(tǒng)
    發(fā)表于 07-10 00:27

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】人臉識(shí)別Demo應(yīng)用

    duo-tdl-examples 自動(dòng)安裝配置環(huán)境source envsetup.sh 選擇板子類型和處理器類型我這里都是2 完成編譯樣例cd sample_vi_fdmake導(dǎo)入程序到開(kāi)發(fā)板scp
    發(fā)表于 07-09 11:09

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】2 - 安裝編譯環(huán)境并測(cè)試Hello world!

    感謝電子發(fā)燒友和Milk-V提供的評(píng)測(cè)機(jī)會(huì)。 引言 前面已經(jīng)簡(jiǎn)單介紹Milk-V DuoS 開(kāi)發(fā)板,今天來(lái)安裝一下交叉編譯開(kāi)發(fā)環(huán)境。本地使用的是Windows 中 WSL 安裝的 Ubuntu
    發(fā)表于 07-07 21:18

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】網(wǎng)絡(luò)連接、分區(qū)擴(kuò)展、外殼設(shè)計(jì)

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】網(wǎng)絡(luò)連接、分區(qū)擴(kuò)展、外殼設(shè)計(jì) 本文介紹 Milk-V Duo S 開(kāi)發(fā)板實(shí)現(xiàn)網(wǎng)絡(luò)連接、分區(qū)擴(kuò)展
    發(fā)表于 07-05 12:12

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】1-開(kāi)箱和燒寫鏡像

    感謝電子發(fā)燒友和Milk-V提供的評(píng)測(cè)機(jī)會(huì)。 開(kāi)發(fā)板簡(jiǎn)介 我以前在電子發(fā)燒友評(píng)測(cè)過(guò)Milk-V Duo,也曾經(jīng)帶學(xué)生打過(guò)集創(chuàng)賽算能賽道,對(duì)他們的產(chǎn)品有所了解。Milk-V Duo S 是 Du
    發(fā)表于 07-02 20:42

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】應(yīng)用開(kāi)發(fā)環(huán)境搭建

    方式傳送到 Duo 設(shè)備中,比如默認(rèn)固件支持的 USB-NCM 方式,Duo 的 IP 為 192.168.42.1,用戶名是 root,密碼是 milkv。 $ scp helloworld
    發(fā)表于 07-01 21:22

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】鏡像燒錄與開(kāi)箱上電

    介紹下DuoS。 這里我主要看中了它的多核異構(gòu),可以玩下多OS混合部署。 DuoS簡(jiǎn)介 Milk-V DuoS 是 Duo 的升級(jí)型號(hào),升級(jí) SG2000 主控,擁有更大的內(nèi)存(512MB)和更多
    發(fā)表于 06-30 19:19

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】Milk-V Duo S 開(kāi)發(fā)板試用報(bào)告(3)網(wǎng)絡(luò)

    root@192.168.42.1 登陸到 Duo 的終端。 我們直接打開(kāi)終端輸入:ssh root@192.168.42.1即可連接上Duo S,前提是要把它接上電腦。 進(jìn)入ssh第一次連接會(huì)有一大長(zhǎng)串提示,只需先
    發(fā)表于 06-30 13:21

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】Milk-V Duo S 開(kāi)發(fā)板試用報(bào)告(1)開(kāi)箱

    ,就沒(méi)有這種待遇。 再來(lái)看看板子的結(jié)構(gòu),(圖2.1為Duo S,圖2.2為Duo) 圖2.1 圖2.2 可以看到,Duo S最顯眼的地方就是新增的: 4排GPIO引腳(52針
    發(fā)表于 06-29 19:43

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】燒錄系統(tǒng)與SSH登錄體驗(yàn)

    TF卡插到開(kāi)發(fā)板,TypeC USB接電腦上電 可以看到LED閃爍,說(shuō)明系統(tǒng)運(yùn)行。 USB枚舉虛擬網(wǎng)絡(luò)連接SSH登錄 USB會(huì)枚舉出RNDIS虛擬網(wǎng)卡 設(shè)備管理器看到如下
    發(fā)表于 06-28 23:56

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】開(kāi)箱、介紹、系統(tǒng)更新

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】開(kāi)箱、介紹、系統(tǒng)更新 本文介紹 Milk-V Duo S 開(kāi)發(fā)板的相關(guān)信息,包括開(kāi)箱與外觀展示
    發(fā)表于 06-28 09:18

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】Milk-V Duo S開(kāi)箱、固件燒寫和系統(tǒng)體驗(yàn)

    攝像頭(2x MIPI CSI 2 通道)和 MIPI 視頻輸出(MIPI DSI 4 通道)。 二、開(kāi)箱 Milk-V Duo S 盒子的正面帶有SG2000 soc的開(kāi)發(fā)板素描,尤其說(shuō)明支持RTOS
    發(fā)表于 06-27 23:21