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

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

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

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

嵌入式軟件架構(gòu)的設(shè)計(jì)中分類整理

嵌入式應(yīng)用開發(fā) ? 來源:嵌入式應(yīng)用開發(fā) ? 作者:嵌入式應(yīng)用開發(fā) ? 2022-08-18 11:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

最近項(xiàng)目有點(diǎn)多,總結(jié)一下目前接觸的軟件架構(gòu)中的幾個分類,個人拙見,大家可以相互學(xué)習(xí)。

1. 分層設(shè)計(jì)

分層設(shè)計(jì),就是把整個流程要做的事情按照模塊化各自的特征,進(jìn)行功能的分層,是和硬件寄存器打交道的,還是完全脫離硬件和業(yè)務(wù)打交道的。

一般來說,個人總結(jié)有幾個原則:接口是上下級調(diào)用,很少跨層調(diào)用。即第4層的代碼一般不會直接去第1/2層調(diào)用接口,非要用的話,就從第3層透傳封裝一下。同層級的模塊間盡量避免相互調(diào)用,需要的數(shù)據(jù)都是通過高一層的接口獲取再下傳

MCU程序:單片機(jī)程序就是一個程序驅(qū)動硬件,實(shí)現(xiàn)一個具體功能,代碼特點(diǎn)就是從底到高,基本所有層都會涉及,所以對單片機(jī)程序進(jìn)行分層,相對來說會比較完整。5層軟件架構(gòu)

1.硬件驅(qū)動層

2.功能模塊層

3.應(yīng)用接口層

4.業(yè)務(wù)邏輯層

5.應(yīng)用層

6層軟件架構(gòu)

1.HAL硬件抽象層

2.OSL操作系統(tǒng)

3.HDL硬件驅(qū)動層

4.FML功能模塊層

5.BLL業(yè)務(wù)邏輯層

6.APL應(yīng)用層

pYYBAGL9tT6AaFhHAAGVg09cGE8495.png

功能模塊層是按照項(xiàng)目需求提取出來的功能,需要硬件抽象層和硬件驅(qū)動層的硬件支持才能實(shí)現(xiàn),功能模塊層根據(jù)項(xiàng)目的功能需求改變而改變,而硬件抽象層和硬件驅(qū)動層則是項(xiàng)目需求書中的功耗等硬件相關(guān)的需求變動而改變,當(dāng)然,若子功能的增加而硬件不支持,則也需更換硬件驅(qū)動。比如項(xiàng)目中的數(shù)據(jù)儲存功能,硬件支持有AT24C02、W25Q128和芯片本身的FLASH,都可以支持?jǐn)?shù)據(jù)儲存功能,即使后期因?yàn)楣幕蚬?jié)約成本等問題,硬件的更換也不影響數(shù)據(jù)儲存功能的實(shí)現(xiàn)(前提規(guī)劃好標(biāo)準(zhǔn)規(guī)范的API函數(shù)定義)且避免了重寫該功能代碼所帶來的各種問題,保證了該功能的穩(wěn)定性。

裸機(jī)上跑操作系統(tǒng)需要考慮系統(tǒng)調(diào)度間的問題,內(nèi)存消耗,內(nèi)存踐踏,內(nèi)存泄漏,看門狗喂狗等操作。

審核編輯:湯梓紅

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

    關(guān)注

    6067

    文章

    44992

    瀏覽量

    650605
  • 嵌入式
    +關(guān)注

    關(guān)注

    5152

    文章

    19675

    瀏覽量

    317665
  • 軟件架構(gòu)
    +關(guān)注

    關(guān)注

    0

    文章

    64

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    強(qiáng)烈呼吁版主分類整理封裝庫

    本帖最后由 eehome 于 2013-1-5 09:56 編輯 本論壇99SE封裝庫太多太亂,五花八門眼花繚亂,令人目不暇接,如果分類整理后再提供下載多好。省得浪費(fèi)時間在大海里摸索。請版主酌情考慮為盼!
    發(fā)表于 03-21 18:10

    嵌入式軟件開發(fā)中的程序架構(gòu)

    嵌入式軟件開發(fā),包括單片機(jī)開發(fā)中,軟件架構(gòu)對于開發(fā)人員是一個必須認(rèn)真考慮的問題。軟件架構(gòu)對于系
    發(fā)表于 02-02 06:58

    嵌入式C語言的相關(guān)資料分享

    為了方便大家平時公交、地鐵、外出辦事也能用手機(jī)回顧查看文章,我特意用心精選,并分類整理了部分文章:嵌入式C語言中嵌套匯編代碼C語言 volatile 關(guān)鍵字在編譯優(yōu)化過程中有何作用#in...
    發(fā)表于 10-28 06:51

    為何要進(jìn)行嵌入式軟件架構(gòu)設(shè)計(jì)?如何設(shè)計(jì)?

    為何要進(jìn)行嵌入式軟件架構(gòu)設(shè)計(jì)?如何進(jìn)行嵌入式軟件架構(gòu)設(shè)計(jì)?
    發(fā)表于 11-01 06:31

    決定嵌入式系統(tǒng)軟件架構(gòu)的因素和架構(gòu)的影響

    嵌入式系統(tǒng)軟件架構(gòu)設(shè)計(jì)目錄1.前言42.決定架構(gòu)的因素和架構(gòu)的影響42.1.常見的誤解52.1.1.小型的系統(tǒng)不需要
    發(fā)表于 11-08 06:54

    嵌入式軟件架構(gòu)設(shè)計(jì)的相關(guān)資料分享

    方便其實(shí)整理代碼結(jié)構(gòu),最主要想實(shí)現(xiàn)的就是:高內(nèi)聚低耦合這樣的代碼方便移植管理,流程接口明確。一般的架構(gòu)圖主要就是兩部分:分層分模塊隨便上百度搜了一張嵌入式軟件
    發(fā)表于 11-09 08:25

    嵌入式工作有哪些分類?

    嵌入式技術(shù)廣泛應(yīng)用的今天,已經(jīng)有越來越多的人選擇了嵌入式,那么,嵌入式工作有哪些分類嵌入式產(chǎn)品開發(fā)是基于產(chǎn)品的功能,從功能需求、提出并選
    發(fā)表于 07-14 16:07

    嵌入式軟件架構(gòu)設(shè)計(jì)

    嵌入式軟件架構(gòu)的設(shè)計(jì),幫助我們建立合理,有效的軟件架構(gòu)。
    發(fā)表于 11-09 17:34 ?19次下載

    嵌入式軟件是什么意思_嵌入式軟件分類有哪些

    本文首先闡述了嵌入式軟件的概念,其次介紹了嵌入式軟件的特征,最后介紹了嵌入式軟件
    發(fā)表于 08-31 15:54 ?1.7w次閱讀

    嵌入式開發(fā)中常用的軟件架構(gòu)

    嵌入式軟件開發(fā),包括單片機(jī)開發(fā)中,軟件架構(gòu)對于開發(fā)人員是一個必須認(rèn)真考慮的問題。軟件架構(gòu)對于系
    的頭像 發(fā)表于 01-01 10:16 ?6009次閱讀
    <b class='flag-5'>嵌入式</b>開發(fā)中常用的<b class='flag-5'>軟件</b><b class='flag-5'>架構(gòu)</b>

    嵌入式軟件配置的分類

    嵌入式軟件配置的分類嵌入式編碼中,有三種配置的方式Pre-compile timeLink timePost-build后記在嵌入式編碼中
    發(fā)表于 10-20 20:36 ?8次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>配置的<b class='flag-5'>分類</b>

    嵌入式軟件架構(gòu)

    嵌入式軟件架構(gòu)
    發(fā)表于 10-20 20:51 ?20次下載
    <b class='flag-5'>嵌入式</b>系<b class='flag-5'>軟件</b><b class='flag-5'>架構(gòu)</b>

    精選匯總 | 嵌入式軟件設(shè)計(jì)與開發(fā)

    關(guān)注+星標(biāo)公眾號,不錯過精彩內(nèi)容作者 | strongerHuang微信公眾號|嵌入式專欄為了方便大家平時公交、地鐵、外出辦事也能用手機(jī)回顧查看文章,我特意用心精選,并分類整理了部分文...
    發(fā)表于 12-31 19:26 ?8次下載
    精選匯總 | <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>設(shè)計(jì)與開發(fā)

    精選匯總 | 嵌入式軟件基礎(chǔ)知識

    關(guān)注+星標(biāo)公眾號,不錯過精彩內(nèi)容作者 | strongerHuang微信公眾號|嵌入式專欄為了方便大家平時公交、地鐵、外出辦事也能用手機(jī)回顧查看文章,我特意用心精選,并分類整理了部分...
    發(fā)表于 01-13 14:54 ?0次下載
    精選匯總 | <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>基礎(chǔ)知識

    嵌入式軟件分類介紹

    嵌入式軟件架構(gòu)設(shè)計(jì)意圖通常伴隨著基于個人經(jīng)驗(yàn)的假設(shè)。軟件開發(fā)人員可能會從資源受限的基于微控制器的系統(tǒng)的角度來看待架構(gòu)設(shè)計(jì)。系統(tǒng)人員可能會從應(yīng)
    的頭像 發(fā)表于 04-06 11:39 ?2686次閱讀