91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

利用 RTOS的MCU設(shè)計嵌入式系統(tǒng)案例

454398 ? 來源:德州儀器 ? 作者:德州儀器 ? 2020-11-21 10:04 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

要求MCU 控制嵌入式系統(tǒng)中越來越多的功能。這些功能通常是實時的,需要定期維護,以滿足系統(tǒng)對響應(yīng)性,性能或可靠性的要求。通常,實時操作系統(tǒng)(RTOS)用于管理多個實時事件,以確保響應(yīng)能力足以滿足系統(tǒng)要求。然而,并非所有 MCU 都適合托管 RTOS,因此,對允許或便于在特定 MCU 上托管 RTOS 的一些關(guān)鍵功能的審查對實時嵌入式系統(tǒng)的設(shè)計人員非常有用。

本文將快速回顧現(xiàn)代 MCU 上可用的一些關(guān)鍵功能,這些功能有助于運行需要 RTOS 的嵌入式系統(tǒng)。這將有助于設(shè)計人員更有效地選擇 MCU 作為 RTOS 主機,并使用該 MCU 設(shè)計嵌入式系統(tǒng)。

管理實時響應(yīng)

隨著控制系統(tǒng)變得越來越復(fù)雜,使用簡單的控制程序管理各種 MCU 功能變得越來越困難。對于具有不同優(yōu)先級的多個事件,持續(xù)檢查以查看哪些事件需要服務(wù)的單個控制循環(huán)變得難以處理??刂苹芈窡o法足夠快地到達每個功能。所需要的是一種實時控制方法,其中所有事件都可以在其所需的響應(yīng)時間內(nèi)得到服務(wù)。

改善實時響應(yīng)的另一個選擇是使用實時操作系統(tǒng)或 RTOS。在該方法中,可以為控制系統(tǒng)中的每個任務(wù)分配 MCU 處理周期的時間片或部分。如果該功能不需要當(dāng)前分配的時間,它可以將時間“翻轉(zhuǎn)”到另一個功能,這樣就不會丟失寶貴的處理周期。如果沒有功能需要維修空閑過程(通常在低功率模式下),則可以啟動以節(jié)省電力??梢哉{(diào)整分配的時間片以確??捎玫淖钚r間量滿足所需的響應(yīng)時間。通過正確分配模數(shù)轉(zhuǎn)換器,USB 端口濾波器處理功能,系統(tǒng)將以可預(yù)測和有效的方式運行。

現(xiàn)代 MCU 已經(jīng)過優(yōu)化,可以輕松實現(xiàn) RTOS 實施。也許最明顯的是包含專用定時器,通常是與確定處理分配相關(guān)聯(lián)的“定時器滴答”,這使得向時間片分配時間變得容易。可以與其他 MCU 活動并行執(zhí)行任務(wù)的智能外圍設(shè)備也很有用,因為相關(guān)的過程只需要“觸發(fā)”事件,然后可以將控制權(quán)返回給另一個過程。例如,可以通過簡單地編程 DMA 控制器以將 SRAM 數(shù)據(jù)移動到 USB 端口來啟動 USB 傳輸。在清空緩沖區(qū)或發(fā)生錯誤之前,任務(wù)不需要執(zhí)行任何其他活動。

讓我們仔細看看一些最重要的支持 RTOS 的硬件元素,以便更好地理解我們?nèi)绾蝺?yōu)化基于 MCU 的 RTOS 實現(xiàn)。

使用高級中斷控制器

由于基于 RTOS 的系統(tǒng)需要快速有效地響應(yīng)實時事件,因此高級中斷系統(tǒng)可能是基于 MCU 的設(shè)計中最重要的硬件元素。例如,如果中斷需要太多周期來響應(yīng),可能是因為在調(diào)用中斷例程之前需要保存幾個 CPU 寄存器,實時響應(yīng)可能會受到影響。此外,如果中斷控制器只有少量可能的向量位置,軟件可能需要幾個周期才能找出中斷源。例如,中斷信號傳輸完成應(yīng)該很容易與傳輸錯誤區(qū)分開來。

Microchip PIC24F MCU 具有一個高級中斷控制器,具有實現(xiàn)基于 MCU 的 RTOS 所需的一些功能。 PIC24F 和 dsPIC MCU 系列的框圖如圖 1 所示。中斷控制器在圖中間以灰色顯示,連接所有外設(shè),定時器和多個輸入信號,以提供全面的中斷支持。多達 118 種不同的中斷源,最多 5 種來自外部源。對于五個周期的固定中斷延遲,中斷響應(yīng)時間對于任何應(yīng)用都足夠快。

圖 1:Microchip PIC24 和 dsPIC DSC 系列模塊圖。

PIC24 和 dsPIC DSC MCU 中斷控制器還支持七個優(yōu)先級,可以輕松區(qū)分最重要的事件和最不重要的事件。當(dāng)對某些事件立即響應(yīng)以及某些事件可以等待服務(wù)至關(guān)重要時,這尤其有用。例如,采集數(shù)據(jù)通常比處理數(shù)據(jù)更重要,因此采集事件的優(yōu)先級通常高于處理事件。

內(nèi)存占用和低功耗

當(dāng)從純粹的中斷或控制環(huán)路設(shè)計切換到基于 RTOS 的實現(xiàn)時,工程師最常遇到的兩個問題是內(nèi)存占用和低功耗。由于每個 RTOS 過程都需要 SRAM 中的特殊控制塊來存儲過程中的各種聲明信息,因此工程師經(jīng)常擔(dān)心它們將耗盡 SRAM 并因其應(yīng)用而“缺乏”內(nèi)存。幸運的是,隨著上下文切換時間和控制塊大小的優(yōu)化,RTOS 內(nèi)存占用量不斷提高。此外,MCU 在設(shè)備上包含越來越多的 SRAM,因為這種資源變得越來越便宜,同時變得越來越有價值。

例如,Atmel SAM4L MCU 在兩個塊中提供 32 KB 或 64 KB 的 SRAM-HRAMC0 和 HRAMC1- 如圖 2 中的系統(tǒng)內(nèi)存分配圖所示。這些 SRAM 塊是在單個周期中訪問,這是一個確定性過程,可簡化基于 RTOS 的系統(tǒng)中的關(guān)鍵延遲和性能計算。將 SRAM 組織為兩個獨立的存儲區(qū)也可以提高基于 DMA 的功能的性能,因為可以將存儲器塊分配給每個存儲區(qū)以優(yōu)化整體訪問帶寬。

圖 2:Atmel SAM4L MCU 全局內(nèi)存分配。

每個 RTOS 進程只需要幾百個字節(jié),即使是復(fù)雜的 RTOS,完整的上下文也只需占 MCU 的幾個百分點。一些設(shè)計人員經(jīng)常忽略的一點是,通過 RTOS 通信,緩沖區(qū)通??梢源蟠鬁p少,因為響應(yīng)時間更短,更可預(yù)測。對于某些功能,SRAM 節(jié)省的成本將超過上下文切換存儲要求的大小。

大多數(shù) RTOS 實現(xiàn)也完全支持低功耗模式。這意味著可以使用降低內(nèi)部調(diào)節(jié)電壓,降低時鐘速度或禁用特定外設(shè)時鐘的模式。 Atmel SAM4L MCU 具有一些專用控制器,可根據(jù)需要輕松調(diào)整電壓電平和時鐘速度,以滿足每個處理線程的要求。多個“空閑模式”也可用于在多個線程共享的幾個標(biāo)準(zhǔn)低功耗設(shè)置之間進行選擇。

簡化以太網(wǎng)連接

在具有高電平的實時系統(tǒng)中速度連接要求,例如以太網(wǎng),以太網(wǎng)很重要的硬件,但不應(yīng)忽視使其易于實施的支持“掛鉤”。例如,瑞薩 RX63N 具有先進的以太網(wǎng)控制器和專用的以太網(wǎng) DMA 控制器,可直接管理控制以太網(wǎng)傳輸?shù)拿枋龇_@大大簡化了以太網(wǎng)流量的控制,因為可以在以太網(wǎng)子系統(tǒng)中控制許多低級細節(jié)。此外,通過使用連接開發(fā)套件可以簡化 RTOS 環(huán)境中以太網(wǎng)連接的實現(xiàn),如圖 3 所示,該套件可與 Micrium RTOS 捆綁在一起。 MCU,開發(fā)板和 Micrium uC/OS-II 或 uC/OS-II RTOS 的這種組合提供了一個經(jīng)過驗證的平臺,現(xiàn)有的示例代碼可用作實現(xiàn)定制設(shè)計的第一步。

Micrium RTOS 還提供各種中間件模塊,進一步簡化了連接應(yīng)用。例如,IPv6 支持使得即使是最復(fù)雜的以太網(wǎng)子系統(tǒng)也能輕松實現(xiàn)。示例設(shè)計的可用性意味著可以在創(chuàng)紀(jì)錄的時間內(nèi)完成演示系統(tǒng)的工作。

DSP 應(yīng)用的高效處理

在某些應(yīng)用中,可以使用 RTOS 確保盡可能高效地完成處理。例如,DSP 應(yīng)用程序可以處理饑餓,如果多個通信通道競爭 CPU 周期,則效率會受到顯著影響。例如,德州儀器TI)TMS320C66xx DSP 具有顯著的處理能力。圖 4 中所示的處理核心中只有一個具有八個可以并行工作的獨立處理器(L/S/M/D 1 和 2)。使用 RTOS(如 TI-RTOS)時,可以更輕松地管理通信功能,以限制所需的 CPU 周期數(shù)。這樣可以節(jié)省處理時間,因為 DSP 可以解決大多數(shù)以 DSP 為中心的設(shè)計所需的大量數(shù)據(jù)。

圖 4:德州儀器(TI)TMS320C66xx DSP 提供顯著的處理性能。

結(jié)論

通常,嵌入式系統(tǒng)需要在指定時間內(nèi)響應(yīng)事件,在這些系統(tǒng)中,托管在 MCU 上的 RTOS 是可能的解。確保您了解在 MCU 上托管 RTOS 的要求,以便您可以選擇最佳的 MCU,并簡化基于 RTOS 的設(shè)計的開發(fā)。
編輯:hfy

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

    關(guān)注

    561

    文章

    8250

    瀏覽量

    367008
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    147

    文章

    18964

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    嵌入式系統(tǒng)應(yīng)用熱門的原因主要有幾個方面

    嵌入式軟件開發(fā)要想走向標(biāo)準(zhǔn)化,就必須使用多任務(wù)的操作系統(tǒng)嵌入式系統(tǒng)的應(yīng)用程序可以沒有操作系統(tǒng)直接在芯片上運行;但是為了合理地調(diào)度多任務(wù)、
    發(fā)表于 01-08 06:37

    RTOS嵌入式開發(fā)中的作用

    嵌入式系統(tǒng)中,有很多方式實現(xiàn)任務(wù)調(diào)度。功能有限的小系統(tǒng)中,無限循環(huán)足夠?qū)崿F(xiàn)系統(tǒng)功能。當(dāng)軟件設(shè)計變得龐大且復(fù)雜時,設(shè)計師應(yīng)該考慮使用RTOS
    發(fā)表于 12-26 07:53

    嵌入式基礎(chǔ)知識-系統(tǒng)調(diào)度

    系統(tǒng)調(diào)度是操作系統(tǒng)重要功能,在嵌入式開發(fā),也要了解系統(tǒng)調(diào)度的基本原理。對于嵌入式Linux開發(fā),一般使用多線程和多進程開發(fā),對于運行
    發(fā)表于 12-16 08:15

    什么是嵌入式操作系統(tǒng)?

    要理解嵌入式操作系統(tǒng)(Embedded Operating System,簡稱 RTOS/EOS),我們可以從本質(zhì)定義→核心區(qū)別→實際作用→典型特征→嵌入式開發(fā)場景適配,五個維度來拆解
    發(fā)表于 12-09 10:33

    嵌入式應(yīng)掌握的幾種能力

    基本掌握嵌入式處理器的基礎(chǔ)知識。嵌入式處理器種類很多:MCU(微控制器)、MPU(微處理器)、DSP(數(shù)字信號處理器)等。MCU,也就是我們常說的單片機。 初學(xué)期,重點放在單片機的
    發(fā)表于 12-08 06:05

    學(xué)習(xí)RTOS的意義?

    對于嵌入式軟件工程師,學(xué)習(xí)RTOS非常有必要。 1. 項目需要 隨著產(chǎn)品要實現(xiàn)的功能越來越多,單純的裸機系統(tǒng)已經(jīng)不能完美地解決問題,反而會使編程變得更加復(fù)雜,如果想降低編程的難度,就必須引入
    發(fā)表于 11-27 08:16

    嵌入式系統(tǒng)的定義和應(yīng)用領(lǐng)域

    嵌入式系統(tǒng),簡而言之,就是一種專為特定設(shè)備或裝置設(shè)計的計算機系統(tǒng)。它們通常配備一個嵌入式處理器,其控制程序被存儲在ROM中。這些系統(tǒng)在許多日
    發(fā)表于 11-17 06:49

    嵌入式實時操作系統(tǒng)的特點

    任務(wù)的系統(tǒng)。 實時嵌入式操作系統(tǒng)與傳統(tǒng)的桌面操作系統(tǒng)相比,更注重對實時任務(wù)的響應(yīng)和精確控制。它們在資源利用、可靠性、可預(yù)測性、任務(wù)調(diào)度和中斷
    發(fā)表于 11-13 06:30

    嵌入式rtos中哪一個更加值得去學(xué)習(xí)?

    嵌入式圈里聊 RTOS,總有人揪著任務(wù)調(diào)度的那點差異爭得面紅耳赤,可實際上這東西做透了大家都大差不差 —— 優(yōu)先級調(diào)度、時間片輪轉(zhuǎn),核心邏輯翻來覆去就那些,真到項目里誰也沒比誰快出多少,哪怕是所謂
    的頭像 發(fā)表于 11-05 10:48 ?729次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>rtos</b>中哪一個更加值得去學(xué)習(xí)?

    如何采用SAFERTOS和ESM保護嵌入式系統(tǒng)安全

    信任根的重要組成部分是實時操作系統(tǒng)RTOS),它為應(yīng)用程序的運行提供了一個安全的平臺。嵌入式系統(tǒng)的具體安全要求取決于其架構(gòu)以及所面臨的威脅。在本博客中,我們將探討
    的頭像 發(fā)表于 10-24 15:51 ?1510次閱讀

    嵌入式需要掌握哪些核心技能?

    嵌入式需要掌握哪些核心技能? 若想通過學(xué)習(xí)嵌入式技術(shù)提升就業(yè)競爭力,需重點掌握C語言、嵌入式硬件架構(gòu)、RTOS/Linux開發(fā)、通信協(xié)議四大核心技能,并結(jié)合行業(yè)需求積累項目經(jīng)驗。
    發(fā)表于 10-21 16:25

    入行嵌入式應(yīng)該怎么準(zhǔn)備?

    知識: 一、C/C++編程C/C++是嵌入式系統(tǒng)開發(fā)中最常用的編程語言。熟練掌握C/C++語言將使你能夠理解和編寫底層驅(qū)動程序、操作系統(tǒng)以及與硬件交互的代碼。對于嵌入式
    發(fā)表于 08-06 10:34

    芯科科技MCU助力低功耗高效嵌入式系統(tǒng)設(shè)計

    當(dāng)考慮提升嵌入式系統(tǒng)速度或能效時,腦海中浮現(xiàn)的可能是更快的CPU或更智能的睡眠模式。但如果我告訴您,Silicon Labs(芯科科技)微控制器(MCU)內(nèi)部藏著一位無名英雄,能在完全不喚醒CPU的情況下大幅提升設(shè)計智能度呢?這
    的頭像 發(fā)表于 07-29 16:26 ?1677次閱讀

    Linux嵌入式和單片機嵌入式的區(qū)別?

    ,開發(fā)工具包括GCC、Makefile等。 3.操作系統(tǒng) : 單片機嵌入式 :一般不使用完整的操作系統(tǒng),或者使用簡單的實時操作系統(tǒng)RTOS
    發(fā)表于 06-20 09:46

    嵌入式開發(fā)入門指南:從零開始學(xué)習(xí)嵌入式

    基礎(chǔ) 3. 學(xué)習(xí)路徑推薦第一階段:熟悉開發(fā)環(huán)境(如Keil、IAR、STM32)第二階段:掌握裸機編程與驅(qū)動開發(fā)第三階段:學(xué)習(xí)RTOS(實時操作系統(tǒng))如FreeRTOS第四階段:深入理解Linux嵌入式
    發(fā)表于 05-15 09:29