RM新时代网站-首页

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

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

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

車規(guī)MCU的軟件開發(fā)生態(tài)解析

jf_ocihYtwl ? 來(lái)源:汽車電子expert成長(zhǎng)之路 ? 2023-10-18 10:00 ? 次閱讀

引言

隨著當(dāng)今汽車產(chǎn)業(yè)的電動(dòng)化(Electrification)、自動(dòng)駕駛(Automous Drive)和網(wǎng)聯(lián)化(Connected)技術(shù)升級(jí)和應(yīng)用普及,現(xiàn)代汽車集成的智能傳感器、智能執(zhí)行器數(shù)量成倍增加,對(duì)汽車總線網(wǎng)絡(luò)帶寬的需求越來(lái)越大、對(duì)CPU內(nèi)核的運(yùn)算處理能力要求越來(lái)越高,對(duì)功能安全和信息安全的關(guān)注越來(lái)越多。車規(guī)MCU作為實(shí)現(xiàn)這些汽車功能電控單元(ECU)、域控制器(DCU)、區(qū)域控制器(ZCU)的核心芯片,其軟件開發(fā)生態(tài)是客戶高效快速可靠的開發(fā)各類汽車功能應(yīng)用軟件的基礎(chǔ),是一顆車規(guī)MCU芯片能否成功的關(guān)鍵所在,其重要性日益凸顯。

因此,本文將結(jié)合筆者在車規(guī)MCU芯片行業(yè)的多年從業(yè)經(jīng)驗(yàn)和對(duì)汽車電子產(chǎn)業(yè)及市場(chǎng)的洞察,給大家詳細(xì)介紹一下車規(guī)MCU的軟件開發(fā)生態(tài),希望對(duì)當(dāng)前正在進(jìn)行的中國(guó)車規(guī)MCU國(guó)產(chǎn)化替代上下游整車廠(Car OEM)、零部件供應(yīng)商(Tier-1)和***公司以及相關(guān)第三方軟件/方案和工具鏈開發(fā)公司有所幫助和啟發(fā)。

AUTOSAR架構(gòu)

AUTOSAR(AUTomotive Open System ARchitecture)是一種開放的汽車電子系統(tǒng)架構(gòu),旨在提供一種標(biāo)準(zhǔn)化的方法來(lái)開發(fā)和管理汽車電子系統(tǒng)的軟件。AUTOSAR架構(gòu)的目標(biāo)是實(shí)現(xiàn)汽車電子系統(tǒng)的模塊化可重用可擴(kuò)展,以提高開發(fā)效率和系統(tǒng)的可靠性。

AUTOSAR架構(gòu)由三個(gè)主要的層次組成:應(yīng)用層(Application Layer)、運(yùn)行時(shí)環(huán)境層(Runtime Environment)和基礎(chǔ)設(shè)施層(BSW)。

9ba6ef82-6d57-11ee-939d-92fbcf53809c.png

應(yīng)用層是汽車電子系統(tǒng)的最高層,包括應(yīng)用軟件組件和應(yīng)用軟件功能。應(yīng)用層定義了汽車電子系統(tǒng)的功能和行為,并提供了與其他系統(tǒng)和組件的接口。

運(yùn)行時(shí)環(huán)境層提供了AUTOSAR系統(tǒng)的運(yùn)行時(shí)支持。它包括操作系統(tǒng)通信協(xié)議棧、服務(wù)和管理功能。運(yùn)行時(shí)環(huán)境層負(fù)責(zé)管理系統(tǒng)資源、調(diào)度任務(wù)、處理通信和數(shù)據(jù)傳輸?shù)取?/p>

基礎(chǔ)軟件層,也稱作基礎(chǔ)設(shè)施層,提供了AUTOSAR系統(tǒng)的基礎(chǔ)設(shè)施支持。它包括通信總線、診斷和調(diào)試功能、存儲(chǔ)管理和配置管理等。基礎(chǔ)設(shè)施層提供了系統(tǒng)的硬件和軟件基礎(chǔ)設(shè)施,以支持系統(tǒng)的功能和性能。

9bb2e666-6d57-11ee-939d-92fbcf53809c.png

AUTOSAR架構(gòu)的優(yōu)勢(shì)在于提供了一種標(biāo)準(zhǔn)化的方法來(lái)開發(fā)和管理汽車電子系統(tǒng)的軟件。它提供了模塊化、可重用和可擴(kuò)展的設(shè)計(jì),使開發(fā)人員能夠更高效地開發(fā)和維護(hù)汽車電子系統(tǒng)。此外,AUTOSAR架構(gòu)還提供了一種標(biāo)準(zhǔn)化的接口和通信協(xié)議,使不同的汽車電子系統(tǒng)能夠互相通信和協(xié)作。

1.1 自適應(yīng)平臺(tái)(AUTOSAR AP)

AUTOSAR自適應(yīng)平臺(tái)(AUTOSAR Adaptive Platform,簡(jiǎn)稱AUTOSAR AP)是AUTOSAR架構(gòu)的一種擴(kuò)展,專門用于支持高度自動(dòng)化和自動(dòng)駕駛功能的汽車電子系統(tǒng)。AUTOSAR AP提供了一種靈活的軟件架構(gòu),可以適應(yīng)不同的硬件平臺(tái)和應(yīng)用場(chǎng)景。

9bd2763e-6d57-11ee-939d-92fbcf53809c.png

AUTOSAR AP的核心特點(diǎn)包括:

面向服務(wù)的架構(gòu):AUTOSAR AP采用面向服務(wù)的架構(gòu),將汽車電子系統(tǒng)劃分為不同的服務(wù),每個(gè)服務(wù)都有明確定義的接口和功能。這種架構(gòu)使得不同的服務(wù)可以獨(dú)立開發(fā)、測(cè)試和部署,提高了系統(tǒng)的靈活性和可重用性。

靈活的通信機(jī)制:AUTOSAR AP支持多種通信機(jī)制,包括以太網(wǎng)、CAN-FD和FlexRay等。這些通信機(jī)制可以根據(jù)具體的應(yīng)用需求進(jìn)行靈活配置,以滿足不同的實(shí)時(shí)性和帶寬要求。

安全和可靠性:AUTOSAR AP提供了豐富的安全和可靠性功能,包括故障檢測(cè)和處理、數(shù)據(jù)完整性保護(hù)、安全通信和認(rèn)證等。這些功能可以幫助汽車電子系統(tǒng)抵御各種安全威脅和故障情況,提高系統(tǒng)的可靠性和安全性。

自動(dòng)駕駛支持:AUTOSAR AP專門為自動(dòng)駕駛功能提供了支持,包括傳感器數(shù)據(jù)處理、環(huán)境感知、路徑規(guī)劃和控制等。這些功能可以幫助汽車電子系統(tǒng)實(shí)現(xiàn)高度自動(dòng)化和自動(dòng)駕駛功能,提高駕駛安全性和舒適性。

9be2abbc-6d57-11ee-939d-92fbcf53809c.png

AUTOSAR AP是一種專門用于支持高度自動(dòng)化和自動(dòng)駕駛功能的汽車電子系統(tǒng)架構(gòu),具有靈活的軟件架構(gòu)、多樣化的通信機(jī)制、豐富的安全和可靠性功能,以及專門的自動(dòng)駕駛支持。AUTOSAR AP運(yùn)行硬件通常為MPU或者CPU/AI芯片,而非傳統(tǒng)的車規(guī)MCU芯片,因此不是本文介紹的重點(diǎn),也不再展開。

1.2 經(jīng)典平臺(tái)(AUTOSAR CP)

AUTOSAR經(jīng)典平臺(tái)(AUTOSAR CP)是AUTOSAR軟件架構(gòu)的一種實(shí)現(xiàn),旨在提供一種標(biāo)準(zhǔn)化的方法來(lái)開發(fā)和管理汽車電子系統(tǒng)的軟件。AUTOSAR CP定義了汽車電子系統(tǒng)的軟件組件、運(yùn)行時(shí)環(huán)境和通信機(jī)制,以實(shí)現(xiàn)模塊化、可重用和可擴(kuò)展的系統(tǒng)開發(fā)。

9beb5938-6d57-11ee-939d-92fbcf53809c.png

在AUTOSAR CP中,軟件組件被分為應(yīng)用軟件組件(SWC)和基礎(chǔ)軟件組件(BSW)。SWC是實(shí)現(xiàn)特定功能的軟件模塊,例如引擎控制、制動(dòng)系統(tǒng)等。BSW是提供基礎(chǔ)功能和服務(wù)的軟件模塊,例如通信協(xié)議棧、操作系統(tǒng)等。

運(yùn)行時(shí)環(huán)境層提供了AUTOSAR系統(tǒng)的運(yùn)行時(shí)支持,包括任務(wù)管理、內(nèi)存管理、通信管理等功能。運(yùn)行時(shí)環(huán)境層負(fù)責(zé)調(diào)度和管理軟件組件的執(zhí)行,并提供了通信機(jī)制,使軟件組件能夠相互交互。

通信機(jī)制在AUTOSAR CP中使用基于事件的觸發(fā)機(jī)制,軟件組件之間通過(guò)事件觸發(fā)和接收來(lái)進(jìn)行通信。這種事件觸發(fā)機(jī)制可以實(shí)現(xiàn)松耦合的組件間通信,提高系統(tǒng)的可擴(kuò)展性和靈活性。

9bfde85a-6d57-11ee-939d-92fbcf53809c.png

總的來(lái)說(shuō),AUTOSAR CP提供了一種標(biāo)準(zhǔn)化的軟件架構(gòu),使汽車電子系統(tǒng)的開發(fā)和管理更加高效和可靠。它促進(jìn)了軟件的模塊化和可重用性,提高了系統(tǒng)的可擴(kuò)展性和靈活性。

1.2.1 基礎(chǔ)軟件(BSW)

AUTOSAR CP基礎(chǔ)軟件(BSW)是AUTOSAR架構(gòu)中的一個(gè)重要組成部分,它提供了一系列的基礎(chǔ)軟件模塊,用于管理和控制汽車電子系統(tǒng)的各種功能和服務(wù)。BSW的功能和意義如下:

標(biāo)準(zhǔn)化接口:BSW定義了標(biāo)準(zhǔn)化的接口和協(xié)議,使不同供應(yīng)商開發(fā)的軟件模塊可以互相交互和協(xié)作。這樣一來(lái),汽車制造商可以更容易地集成不同的軟件組件,提高開發(fā)效率和系統(tǒng)的可重用性。

功能模塊:BSW提供了一系列的功能模塊,包括診斷、通信、網(wǎng)絡(luò)管理、電源管理、操作系統(tǒng)等。這些功能模塊可以滿足汽車電子系統(tǒng)的各種需求,如故障診斷、通信協(xié)議支持、電源管理等。

可配置性:BSW允許汽車制造商根據(jù)具體的需求進(jìn)行配置和定制。通過(guò)配置不同的模塊和參數(shù),可以實(shí)現(xiàn)不同的功能和性能要求,提高系統(tǒng)的靈活性和可擴(kuò)展性。

故障管理:BSW提供了故障管理功能,可以監(jiān)測(cè)和處理系統(tǒng)中的故障。它可以記錄和報(bào)告故障信息,幫助診斷和修復(fù)問(wèn)題,提高系統(tǒng)的可靠性和安全性。

軟件更新和維護(hù):BSW支持軟件的在線更新和維護(hù)。通過(guò)遠(yuǎn)程診斷和配置,可以對(duì)系統(tǒng)進(jìn)行升級(jí)和修復(fù),減少維護(hù)成本和停機(jī)時(shí)間。

AUTOSAR CP基礎(chǔ)軟件的功能和意義在于提供一種標(biāo)準(zhǔn)化的方法來(lái)開發(fā)和管理汽車電子系統(tǒng)的軟件,提高開發(fā)效率、系統(tǒng)的可重用性和可靠性,同時(shí)降低維護(hù)成本和停機(jī)時(shí)間。

9c0c2ca8-6d57-11ee-939d-92fbcf53809c.png

1.2.1.1 微控制器抽象層(MCAL)

AUTOSAR CP的微控制器抽象層(MCAL)是AUTOSAR軟件架構(gòu)中的一個(gè)重要組成部分,它提供了對(duì)底層硬件的抽象和訪問(wèn)接口,以實(shí)現(xiàn)軟件與硬件之間的解耦和可移植性。

9c1dc5e4-6d57-11ee-939d-92fbcf53809c.png

MCAL的功能主要包括以下幾個(gè)方面:

時(shí)鐘和復(fù)位管理:MCAL提供了對(duì)微控制器時(shí)鐘和復(fù)位控制的接口,包括時(shí)鐘源選擇、時(shí)鐘分頻、復(fù)位源選擇等功能。

GPIO控制:MCAL提供了對(duì)通用輸入輸出引腳的控制接口,包括引腳模式設(shè)置、引腳電平讀寫、引腳中斷配置等功能。

ADC/DAC控制:MCAL提供了對(duì)模數(shù)/數(shù)模轉(zhuǎn)換器的控制接口,包括采樣率設(shè)置、通道選擇、數(shù)據(jù)轉(zhuǎn)換等功能。

PWM控制:MCAL提供了對(duì)脈沖寬度調(diào)制器的控制接口,用于控制電機(jī)驅(qū)動(dòng)、LED亮度調(diào)節(jié)等功能。

定時(shí)器和計(jì)數(shù)器控制:MCAL提供了對(duì)定時(shí)器和計(jì)數(shù)器的控制接口,用于實(shí)現(xiàn)定時(shí)中斷、周期性任務(wù)等功能。

中斷管理:MCAL提供了對(duì)中斷控制器的接口,用于配置和處理中斷請(qǐng)求。

通信接口控制:MCAL提供了對(duì)串行通信接口(如UART、SPI、I2C等)的控制接口,用于實(shí)現(xiàn)與外部設(shè)備的數(shù)據(jù)交換。

Flash和EEPROM控制:MCAL提供了對(duì)閃存和EEPROM的控制接口,用于存儲(chǔ)和讀取數(shù)據(jù)。

通過(guò)MCAL的抽象接口,應(yīng)用軟件可以獨(dú)立于具體的微控制器硬件實(shí)現(xiàn),實(shí)現(xiàn)可移植性和可重用性,簡(jiǎn)化了軟件開發(fā)和維護(hù)的工作。

1.2.1.2 服務(wù)層(Service Layer)

AUTOSAR CP的服務(wù)層(Service Layer)是AUTOSAR架構(gòu)中的一個(gè)重要組成部分,它提供了一系列的服務(wù)和功能,以支持汽車電子應(yīng)用的開發(fā)和運(yùn)行。服務(wù)層的主要功能包括:

9c31ecb8-6d57-11ee-939d-92fbcf53809c.png

通信服務(wù):服務(wù)層提供了通信協(xié)議棧,用于實(shí)現(xiàn)不同ECU之間的通信。它支持多種通信協(xié)議,如CAN、FlexRay、Ethernet等,并提供了數(shù)據(jù)傳輸和消息處理的功能。

診斷服務(wù):服務(wù)層提供了診斷功能,用于檢測(cè)和診斷車輛系統(tǒng)的故障。它支持故障碼的生成和解析,以及故障診斷的通信協(xié)議,如UDS、ISO-TP等。

內(nèi)存管理服務(wù):服務(wù)層提供了內(nèi)存管理功能,用于管理ECU的內(nèi)存資源。它支持內(nèi)存分配和釋放,以及內(nèi)存保護(hù)和安全性的控制。

定時(shí)服務(wù):服務(wù)層提供了定時(shí)功能,用于實(shí)現(xiàn)任務(wù)的調(diào)度和時(shí)間觸發(fā)的事件處理。它支持周期性任務(wù)和事件觸發(fā)任務(wù)的管理,以及時(shí)間同步和時(shí)鐘管理的功能。

電源管理服務(wù):服務(wù)層提供了電源管理功能,用于管理ECU的電源供應(yīng)和功耗控制。它支持電源狀態(tài)的管理和切換,以及低功耗模式的管理。

安全服務(wù):服務(wù)層提供了安全功能,用于保護(hù)車輛系統(tǒng)的數(shù)據(jù)和通信安全。它支持加密和解密算法,以及身份驗(yàn)證和訪問(wèn)控制的功能。

識(shí)別和配置服務(wù):服務(wù)層提供了識(shí)別和配置功能,用于識(shí)別和配置連接到ECU的外部設(shè)備和傳感器。它支持設(shè)備的自動(dòng)識(shí)別和配置,以及設(shè)備的狀態(tài)監(jiān)測(cè)和管理。

通過(guò)提供這些服務(wù)和功能,AUTOSAR CP的服務(wù)層可以幫助開發(fā)人員更方便地開發(fā)和集成汽車電子應(yīng)用,提高系統(tǒng)的可靠性和安全性,同時(shí)降低開發(fā)和維護(hù)成本。

1.2.1.3 ECU抽象層(ECU Abstraction Layer)

AUTOSAR CP的ECU抽象層(ECU Abstraction Layer)是AUTOSAR架構(gòu)中的一個(gè)重要組件,它提供了一種標(biāo)準(zhǔn)化的方式來(lái)訪問(wèn)ECU硬件和軟件資源,以實(shí)現(xiàn)應(yīng)用程序與底層硬件之間的解耦和可移植性。

9c57de50-6d57-11ee-939d-92fbcf53809c.png

ECU抽象層的功能包括:

硬件抽象:ECU抽象層提供了對(duì)底層硬件資源的抽象,包括處理器、存儲(chǔ)器、外設(shè)等。它定義了統(tǒng)一的接口和操作方法,使得應(yīng)用程序可以獨(dú)立于具體的硬件平臺(tái)進(jìn)行開發(fā)和移植。

通信抽象:ECU抽象層提供了統(tǒng)一的通信接口,使得應(yīng)用程序可以通過(guò)標(biāo)準(zhǔn)化的方式與其他ECU進(jìn)行通信,包括CAN、LIN、FlexRay等總線協(xié)議。

時(shí)鐘和定時(shí)器抽象:ECU抽象層提供了對(duì)時(shí)鐘和定時(shí)器的抽象,使得應(yīng)用程序可以獨(dú)立于具體的時(shí)鐘和定時(shí)器硬件進(jìn)行開發(fā)和移植。

電源管理抽象:ECU抽象層提供了對(duì)電源管理的抽象,包括電源狀態(tài)管理、低功耗模式管理等,以實(shí)現(xiàn)對(duì)電源的有效管理和節(jié)能。

診斷和故障管理抽象:ECU抽象層提供了對(duì)診斷和故障管理的抽象,包括故障檢測(cè)、故障處理、故障存儲(chǔ)等,以實(shí)現(xiàn)對(duì)ECU的自診斷和故障管理能力。

通過(guò)ECU抽象層,應(yīng)用程序可以以一種統(tǒng)一的方式訪問(wèn)和控制底層硬件資源,從而實(shí)現(xiàn)應(yīng)用程序的可移植性和可重用性。同時(shí),ECU抽象層還提供了一些標(biāo)準(zhǔn)化的接口和功能,以簡(jiǎn)化開發(fā)過(guò)程并提高系統(tǒng)的可靠性和可維護(hù)性。

1.2.1.4 復(fù)雜驅(qū)動(dòng)(CDD)

AUTOSAR CP的復(fù)雜驅(qū)動(dòng)(CDD)是為了實(shí)現(xiàn)復(fù)雜的傳感器評(píng)估和執(zhí)行器控制而設(shè)計(jì)的。它通過(guò)直接訪問(wèn)微控制器來(lái)實(shí)現(xiàn),使用特定的中斷和/或復(fù)雜的微控制器外設(shè)、外部設(shè)備通信收發(fā)器、ASIC等,以滿足特殊的功能和時(shí)序要求。此外,CDD還可以用于實(shí)現(xiàn)增強(qiáng)的服務(wù)/協(xié)議或封裝非AUTOSAR系統(tǒng)的傳統(tǒng)功能。CDD的實(shí)現(xiàn)可能與應(yīng)用、微控制器和ECU有關(guān)。最后,CDD可以作為引入現(xiàn)有或新概念到AUTOSAR軟件架構(gòu)中的遷移機(jī)制。

9c61c78a-6d57-11ee-939d-92fbcf53809c.png

在將CDD集成到AUTOSAR架構(gòu)中時(shí),設(shè)計(jì)人員應(yīng)考慮以下幾點(diǎn):

提供用戶手冊(cè),以便于集成和向客戶提供信息。

描述CDD的功能操作,包括初始化、正常運(yùn)行、關(guān)閉、故障操作等。

描述與其他BSW模塊、SchM和Rte的關(guān)系和需求,例如從NvM獲取的內(nèi)存塊、配置的臨界區(qū)等。

描述接口,包括服務(wù)的名稱、描述、可重入性、參數(shù)名稱、類型、范圍、返回值名稱、類型、范圍等。

描述非功能需求,如時(shí)序和行為要求、資源使用情況、與其他BSW模塊或SW-C的行為等。

描述Dem錯(cuò)誤、可選的Det錯(cuò)誤、調(diào)試變量等。

描述配置參數(shù)的名稱、類型、范圍、值。

描述內(nèi)存映射需求,如Flash、RAM的使用情況。

描述使用限制和未解決的問(wèn)題。

描述與其他模塊的集成約束和要求。

提供示例。

CDD的實(shí)現(xiàn)需要遵守AUTOSAR的一些約束,包括:

遵守輸入規(guī)范。

使用SchM或操作系統(tǒng)機(jī)制來(lái)保護(hù)關(guān)鍵資源。

可通過(guò)EcuM和BswM模塊管理CDD的模式。

可使用內(nèi)存映射機(jī)制來(lái)處理內(nèi)存段。

可使用Det或Dem模塊報(bào)告錯(cuò)誤。

關(guān)于CDD的文件結(jié)構(gòu),建議至少提供以下文件:

CDD_.c:CDD模塊的代碼文件。

CDD__Irq.c:中斷函數(shù)的文件。

CDD__Callout.c:回調(diào)函數(shù)的文件。

CDD__Lcfg.c:鏈接時(shí)從配置生成的C對(duì)象的文件。

CDD__PBcfg.c:構(gòu)建時(shí)從配置生成的C對(duì)象的文件。

1.2.2 運(yùn)行時(shí)環(huán)境(RTE)

AUTOSAR CP運(yùn)行時(shí)環(huán)境(RTE)是AUTOSAR架構(gòu)中的核心組件,它實(shí)現(xiàn)了AUTOSAR虛擬功能總線(VFB)的接口,并提供了通信基礎(chǔ)設(shè)施和訪問(wèn)基礎(chǔ)軟件組件(如操作系統(tǒng))的服務(wù)。RTE的功能和意義如下:

9c6a058a-6d57-11ee-939d-92fbcf53809c.png

通信基礎(chǔ)設(shè)施:RTE負(fù)責(zé)管理應(yīng)用軟件組件之間的通信。它提供了消息傳遞機(jī)制和事件觸發(fā)機(jī)制,使得應(yīng)用軟件組件可以相互發(fā)送和接收消息,實(shí)現(xiàn)數(shù)據(jù)的交換和共享。

訪問(wèn)基礎(chǔ)軟件組件:RTE提供了訪問(wèn)基礎(chǔ)軟件組件(如操作系統(tǒng))的服務(wù)接口。應(yīng)用軟件組件可以通過(guò)RTE來(lái)調(diào)用操作系統(tǒng)的功能,如任務(wù)調(diào)度、資源管理等。這樣,應(yīng)用軟件組件可以獨(dú)立于具體的操作系統(tǒng),提高了軟件的可移植性和可重用性。

組件映射和調(diào)度:RTE負(fù)責(zé)將應(yīng)用軟件組件映射到具體的ECU上,并進(jìn)行任務(wù)調(diào)度。它根據(jù)系統(tǒng)配置和約束,將應(yīng)用軟件組件分配到不同的ECU上,并確保系統(tǒng)按照預(yù)期的方式運(yùn)行。

標(biāo)準(zhǔn)化接口:RTE定義了與AUTOSAR OS和應(yīng)用軟件組件之間的標(biāo)準(zhǔn)化接口。這些接口確保了不同組件之間的互操作性和兼容性,簡(jiǎn)化了系統(tǒng)的開發(fā)和集成過(guò)程。

RTE的意義在于提供了一種標(biāo)準(zhǔn)化的方法來(lái)開發(fā)和管理汽車電子系統(tǒng)的軟件。它實(shí)現(xiàn)了模塊化、可重用和可擴(kuò)展的架構(gòu),提高了開發(fā)效率和系統(tǒng)的可靠性。同時(shí),RTE還支持汽車通信協(xié)議的標(biāo)準(zhǔn)化,使得不同的汽車電子系統(tǒng)可以進(jìn)行互聯(lián)和通信。通過(guò)使用RTE,汽車制造商和供應(yīng)商可以更加高效地開發(fā)和集成汽車電子系統(tǒng),降低開發(fā)成本和時(shí)間。

1.2.3 應(yīng)用軟件(ASW)

AUTOSAR CP應(yīng)用軟件(ASW)是AUTOSAR架構(gòu)中的一部分,它包括汽車電子系統(tǒng)的應(yīng)用軟件組件和功能。ASW的功能是實(shí)現(xiàn)汽車電子系統(tǒng)的各種功能和行為,例如發(fā)動(dòng)機(jī)控制、制動(dòng)系統(tǒng)、車身電子等。ASW的意義在于提供了一種標(biāo)準(zhǔn)化的方法來(lái)開發(fā)和管理汽車電子系統(tǒng)的軟件,使得不同廠商和供應(yīng)商的軟件可以互相兼容和交互。通過(guò)使用ASW,汽車制造商可以更高效地開發(fā)和集成各種功能模塊,提高開發(fā)效率和系統(tǒng)的可靠性。同時(shí),ASW還提供了一種模塊化和可重用的設(shè)計(jì)方法,使得軟件的維護(hù)和更新更加容易。總之,ASW的功能和意義在于推動(dòng)汽車電子系統(tǒng)的標(biāo)準(zhǔn)化和互操作性,提高開發(fā)效率和系統(tǒng)的可靠性。

1.2.4 功能庫(kù)(Library)

9c749f04-6d57-11ee-939d-92fbcf53809c.png

1.3 AUTOSAR軟件開發(fā)流程簡(jiǎn)介

AUTOSAR軟件開發(fā)流程是指在AUTOSAR架構(gòu)下進(jìn)行軟件開發(fā)的一系列步驟和方法。它包括以下幾個(gè)主要階段:

需求分析:在這個(gè)階段,根據(jù)汽車電子系統(tǒng)的需求,定義和分析軟件功能和性能要求。這包括確定軟件組件、接口和模塊的功能和規(guī)格要求。

架構(gòu)設(shè)計(jì):在這個(gè)階段,根據(jù)需求分析的結(jié)果,設(shè)計(jì)AUTOSAR軟件的整體架構(gòu)。這包括定義軟件組件的功能和接口,以及確定軟件模塊的分層結(jié)構(gòu)和通信機(jī)制。

組件開發(fā):在這個(gè)階段,根據(jù)架構(gòu)設(shè)計(jì)的要求,開發(fā)和實(shí)現(xiàn)各個(gè)軟件組件。這包括編寫和調(diào)試軟件代碼,以及進(jìn)行單元測(cè)試和集成測(cè)試。

配置和集成:在這個(gè)階段,將開發(fā)好的軟件組件進(jìn)行配置和集成。這包括將組件配置到目標(biāo)硬件平臺(tái)上,并進(jìn)行組件之間的接口對(duì)接和功能測(cè)試。

驗(yàn)證:在這個(gè)階段,對(duì)已集成的AUTOSAR軟件進(jìn)行驗(yàn)證。這包括對(duì)軟件的功能和性能進(jìn)行測(cè)試,以確保軟件滿足需求和質(zhì)量標(biāo)準(zhǔn)。

發(fā)布和部署:在這個(gè)階段,將經(jīng)過(guò)驗(yàn)證和驗(yàn)證的AUTOSAR軟件發(fā)布和部署到實(shí)際的汽車電子系統(tǒng)中。這包括將軟件加載到目標(biāo)硬件平臺(tái)上,并進(jìn)行系統(tǒng)級(jí)測(cè)試和調(diào)試。

9c8a33f0-6d57-11ee-939d-92fbcf53809c.png

AUTOSAR軟件開發(fā)流程的目標(biāo)是提高軟件開發(fā)的效率和質(zhì)量,實(shí)現(xiàn)軟件的可重用性和可維護(hù)性。通過(guò)遵循這個(gè)流程,可以更好地管理軟件開發(fā)過(guò)程,減少錯(cuò)誤和風(fēng)險(xiǎn),并提高汽車電子系統(tǒng)的性能和可靠性。

Non-AUTOSAR軟件

雖然AUTOSAR是一個(gè)開發(fā)軟件架構(gòu),在代碼重用性、可維護(hù)性、開發(fā)效率和代碼質(zhì)量方面有諸多優(yōu)勢(shì),但是使用AUTOSAR標(biāo)準(zhǔn)需要一定的授權(quán)費(fèi)用且大多數(shù)AUTOSAR軟件和配置工具都是商用付費(fèi)軟件,需要額外購(gòu)買license授權(quán)。因此,只有量大的平臺(tái)化項(xiàng)目,Car OEM和Tier-1才會(huì)完全采用AUTOSAR架構(gòu)軟件進(jìn)行開發(fā) , 以cover上百萬(wàn)的AUTOSAR軟件費(fèi)用。

對(duì)于項(xiàng)目預(yù)算有限、非平臺(tái)化的小項(xiàng)目,非AUTOSAR(Non-AUTOSAR)軟件開發(fā)是一個(gè)不錯(cuò)的選擇。雖然很多大客戶有自己在某個(gè)/多個(gè)應(yīng)用開發(fā)方面多年積累的軟件庫(kù)可以使用,但是面對(duì)更新?lián)Q代越來(lái)越快且越來(lái)越復(fù)雜的車規(guī)MCU硬件和日益復(fù)雜的應(yīng)用功能軟件需求,芯片廠商免費(fèi)提供的車規(guī)MCU軟件開發(fā)套件(SDK)將能夠幫助客戶減少熟悉新硬件底層的時(shí)間、復(fù)用中間件軟件,讓客戶專注于應(yīng)用層功能軟件的開發(fā)和測(cè)試,提高軟件開發(fā)效率,從而縮短項(xiàng)目開發(fā)周期。

2.1 軟件開發(fā)套件(SDK)

9ca1040e-6d57-11ee-939d-92fbcf53809c.png

車規(guī)MCU的軟件開發(fā)套件(SDK)是為了支持開發(fā)人員在車規(guī)MCU上進(jìn)行軟件開發(fā)而設(shè)計(jì)的。它提供了一套完整的工具和庫(kù),用于開發(fā)、編譯、調(diào)試和測(cè)試車規(guī)MCU上的應(yīng)用程序。

車規(guī)MCU的SDK通常包括以下幾個(gè)主要組件:

底層驅(qū)動(dòng)層(LLD):提供了與硬件外設(shè)的接口,包括GPIO、UART、SPI、CAN等。開發(fā)人員可以使用驅(qū)動(dòng)層來(lái)配置和控制這些外設(shè)。

硬件抽象層(HAL)或者外設(shè)抽象層(PAL): 將實(shí)現(xiàn)功能相同/相近的不同外設(shè)IP的底層驅(qū)動(dòng)層(LLD)接口進(jìn)行封裝,對(duì)上層應(yīng)用或者中間件軟件提供統(tǒng)一的API接口以屏蔽不同硬件平臺(tái)的外設(shè)IP寄存器/功能差異,方便跨平臺(tái)驅(qū)動(dòng)代碼移植。

操作系統(tǒng)(OS):提供了多任務(wù)管理、任務(wù)調(diào)度、內(nèi)存管理等功能,以支持多任務(wù)應(yīng)用程序的開發(fā)。常見(jiàn)的車規(guī)MCU操作系統(tǒng)包括AUTOSAR OS和FreeRTOS等。

中間件(Middleware):提供了一些常用的功能模塊,如通信協(xié)議棧、文件系統(tǒng)、加密庫(kù)等。開發(fā)人員可以使用中間件來(lái)簡(jiǎn)化開發(fā)過(guò)程,提高開發(fā)效率。

工具鏈:包括編譯器、調(diào)試器和仿真器等工具,用于編譯、調(diào)試和測(cè)試應(yīng)用程序。常見(jiàn)的車規(guī)MCU工具鏈包括IAR Embedded Workbench、Keil MDK等。

示例代碼和文檔:提供了一些示例代碼和詳細(xì)的文檔,幫助開發(fā)人員快速上手和理解車規(guī)MCU的功能和使用方法。

車規(guī)MCU的SDK架構(gòu)和功能可以根據(jù)具體的芯片廠商和應(yīng)用需求而有所不同。開發(fā)人員可以根據(jù)自己的需求選擇合適的SDK,并根據(jù)SDK提供的文檔和示例代碼進(jìn)行開發(fā)。

2.2 中間件(Middleware)

汽車電子應(yīng)用需要很多不同種類的中間件(Middleware)軟件來(lái)實(shí)現(xiàn)高效可靠的數(shù)據(jù)傳輸、網(wǎng)絡(luò)管理、參數(shù)標(biāo)定/校準(zhǔn)、錯(cuò)誤診斷和高效專用控制算法,其中最重要的中間件包括:

2.2.1 CAN協(xié)議棧

汽車CAN協(xié)議棧是一種軟件組件,用于實(shí)現(xiàn)汽車電子系統(tǒng)中的CAN總線通信功能。它包含了一系列的功能軟件,用于處理CAN總線的物理層和數(shù)據(jù)鏈路層的通信協(xié)議。

9cadb01e-6d57-11ee-939d-92fbcf53809c.png

汽車CAN協(xié)議棧的功能軟件主要包括以下幾個(gè)方面:

物理層驅(qū)動(dòng)程序:負(fù)責(zé)與CAN總線物理層進(jìn)行通信,包括發(fā)送和接收CAN消息,以及處理CAN總線的電氣特性和信號(hào)傳輸。

CAN消息處理:負(fù)責(zé)解析和封裝CAN消息,包括標(biāo)識(shí)符的解析、數(shù)據(jù)的封裝和解封裝等。

錯(cuò)誤檢測(cè)和處理:負(fù)責(zé)檢測(cè)和處理CAN總線上的錯(cuò)誤,包括位錯(cuò)誤、幀錯(cuò)誤、CRC錯(cuò)誤等,以確保數(shù)據(jù)的可靠性和完整性。

時(shí)序控制:負(fù)責(zé)控制CAN消息的發(fā)送和接收時(shí)序,包括幀的發(fā)送間隔、幀的優(yōu)先級(jí)等。

網(wǎng)絡(luò)管理:負(fù)責(zé)管理CAN總線上的節(jié)點(diǎn)和網(wǎng)絡(luò)拓?fù)?,包括?jié)點(diǎn)的加入和退出、節(jié)點(diǎn)的狀態(tài)管理等。

診斷和故障處理:負(fù)責(zé)診斷CAN總線上的故障和錯(cuò)誤,并提供相應(yīng)的故障處理機(jī)制,以保證系統(tǒng)的可靠性和穩(wěn)定性。

汽車CAN協(xié)議棧是實(shí)現(xiàn)汽車CAN總線通信功能的關(guān)鍵軟件組件,它提供了一系列的功能軟件,用于處理CAN總線的物理層和數(shù)據(jù)鏈路層的通信協(xié)議,以實(shí)現(xiàn)可靠和高效的汽車電子系統(tǒng)通信。

2.2.2 LIN協(xié)議棧

9cca378e-6d57-11ee-939d-92fbcf53809c.png

汽車LIN協(xié)議棧是用于實(shí)現(xiàn)LIN總線通信的軟件組件集合。它包含了實(shí)現(xiàn)LIN協(xié)議的各個(gè)層次的功能軟件,以便實(shí)現(xiàn)LIN總線的通信和控制。

9cd8f3f0-6d57-11ee-939d-92fbcf53809c.png

汽車LIN協(xié)議棧通常包含以下功能軟件:

物理層驅(qū)動(dòng):負(fù)責(zé)將MCU的串行通信模塊輸出的信號(hào)轉(zhuǎn)換為L(zhǎng)IN總線的電平信號(hào),并提供LIN總線的電氣特性要求的支持。

LIN協(xié)議棧:實(shí)現(xiàn)了LIN協(xié)議的各個(gè)層次,包括幀封裝、幀解析、錯(cuò)誤檢測(cè)和糾正、幀發(fā)送和接收等功能。

LIN網(wǎng)絡(luò)管理:負(fù)責(zé)管理LIN總線上的節(jié)點(diǎn),包括節(jié)點(diǎn)的配置、識(shí)別、診斷和錯(cuò)誤處理等。

LIN應(yīng)用層:根據(jù)具體的應(yīng)用需求,實(shí)現(xiàn)了與LIN總線通信相關(guān)的應(yīng)用功能,如車門控制、窗戶控制、燈光控制等。

9cef385e-6d57-11ee-939d-92fbcf53809c.png

通過(guò)使用汽車LIN協(xié)議棧,開發(fā)人員可以方便地實(shí)現(xiàn)LIN總線通信功能,并根據(jù)具體的應(yīng)用需求進(jìn)行定制和擴(kuò)展。

2.2.3 UDS協(xié)議棧

汽車UDS協(xié)議棧是一種用于汽車電子控制單元(ECU)之間進(jìn)行診斷和通信的標(biāo)準(zhǔn)協(xié)議。UDS(Unified Diagnostic Services)協(xié)議定義了一組診斷服務(wù)和通信機(jī)制,用于在車輛中進(jìn)行故障診斷、參數(shù)配置和編程等操作。

9cff3272-6d57-11ee-939d-92fbcf53809c.png

UDS協(xié)議棧通常包含以下功能軟件:

通信層:負(fù)責(zé)處理UDS協(xié)議的通信,包括CAN總線通信、LIN總線通信等。

診斷服務(wù):實(shí)現(xiàn)了UDS協(xié)議定義的各種診斷服務(wù),如讀取故障碼、清除故障碼、讀取參數(shù)、編程等。

診斷會(huì)話管理:管理UDS協(xié)議中的會(huì)話,包括默認(rèn)會(huì)話、擴(kuò)展會(huì)話、安全訪問(wèn)會(huì)話等。

診斷報(bào)文處理:處理UDS協(xié)議中的診斷報(bào)文,包括解析報(bào)文、生成響應(yīng)報(bào)文等。

安全訪問(wèn):提供安全訪問(wèn)機(jī)制,確保只有授權(quán)的設(shè)備或用戶可以進(jìn)行診斷操作。

診斷數(shù)據(jù)管理:管理診斷數(shù)據(jù),包括故障碼存儲(chǔ)、參數(shù)配置等。

診斷事件管理:處理診斷事件,如故障碼觸發(fā)、診斷請(qǐng)求等。

UDS協(xié)議棧的功能軟件可以根據(jù)具體的應(yīng)用需求進(jìn)行定制和擴(kuò)展,以滿足不同車輛和ECU的診斷和通信需求。

2.2.4 XCP協(xié)議棧

汽車XCP協(xié)議棧是一種用于汽車電子控制單元(ECU)參數(shù)標(biāo)定的軟件協(xié)議。它基于AUTOSAR標(biāo)準(zhǔn),并提供了一套功能軟件來(lái)支持ECU的診斷、調(diào)試和參數(shù)配置等功能。

9d12ecd6-6d57-11ee-939d-92fbcf53809c.png

汽車XCP協(xié)議棧的功能軟件包括以下幾個(gè)方面:

XCP通信層:提供了與ECU之間的通信接口,支持基于CAN、FlexRay、以太網(wǎng)等不同的物理層通信協(xié)議。

XCP協(xié)議解析:負(fù)責(zé)解析和處理XCP協(xié)議消息,包括命令和響應(yīng)消息的解析、參數(shù)傳輸和校驗(yàn)等。

XCP數(shù)據(jù)采集和測(cè)量:支持對(duì)ECU內(nèi)部的數(shù)據(jù)進(jìn)行采集和測(cè)量,包括讀取和寫入ECU內(nèi)部的變量、參數(shù)和寄存器等。

XCP診斷和調(diào)試:提供了診斷和調(diào)試ECU的功能,包括讀取和修改ECU的內(nèi)部狀態(tài)、執(zhí)行診斷測(cè)試和故障碼讀取等。

XCP參數(shù)配置:支持對(duì)ECU的參數(shù)進(jìn)行配置和調(diào)整,包括校準(zhǔn)和校驗(yàn)參數(shù)的設(shè)置和更新。

XCP仿真和測(cè)試:提供了對(duì)ECU進(jìn)行仿真和測(cè)試的功能,包括模擬ECU的行為和響應(yīng),以及生成和發(fā)送模擬的XCP消息。

2.2.5 TCP/IP協(xié)議棧

以太網(wǎng)TCP/IP協(xié)議棧是一組用于以太網(wǎng)通信的網(wǎng)絡(luò)協(xié)議集合,它包含了多個(gè)功能軟件模塊,用于實(shí)現(xiàn)不同的網(wǎng)絡(luò)功能。常見(jiàn)的以太網(wǎng)TCP/IP協(xié)議棧包含以下功能軟件:

9d1e5a12-6d57-11ee-939d-92fbcf53809c.png

網(wǎng)絡(luò)接口層(Network Interface Layer):負(fù)責(zé)與物理網(wǎng)絡(luò)接口進(jìn)行通信,包括驅(qū)動(dòng)程序和硬件抽象層。

網(wǎng)絡(luò)層(Network Layer):實(shí)現(xiàn)IP協(xié)議,負(fù)責(zé)數(shù)據(jù)包的路由和轉(zhuǎn)發(fā),包括IP地址分配和路由表管理。

傳輸層(Transport Layer):實(shí)現(xiàn)TCP和UDP協(xié)議,負(fù)責(zé)數(shù)據(jù)的可靠傳輸和錯(cuò)誤檢測(cè),包括連接管理、流量控制和擁塞控制。

應(yīng)用層(Application Layer):提供各種應(yīng)用程序所需的協(xié)議和服務(wù),包括HTTP、FTP、SMTP等。

網(wǎng)絡(luò)配置和管理(Network Configuration and Management):提供網(wǎng)絡(luò)配置和管理的功能,包括DHCP、DNS等。

安全性和加密(Security and Encryption):提供網(wǎng)絡(luò)通信的安全性和加密功能,包括SSL/TLS、IPSec等。

以太網(wǎng)TCP/IP協(xié)議棧的功能軟件模塊可以根據(jù)具體的應(yīng)用需求進(jìn)行選擇和配置,以滿足不同的網(wǎng)絡(luò)通信需求。

2.2.6 以太網(wǎng)音視頻橋(AVB)協(xié)議棧

汽車以太網(wǎng)音視頻橋(AVB)協(xié)議棧是一種用于實(shí)現(xiàn)車載音視頻傳輸?shù)膮f(xié)議棧。它基于IEEE 802.1 Audio Video Bridging (AVB)標(biāo)準(zhǔn),提供了實(shí)時(shí)、可靠的音視頻傳輸和同步功能。汽車以太網(wǎng)AVB協(xié)議棧包含以下功能軟件:

9d2645f6-6d57-11ee-939d-92fbcf53809c.png

9d2a3e72-6d57-11ee-939d-92fbcf53809c.png

AVB協(xié)議:實(shí)現(xiàn)了AVB網(wǎng)絡(luò)的基本協(xié)議功能,包括時(shí)鐘同步、流量調(diào)度、流量控制等。

IEEE 802.1AS時(shí)鐘同步協(xié)議:用于實(shí)現(xiàn)網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的時(shí)鐘同步,確保音視頻數(shù)據(jù)的同步傳輸。

IEEE 802.1Qat流量調(diào)度協(xié)議:用于實(shí)現(xiàn)網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的流量調(diào)度和優(yōu)先級(jí)控制,確保音視頻數(shù)據(jù)的實(shí)時(shí)傳輸。

IEEE 802.1Qav流量控制協(xié)議:用于實(shí)現(xiàn)網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的流量控制,確保音視頻數(shù)據(jù)的可靠傳輸。

IEEE 1722音視頻傳輸協(xié)議:定義了音視頻數(shù)據(jù)的封裝和傳輸格式,確保音視頻數(shù)據(jù)的正確解析和傳輸。

IEEE 1733時(shí)鐘同步協(xié)議:用于實(shí)現(xiàn)網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的時(shí)鐘同步,確保音視頻數(shù)據(jù)的同步傳輸。

Media Clock Server (MCS):提供了音視頻數(shù)據(jù)的時(shí)鐘同步服務(wù),確保音視頻數(shù)據(jù)的同步傳輸。

Media Stream Reservation Protocol (MSRP):用于實(shí)現(xiàn)音視頻數(shù)據(jù)的流量調(diào)度和優(yōu)先級(jí)控制,確保音視頻數(shù)據(jù)的實(shí)時(shí)傳輸。

Stream Reservation Protocol (SRP):用于實(shí)現(xiàn)音視頻數(shù)據(jù)的流量調(diào)度和優(yōu)先級(jí)控制,確保音視頻數(shù)據(jù)的實(shí)時(shí)傳輸。

Audio Video Transport Protocol (AVTP):用于實(shí)現(xiàn)音視頻數(shù)據(jù)的封裝和傳輸,確保音視頻數(shù)據(jù)的正確解析和傳輸。

汽車以太網(wǎng)AVB協(xié)議棧提供了一套完整的功能軟件,用于實(shí)現(xiàn)車載音視頻數(shù)據(jù)的實(shí)時(shí)、可靠傳輸和同步。

2.2.7 時(shí)間敏感網(wǎng)絡(luò)(TSN)協(xié)議棧

汽車時(shí)間敏感網(wǎng)絡(luò)(TSN)協(xié)議棧是一種用于汽車領(lǐng)域的網(wǎng)絡(luò)通信協(xié)議棧,旨在提供高可靠性、低延遲和實(shí)時(shí)性的通信。它基于以太網(wǎng)技術(shù),并通過(guò)時(shí)間同步和流量調(diào)度等機(jī)制來(lái)滿足汽車電子系統(tǒng)對(duì)實(shí)時(shí)通信的需求。

9d3cff8a-6d57-11ee-939d-92fbcf53809c.jpg

TSN協(xié)議棧包含以下功能軟件:

時(shí)間同步:通過(guò)IEEE 802.1AS協(xié)議實(shí)現(xiàn)網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的時(shí)間同步,確保數(shù)據(jù)在網(wǎng)絡(luò)中的傳輸具有一致的時(shí)間參考。

流量調(diào)度:通過(guò)IEEE 802.1Qbv和IEEE 802.1Qbu協(xié)議實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)中不同流量的調(diào)度和優(yōu)先級(jí)管理,確保高優(yōu)先級(jí)的數(shù)據(jù)能夠及時(shí)傳輸。

帶寬保障:通過(guò)IEEE 802.1Qav協(xié)議實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)中不同流量的帶寬分配和保障,確保實(shí)時(shí)數(shù)據(jù)的傳輸不受其他數(shù)據(jù)流的影響。

時(shí)鐘同步:通過(guò)IEEE 802.1AS和IEEE 802.1AS-Rev協(xié)議實(shí)現(xiàn)網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的時(shí)鐘同步,確保數(shù)據(jù)在不同節(jié)點(diǎn)之間的時(shí)間一致性。

時(shí)鐘分發(fā):通過(guò)IEEE 802.1AS和IEEE 802.1AS-Rev協(xié)議實(shí)現(xiàn)網(wǎng)絡(luò)中時(shí)鐘的分發(fā),確保各個(gè)節(jié)點(diǎn)能夠獲取到一致的時(shí)間參考。

優(yōu)先級(jí)管理:通過(guò)IEEE 802.1Qbv協(xié)議實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)中不同數(shù)據(jù)流的優(yōu)先級(jí)管理,確保高優(yōu)先級(jí)的數(shù)據(jù)能夠優(yōu)先傳輸。

數(shù)據(jù)包過(guò)濾:通過(guò)IEEE 802.1Qci協(xié)議實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)中數(shù)據(jù)包的過(guò)濾和篩選,確保只有符合條件的數(shù)據(jù)包能夠被傳輸。

TSN協(xié)議棧的功能軟件可以根據(jù)具體的應(yīng)用需求進(jìn)行配置和定制,以滿足不同汽車電子系統(tǒng)的實(shí)時(shí)通信需求。

2.2.8 電機(jī)驅(qū)動(dòng)庫(kù)(Motor Control Library)

汽車電機(jī)驅(qū)動(dòng)庫(kù)(Motor Control Library)是一種用于控制和驅(qū)動(dòng)汽車電機(jī)的軟件庫(kù)。它包含了一系列功能算法和庫(kù)函數(shù),用于實(shí)現(xiàn)電機(jī)控制的各種功能和特性。

9d4d2482-6d57-11ee-939d-92fbcf53809c.png

汽車電機(jī)驅(qū)動(dòng)庫(kù)通常包含以下功能算法和庫(kù)函數(shù)軟件:

電機(jī)控制算法:包括速度控制、位置控制、扭矩控制等算法,用于實(shí)現(xiàn)電機(jī)的精確控制和調(diào)節(jié)。

電機(jī)參數(shù)識(shí)別算法:用于識(shí)別電機(jī)的參數(shù),如電感、電阻、轉(zhuǎn)子慣量等,以便更好地進(jìn)行控制和調(diào)節(jié)。

電機(jī)保護(hù)算法:包括過(guò)流保護(hù)、過(guò)溫保護(hù)、過(guò)壓保護(hù)等算法,用于保護(hù)電機(jī)和驅(qū)動(dòng)器免受損壞。

PWM生成算法:用于生成脈寬調(diào)制(PWM)信號(hào),控制電機(jī)驅(qū)動(dòng)器的輸出功率。

傳感器接口函數(shù):用于與電機(jī)傳感器(如編碼器、霍爾傳感器等)進(jìn)行通信和數(shù)據(jù)交換。

通信接口函數(shù):用于與外部控制器(如ECU)進(jìn)行通信,實(shí)現(xiàn)與整車系統(tǒng)的集成。

故障診斷和故障處理函數(shù):用于檢測(cè)和處理電機(jī)和驅(qū)動(dòng)器的故障,保證系統(tǒng)的安全和可靠性。

通過(guò)使用汽車電機(jī)驅(qū)動(dòng)庫(kù),開發(fā)人員可以快速實(shí)現(xiàn)電機(jī)控制功能,提高開發(fā)效率和產(chǎn)品質(zhì)量。同時(shí),庫(kù)函數(shù)軟件的模塊化設(shè)計(jì)也使得系統(tǒng)的維護(hù)和升級(jí)更加方便。

操作系統(tǒng)(OS)

一方面,隨著汽車功能的日益復(fù)雜,前后臺(tái)調(diào)度的bare-metal軟件架構(gòu)已無(wú)法滿足汽車應(yīng)用需求,基于操作系統(tǒng)(OS-Operation System)的多任務(wù)調(diào)度和資源管理軟件需求越來(lái)越多;另一方面:摩爾定理帶來(lái)的車規(guī)MCU芯片硬件主頻/算力不斷提高,片內(nèi)集成的存儲(chǔ)器足夠大,能夠滿足OS內(nèi)核帶來(lái)的額外實(shí)時(shí)性和存儲(chǔ)器消耗。

車規(guī)MCU的通常集成的存儲(chǔ)器都比較有限(Flash:幾KB ~ 64MB, SRAM:幾KB ~ 10MB),且不帶內(nèi)存管理單元(MMU),所以無(wú)法運(yùn)行Windows和Linux這類大型桌面非實(shí)時(shí)操作系統(tǒng)。

9d587fb2-6d57-11ee-939d-92fbcf53809c.png

車規(guī)MCU的應(yīng)用屬于典型的嵌入式實(shí)時(shí)應(yīng)用,因此其使用的操作系統(tǒng)(OS-Operation System)必須是實(shí)時(shí)操作系統(tǒng)(RTOS - Real-Time Operation System)。

9d6f45da-6d57-11ee-939d-92fbcf53809c.png

3.1 AUTOSAR OS

AUTOSAR OS(AUTomotive Open System ARchitecture Operating System)是AUTOSAR架構(gòu)中的一個(gè)組件,用于管理和協(xié)調(diào)汽車電子系統(tǒng)中的軟件任務(wù)和中斷。它提供了以下功能特性:

9d7fab50-6d57-11ee-939d-92fbcf53809c.png

任務(wù)和中斷管理:AUTOSAR OS可以創(chuàng)建、啟動(dòng)、停止和刪除任務(wù),并處理中斷請(qǐng)求。它可以根據(jù)任務(wù)的優(yōu)先級(jí)和調(diào)度策略來(lái)調(diào)度任務(wù)的執(zhí)行,確保任務(wù)按照預(yù)定的時(shí)間要求執(zhí)行。

2. 時(shí)鐘和定時(shí)器管理:AUTOSAR OS可以管理系統(tǒng)時(shí)鐘和定時(shí)器,提供精確的時(shí)間基準(zhǔn)和定時(shí)功能,以支持任務(wù)和中斷的時(shí)間觸發(fā)。

3. 通信和同步機(jī)制:AUTOSAR OS提供了多種通信和同步機(jī)制,如事件、信號(hào)量、郵箱和消息隊(duì)列,用于任務(wù)之間的數(shù)據(jù)交換和同步。

4. 內(nèi)存管理:AUTOSAR OS提供了內(nèi)存管理功能,包括動(dòng)態(tài)內(nèi)存分配和釋放,以及內(nèi)存保護(hù)和錯(cuò)誤檢測(cè)機(jī)制,確保系統(tǒng)的穩(wěn)定性和安全性。

5. 錯(cuò)誤處理和故障管理:AUTOSAR OS具有錯(cuò)誤處理和故障管理功能,可以檢測(cè)和處理任務(wù)和中斷的運(yùn)行時(shí)錯(cuò)誤,包括任務(wù)超時(shí)、堆棧溢出等。

6. 電源管理:AUTOSAR OS可以管理系統(tǒng)的電源狀態(tài),包括進(jìn)入和退出低功耗模式,以最大程度地減少能耗。

AUTOSAR OS是一個(gè)功能強(qiáng)大的操作系統(tǒng),用于管理和協(xié)調(diào)汽車電子系統(tǒng)中的軟件任務(wù)和中斷,提供了豐富的功能特性,以滿足汽車電子系統(tǒng)的實(shí)時(shí)性、可靠性和安全性要求。

3.1.1 OSEK OS

OSEK(Open Systems and their Interfaces for Electronics in Motor Vehicles)是一種開放的嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS),專為汽車電子系統(tǒng)開發(fā)而設(shè)計(jì)。OSEK OS提供了一種標(biāo)準(zhǔn)化的方法來(lái)管理和調(diào)度汽車電子系統(tǒng)中的任務(wù)和資源。

9d8fd174-6d57-11ee-939d-92fbcf53809c.png

OSEK(Open Systems and the corresponding Interfaces for Automotive Electronics)是一種用于汽車電子系統(tǒng)的開放式操作系統(tǒng)標(biāo)準(zhǔn)。OSEK OS具有以下任務(wù)調(diào)度和中斷管理的特點(diǎn):

1. 任務(wù)調(diào)度:OSEK OS采用固定優(yōu)先級(jí)的靜態(tài)優(yōu)先級(jí)調(diào)度算法。每個(gè)任務(wù)都被分配了一個(gè)固定的優(yōu)先級(jí),優(yōu)先級(jí)高的任務(wù)具有更高的執(zhí)行優(yōu)先級(jí)。任務(wù)的調(diào)度是基于優(yōu)先級(jí)的,優(yōu)先級(jí)高的任務(wù)會(huì)搶占優(yōu)先級(jí)低的任務(wù),以確保高優(yōu)先級(jí)任務(wù)的及時(shí)響應(yīng)。

2. 中斷管理:OSEK OS提供了中斷管理機(jī)制,可以處理硬件中斷和軟件中斷。中斷可以被分為兩個(gè)級(jí)別:類別2中斷和類別1中斷。類別2中斷是不可搶占的,只有在任務(wù)執(zhí)行完畢后才能被處理。類別1中斷是可搶占的,可以在任務(wù)執(zhí)行過(guò)程中被觸發(fā)并立即處理。

3. 任務(wù)間通信:OSEK OS提供了一些機(jī)制來(lái)實(shí)現(xiàn)任務(wù)間的通信和同步。例如,事件標(biāo)志可以用于任務(wù)之間的同步和通信,任務(wù)可以等待某個(gè)事件的發(fā)生。消息隊(duì)列可以用于任務(wù)之間的消息傳遞,任務(wù)可以發(fā)送和接收消息。

4. 資源管理:OSEK OS提供了資源管理機(jī)制,可以對(duì)共享資源進(jìn)行保護(hù)和管理。資源可以是共享的全局變量、設(shè)備或其他系統(tǒng)資源。通過(guò)使用資源鎖定機(jī)制,可以確保在任何給定時(shí)間只有一個(gè)任務(wù)可以訪問(wèn)共享資源,以避免競(jìng)爭(zhēng)條件和數(shù)據(jù)一致性問(wèn)題。

OSEK OS的任務(wù)調(diào)度和中斷管理特點(diǎn)使得它適用于實(shí)時(shí)性要求較高的汽車電子系統(tǒng),能夠提供可靠的任務(wù)執(zhí)行和中斷處理能力。

OSEK OS的特點(diǎn)和價(jià)值在于:

實(shí)時(shí)性:OSEK OS是一個(gè)實(shí)時(shí)操作系統(tǒng),能夠滿足汽車電子系統(tǒng)對(duì)實(shí)時(shí)性的要求。它提供了任務(wù)調(diào)度和優(yōu)先級(jí)管理機(jī)制,確保任務(wù)按照預(yù)定的時(shí)間要求執(zhí)行。

可擴(kuò)展性:OSEK OS支持多任務(wù)并發(fā)執(zhí)行,可以管理和調(diào)度多個(gè)任務(wù)。它提供了任務(wù)和資源的管理機(jī)制,使得系統(tǒng)可以靈活地?cái)U(kuò)展和配置。

可靠性:OSEK OS提供了錯(cuò)誤檢測(cè)和處理機(jī)制,能夠及時(shí)發(fā)現(xiàn)和處理系統(tǒng)中的錯(cuò)誤。它還提供了任務(wù)間通信和同步機(jī)制,確保系統(tǒng)的穩(wěn)定性和可靠性。

可移植性:OSEK OS是一個(gè)開放的標(biāo)準(zhǔn),可以在不同的硬件平臺(tái)上實(shí)現(xiàn)和使用。它提供了一套統(tǒng)一的接口和規(guī)范,使得開發(fā)人員可以方便地移植和重用代碼。

標(biāo)準(zhǔn)化:OSEK OS是一個(gè)國(guó)際標(biāo)準(zhǔn),被廣泛應(yīng)用于汽車電子系統(tǒng)的開發(fā)。它提供了一種統(tǒng)一的開發(fā)方法和規(guī)范,促進(jìn)了汽車電子系統(tǒng)的互操作性和可維護(hù)性。

綜上所述,OSEK OS具有實(shí)時(shí)性、可擴(kuò)展性、可靠性、可移植性和標(biāo)準(zhǔn)化等特點(diǎn),為汽車電子系統(tǒng)的開發(fā)提供了一種可靠和高效的解決方案。

3.2 Non-AUTOSAR OS

3.2.1 FreeRTOS

FreeRTOS是一個(gè)開源的實(shí)時(shí)操作系統(tǒng)(RTOS),專為嵌入式系統(tǒng)設(shè)計(jì)而開發(fā)。它提供了一種輕量級(jí)的任務(wù)調(diào)度機(jī)制,能夠有效地管理多個(gè)任務(wù)的執(zhí)行。以下是FreeRTOS的核心任務(wù)調(diào)度機(jī)制、中斷和資源管理的實(shí)現(xiàn)特點(diǎn):

9d9c230c-6d57-11ee-939d-92fbcf53809c.png

任務(wù)調(diào)度機(jī)制:FreeRTOS使用優(yōu)先級(jí)搶占式調(diào)度算法,任務(wù)的執(zhí)行順序由任務(wù)的優(yōu)先級(jí)決定。當(dāng)有多個(gè)任務(wù)處于就緒狀態(tài)時(shí),優(yōu)先級(jí)較高的任務(wù)會(huì)被立即執(zhí)行,而優(yōu)先級(jí)較低的任務(wù)則會(huì)被暫時(shí)掛起,等待執(zhí)行機(jī)會(huì)。任務(wù)調(diào)度器會(huì)根據(jù)任務(wù)的優(yōu)先級(jí)動(dòng)態(tài)地進(jìn)行任務(wù)切換,以實(shí)現(xiàn)任務(wù)的快速響應(yīng)和高效利用系統(tǒng)資源。

中斷管理:FreeRTOS提供了可重入的中斷服務(wù)例程(ISR)機(jī)制,可以在中斷服務(wù)例程中調(diào)用RTOS的API函數(shù)。這使得在中斷處理過(guò)程中可以進(jìn)行任務(wù)切換、事件通知等操作,提高了系統(tǒng)的實(shí)時(shí)性和可靠性。同時(shí),F(xiàn)reeRTOS還提供了中斷屏蔽機(jī)制,可以在中斷處理過(guò)程中屏蔽其他中斷的干擾,確保關(guān)鍵任務(wù)的實(shí)時(shí)性。

資源管理:FreeRTOS提供了多種同步和通信機(jī)制,如信號(hào)量、互斥鎖、消息隊(duì)列等,用于實(shí)現(xiàn)任務(wù)之間的同步和通信。這些機(jī)制可以有效地防止資源競(jìng)爭(zhēng)和死鎖的發(fā)生,保證任務(wù)的正確執(zhí)行順序和數(shù)據(jù)的一致性。此外,F(xiàn)reeRTOS還提供了內(nèi)存管理功能,可以動(dòng)態(tài)地分配和釋放內(nèi)存,提高系統(tǒng)的靈活性和資源利用率。

FreeRTOS通過(guò)其靈活的任務(wù)調(diào)度機(jī)制、可重入的中斷管理和強(qiáng)大的資源管理功能,為嵌入式系統(tǒng)提供了一種可靠、高效的實(shí)時(shí)操作系統(tǒng)解決方案。它被廣泛應(yīng)用于汽車電子、工業(yè)控制、醫(yī)療設(shè)備等領(lǐng)域,為開發(fā)人員提供了方便、可靠的開發(fā)平臺(tái)。

3.2.2 其他RTOS

在汽車領(lǐng)域,常用的RTOS除了以上介紹的AUTOSAR/OSEK OS和FreeRTOS之外,包括但不限于以下幾種:

3.2.2.1 QNX OS

QNX是一種實(shí)時(shí)操作系統(tǒng)(RTOS),具有以下功能特性:

9daa9766-6d57-11ee-939d-92fbcf53809c.png

1. 實(shí)時(shí)性:QNX操作系統(tǒng)是一個(gè)實(shí)時(shí)操作系統(tǒng),提供可靠的實(shí)時(shí)性能。它能夠在嚴(yán)格的時(shí)間約束下運(yùn)行任務(wù),并確保任務(wù)按時(shí)完成。

2. 微內(nèi)核架構(gòu):QNX采用微內(nèi)核架構(gòu),將操作系統(tǒng)核心的功能模塊化,以提高系統(tǒng)的可靠性和靈活性。這種架構(gòu)允許模塊之間的獨(dú)立運(yùn)行和更新,而不會(huì)影響整個(gè)系統(tǒng)。

3. 分布式處理:QNX操作系統(tǒng)支持分布式處理,可以在多個(gè)處理器上運(yùn)行任務(wù),并通過(guò)網(wǎng)絡(luò)進(jìn)行通信和協(xié)調(diào)。這使得QNX適用于復(fù)雜的分布式系統(tǒng)和嵌入式網(wǎng)絡(luò)應(yīng)用。

4. 實(shí)時(shí)調(diào)度:QNX操作系統(tǒng)提供了靈活的實(shí)時(shí)調(diào)度算法,可以根據(jù)任務(wù)的優(yōu)先級(jí)和時(shí)間約束進(jìn)行任務(wù)調(diào)度。它能夠快速響應(yīng)高優(yōu)先級(jí)任務(wù),并確保低優(yōu)先級(jí)任務(wù)不會(huì)阻塞系統(tǒng)。

5. 強(qiáng)大的網(wǎng)絡(luò)支持:QNX操作系統(tǒng)具有強(qiáng)大的網(wǎng)絡(luò)支持,包括TCP/IP協(xié)議棧、套接字接口和網(wǎng)絡(luò)文件系統(tǒng)。這使得QNX可以輕松地與其他系統(tǒng)進(jìn)行通信和數(shù)據(jù)交換。

6. 安全性:QNX操作系統(tǒng)具有強(qiáng)大的安全功能,包括訪問(wèn)控制、數(shù)據(jù)加密和安全通信。它提供了多層次的安全機(jī)制,保護(hù)系統(tǒng)免受惡意攻擊和未經(jīng)授權(quán)的訪問(wèn)。

7. 可靠性和容錯(cuò)性:QNX操作系統(tǒng)具有高度的可靠性和容錯(cuò)性。它能夠檢測(cè)和恢復(fù)系統(tǒng)錯(cuò)誤,并提供故障隔離和容錯(cuò)機(jī)制,以確保系統(tǒng)的穩(wěn)定性和可用性。

3.2.2.2 GHS INTEGRITY OS

GHS INTEGRITY OS是一種實(shí)時(shí)操作系統(tǒng)(RTOS),由Green Hills Software開發(fā)。它具有以下功能特性:

9db6c324-6d57-11ee-939d-92fbcf53809c.png

1. 實(shí)時(shí)性:GHS INTEGRITY OS是一個(gè)實(shí)時(shí)操作系統(tǒng),具有可靠的實(shí)時(shí)性能。它能夠在嚴(yán)格的時(shí)間約束下運(yùn)行任務(wù),并確保任務(wù)按時(shí)完成。

2. 可靠性:GHS INTEGRITY OS具有高度的可靠性和穩(wěn)定性。它采用了分離的內(nèi)核和應(yīng)用程序空間,以防止應(yīng)用程序中的錯(cuò)誤對(duì)操作系統(tǒng)的影響。

3. 安全性:GHS INTEGRITY OS提供了強(qiáng)大的安全功能,包括內(nèi)存保護(hù)、訪問(wèn)控制和安全通信。它通過(guò)嚴(yán)格的權(quán)限管理和隔離機(jī)制,保護(hù)系統(tǒng)免受惡意攻擊和未經(jīng)授權(quán)的訪問(wèn)。

4. 分布式處理:GHS INTEGRITY OS支持分布式處理,可以在多個(gè)處理器上運(yùn)行任務(wù),并通過(guò)網(wǎng)絡(luò)進(jìn)行通信和協(xié)調(diào)。這使得GHS INTEGRITY OS適用于復(fù)雜的分布式系統(tǒng)和嵌入式網(wǎng)絡(luò)應(yīng)用。

5. 內(nèi)存管理:GHS INTEGRITY OS具有高級(jí)的內(nèi)存管理功能,包括動(dòng)態(tài)內(nèi)存分配和釋放、內(nèi)存保護(hù)和內(nèi)存池管理。這使得開發(fā)人員可以有效地管理系統(tǒng)的內(nèi)存資源。

6. 設(shè)備驅(qū)動(dòng)支持:GHS INTEGRITY OS提供了廣泛的設(shè)備驅(qū)動(dòng)支持,包括網(wǎng)絡(luò)、存儲(chǔ)、通信和外設(shè)設(shè)備。這使得開發(fā)人員可以輕松地與各種硬件設(shè)備進(jìn)行交互和通信。

7. 多任務(wù)支持:GHS INTEGRITY OS支持多任務(wù)并發(fā)執(zhí)行,可以同時(shí)運(yùn)行多個(gè)任務(wù)。它提供了任務(wù)調(diào)度、同步機(jī)制和通信機(jī)制,以實(shí)現(xiàn)任務(wù)之間的協(xié)作和交互。

3.2.2.3 Keil RTX5 OS

Keil RTX5 OS是一款為嵌入式系統(tǒng)開發(fā)的實(shí)時(shí)操作系統(tǒng)(RTOS),具有以下功能特性:

9e20632e-6d57-11ee-939d-92fbcf53809c.png

1. 搶占式多任務(wù)處理:Keil RTX5允許多個(gè)任務(wù)同時(shí)運(yùn)行,每個(gè)任務(wù)具有自己的優(yōu)先級(jí)。RTX5調(diào)度器確保在必要時(shí),高優(yōu)先級(jí)任務(wù)可以搶占低優(yōu)先級(jí)任務(wù)。

2. 任務(wù)管理:RTX5提供了任務(wù)管理功能,包括任務(wù)的創(chuàng)建、刪除和切換等。開發(fā)人員可以根據(jù)任務(wù)的需求和優(yōu)先級(jí)來(lái)管理任務(wù)。

3. 任務(wù)間通信:Keil RTX5提供了多種任務(wù)間通信機(jī)制,如消息隊(duì)列和郵箱。這些機(jī)制可以實(shí)現(xiàn)任務(wù)之間的高效數(shù)據(jù)交換,避免了忙等或輪詢的需要。

4. 同步原語(yǔ):RTX5支持各種同步原語(yǔ),如信號(hào)量、互斥鎖和事件標(biāo)志。這些原語(yǔ)有助于協(xié)調(diào)對(duì)共享資源的訪問(wèn),避免競(jìng)態(tài)條件的發(fā)生。

5. 內(nèi)存管理:Keil RTX5包含了一個(gè)內(nèi)存管理系統(tǒng),可以動(dòng)態(tài)分配和釋放內(nèi)存塊。這個(gè)功能在處理可變大小的數(shù)據(jù)結(jié)構(gòu)或需要?jiǎng)討B(tài)管理內(nèi)存時(shí)非常有用。

6. 定時(shí)器管理:RTX5內(nèi)核包含了一個(gè)定時(shí)器管理模塊,提供準(zhǔn)確的定時(shí)服務(wù)。它允許任務(wù)基于時(shí)間延遲或周期性間隔進(jìn)行調(diào)度。

7. 低開銷:Keil RTX5設(shè)計(jì)具有低內(nèi)存和處理開銷,適用于資源受限的嵌入式系統(tǒng)。

以上是一些常見(jiàn)的汽車領(lǐng)域使用的RTOS,每種RTOS都有其特定的優(yōu)勢(shì)和適用場(chǎng)景,根據(jù)具體的應(yīng)用需求和系統(tǒng)要求選擇合適的RTOS是非常重要的。

啟動(dòng)及信息安全軟件(Security SW)

4.1 安全啟動(dòng)固件(Secure Boot Firmware)

車規(guī)MCU的安全啟動(dòng)固件(Secure Boot Firmware)是一種用于保護(hù)汽車電子系統(tǒng)免受惡意軟件和未經(jīng)授權(quán)的代碼修改的安全機(jī)制。其主要功能包括以下幾個(gè)方面:

啟動(dòng)驗(yàn)證:安全啟動(dòng)固件通過(guò)驗(yàn)證啟動(dòng)代碼的完整性和真實(shí)性來(lái)確保系統(tǒng)啟動(dòng)過(guò)程的安全性。它會(huì)對(duì)啟動(dòng)代碼進(jìn)行數(shù)字簽名驗(yàn)證,以確保代碼未被篡改或替換。

防止未授權(quán)代碼執(zhí)行:安全啟動(dòng)固件會(huì)對(duì)系統(tǒng)中的應(yīng)用程序和固件進(jìn)行驗(yàn)證,以確保只有經(jīng)過(guò)授權(quán)的代碼才能被執(zhí)行。它會(huì)檢查代碼的數(shù)字簽名,并與預(yù)先存儲(chǔ)的信任錨點(diǎn)進(jìn)行比對(duì),以確定代碼的合法性。

安全更新:安全啟動(dòng)固件還支持安全的固件更新過(guò)程。它可以驗(yàn)證更新包的完整性和真實(shí)性,并確保只有經(jīng)過(guò)授權(quán)的更新包才能被加載和執(zhí)行。

安全存儲(chǔ):安全啟動(dòng)固件還可以提供安全的存儲(chǔ)機(jī)制,用于存儲(chǔ)敏感數(shù)據(jù),如加密密鑰和證書。這些數(shù)據(jù)可以被安全地訪問(wèn)和使用,以保護(hù)系統(tǒng)的安全性。

通過(guò)使用安全啟動(dòng)固件,車規(guī)MCU可以提供更高的安全性和可靠性,防止惡意軟件和未經(jīng)授權(quán)的代碼對(duì)汽車電子系統(tǒng)造成的潛在威脅。

4.2 硬件安全模塊固件(HSM Firmware)

車規(guī)MCU的硬件安全模塊固件(HSM Firmware)是指在車規(guī)MCU芯片中集成的用于實(shí)現(xiàn)硬件安全功能的固件軟件。它主要用于保護(hù)車輛的安全性和防止惡意攻擊。

9e42cb12-6d57-11ee-939d-92fbcf53809c.png

車規(guī)MCU的硬件安全模塊固件具有以下主要功能:

安全啟動(dòng)(Secure Boot):確保只有經(jīng)過(guò)驗(yàn)證的軟件和固件可以在車規(guī)MCU上運(yùn)行,防止未經(jīng)授權(quán)的軟件和惡意代碼的執(zhí)行。

密鑰管理:管理和存儲(chǔ)加密算法所需的密鑰,確保密鑰的安全性和保密性。

安全通信:提供加密和認(rèn)證機(jī)制,確保車輛內(nèi)部和車輛與外部系統(tǒng)之間的通信安全。

安全存儲(chǔ):提供加密和防篡改機(jī)制,保護(hù)存儲(chǔ)在車規(guī)MCU中的敏感數(shù)據(jù)和配置信息的安全性。

安全診斷:監(jiān)測(cè)和檢測(cè)可能存在的安全漏洞和攻擊,并采取相應(yīng)的安全措施進(jìn)行應(yīng)對(duì)和防護(hù)。

安全更新:支持安全的固件和軟件更新機(jī)制,確保車規(guī)MCU的安全性能得到持續(xù)改進(jìn)和更新。

通過(guò)集成硬件安全模塊固件,車規(guī)MCU可以提供更高的安全性和可靠性,保護(hù)車輛免受惡意攻擊和未經(jīng)授權(quán)的訪問(wèn)。這對(duì)于確保車輛的安全性和數(shù)據(jù)的保密性至關(guān)重要。

4.3 啟動(dòng)加載程序(bootloader)

車規(guī)MCU的啟動(dòng)加載程序(bootloader)是一種用于在汽車電子控制單元(ECU)上加載和更新應(yīng)用程序的軟件。它具有以下主要功能和實(shí)現(xiàn)要點(diǎn):

引導(dǎo)加載:?jiǎn)?dòng)加載程序負(fù)責(zé)在MCU上啟動(dòng)和加載應(yīng)用程序。它通過(guò)讀取存儲(chǔ)器中的引導(dǎo)加載代碼,并將其加載到MCU的內(nèi)部存儲(chǔ)器中執(zhí)行,從而啟動(dòng)應(yīng)用程序。

存儲(chǔ)器管理:?jiǎn)?dòng)加載程序需要管理存儲(chǔ)器的分區(qū)和使用。它負(fù)責(zé)將應(yīng)用程序加載到正確的存儲(chǔ)器區(qū)域,并確保存儲(chǔ)器的正確初始化和擦除。

通信接口:?jiǎn)?dòng)加載程序通常通過(guò)車輛網(wǎng)絡(luò)(如CAN和LIN總線)或其他通信接口與外部設(shè)備(如診斷工具或服務(wù)器)進(jìn)行通信。它使用這些接口來(lái)接收新的應(yīng)用程序固件,并將其寫入MCU的存儲(chǔ)器中。

安全性和完整性驗(yàn)證:?jiǎn)?dòng)加載程序需要驗(yàn)證新的應(yīng)用程序固件的安全性和完整性,以確保它是合法的和未被篡改的。它可以使用數(shù)字簽名、校驗(yàn)和或其他安全機(jī)制來(lái)驗(yàn)證固件的完整性。

錯(cuò)誤處理和回滾:?jiǎn)?dòng)加載程序需要具備錯(cuò)誤處理和回滾機(jī)制,以應(yīng)對(duì)加載過(guò)程中可能出現(xiàn)的錯(cuò)誤。它可以記錄錯(cuò)誤日志、提供錯(cuò)誤提示或回滾到之前的應(yīng)用程序版本。

可擴(kuò)展性和靈活性:?jiǎn)?dòng)加載程序應(yīng)具備良好的可擴(kuò)展性和靈活性,以適應(yīng)不同的MCU和應(yīng)用程序需求。它應(yīng)支持不同的存儲(chǔ)器類型、通信接口和安全機(jī)制,并能夠適應(yīng)不同的應(yīng)用程序大小和復(fù)雜度。

自動(dòng)化和遠(yuǎn)程更新:?jiǎn)?dòng)加載程序可以支持自動(dòng)化的固件更新過(guò)程,使得ECU的應(yīng)用程序可以遠(yuǎn)程更新,而無(wú)需人工干預(yù)。這可以提高維護(hù)效率和系統(tǒng)可靠性。

9e4fd5fa-6d57-11ee-939d-92fbcf53809c.png

總之,車規(guī)MCU的啟動(dòng)加載程序是一種關(guān)鍵的軟件組件,它負(fù)責(zé)在汽車ECU上加載和更新應(yīng)用程序。它需要具備存儲(chǔ)器管理、通信接口、安全性驗(yàn)證、錯(cuò)誤處理和回滾等功能,并具備可擴(kuò)展性和靈活性,以適應(yīng)不同的MCU和應(yīng)用程序需求。

4.4 遠(yuǎn)程固件更新程序(FOTA)

9e6a3788-6d57-11ee-939d-92fbcf53809c.png

車規(guī)MCU的遠(yuǎn)程固件更新程序(FOTA)是一種通過(guò)無(wú)線通信方式對(duì)車輛中的MCU進(jìn)行固件升級(jí)的技術(shù)。它的主要功能包括:

遠(yuǎn)程升級(jí):FOTA允許車輛制造商通過(guò)無(wú)線網(wǎng)絡(luò)遠(yuǎn)程升級(jí)車輛中的MCU固件,無(wú)需將車輛帶回到維修中心或進(jìn)行物理接口連接。

功能增強(qiáng):FOTA可以為車輛提供新的功能和特性,通過(guò)更新MCU固件來(lái)實(shí)現(xiàn)。這使得車輛制造商可以在車輛上市后通過(guò)軟件更新來(lái)改進(jìn)和增強(qiáng)車輛的功能。

故障修復(fù):FOTA可以用于修復(fù)MCU固件中的錯(cuò)誤和故障。一旦發(fā)現(xiàn)了問(wèn)題,車輛制造商可以通過(guò)遠(yuǎn)程升級(jí)來(lái)修復(fù)這些問(wèn)題,而無(wú)需將車輛帶回到維修中心。

實(shí)現(xiàn)FOTA的要點(diǎn)包括:

安全性:FOTA需要確保固件的完整性和安全性。為了防止固件被篡改或惡意軟件的注入,需要使用數(shù)字簽名和加密等安全機(jī)制來(lái)保護(hù)固件的傳輸和存儲(chǔ)過(guò)程。

網(wǎng)絡(luò)通信:FOTA需要使用無(wú)線通信技術(shù),如蜂窩網(wǎng)絡(luò)(如4G5G)或車載通信系統(tǒng)(如V2X)來(lái)進(jìn)行固件的傳輸。這需要確保通信的穩(wěn)定性和可靠性,以及對(duì)網(wǎng)絡(luò)帶寬和延遲的適應(yīng)性。

可靠性和回滾機(jī)制:FOTA需要確保固件升級(jí)的可靠性,以避免升級(jí)過(guò)程中的中斷或失敗。同時(shí),還需要提供回滾機(jī)制,以便在升級(jí)失敗或出現(xiàn)問(wèn)題時(shí)能夠恢復(fù)到之前的固件版本。

用戶體驗(yàn):FOTA應(yīng)該盡量減少對(duì)車輛使用者的干擾和影響。升級(jí)過(guò)程應(yīng)該在車輛停放或不使用的時(shí)候進(jìn)行,以避免對(duì)車輛的正常使用造成影響。

FOTA是車聯(lián)網(wǎng)普及后,新一代功能域控制器(DCU)和區(qū)域控制器(ZCU)架構(gòu)實(shí)現(xiàn)的一項(xiàng)重要的軟件技術(shù),可以為車輛制造商提供靈活的固件管理和更新方式,以提供更好的用戶體驗(yàn)和車輛性能。

功能安全軟件(FuSa SW)

9e758458-6d57-11ee-939d-92fbcf53809c.png

5.1 功能安全外設(shè)驅(qū)動(dòng)(SPD)

車規(guī)MCU的功能安全外設(shè)驅(qū)動(dòng)(SPD)是為了滿足汽車電子系統(tǒng)的功能安全要求而設(shè)計(jì)的。它負(fù)責(zé)驅(qū)動(dòng)功能安全外設(shè),確保其在發(fā)生故障時(shí)能夠正確地執(zhí)行安全功能。SPD的設(shè)計(jì)需要遵循ISO 26262功能安全標(biāo)準(zhǔn),并根據(jù)系統(tǒng)的安全需求進(jìn)行相應(yīng)的驗(yàn)證和驗(yàn)證。

9e8da5f6-6d57-11ee-939d-92fbcf53809c.png

SPD的主要功能包括:

故障檢測(cè)和診斷:SPD需要能夠監(jiān)測(cè)外設(shè)的故障狀態(tài),并及時(shí)進(jìn)行診斷和報(bào)告。這可以通過(guò)使用故障檢測(cè)機(jī)制和故障診斷算法來(lái)實(shí)現(xiàn)。

安全數(shù)據(jù)傳輸:SPD需要確保外設(shè)與其他系統(tǒng)組件之間的數(shù)據(jù)傳輸是安全可靠的。這可以通過(guò)使用安全通信協(xié)議和數(shù)據(jù)完整性校驗(yàn)機(jī)制來(lái)實(shí)現(xiàn)。

安全控制和監(jiān)控:SPD需要能夠?qū)ν庠O(shè)進(jìn)行安全控制和監(jiān)控,以確保其在發(fā)生故障時(shí)能夠正確地執(zhí)行安全功能。這可以通過(guò)使用安全控制算法和故障恢復(fù)機(jī)制來(lái)實(shí)現(xiàn)。

在設(shè)計(jì)SPD時(shí),需要考慮以下幾點(diǎn):

遵循ISO 26262標(biāo)準(zhǔn):SPD的設(shè)計(jì)需要符合ISO 26262的要求,包括安全生命周期的管理、安全需求的分析和驗(yàn)證、安全功能的實(shí)現(xiàn)和驗(yàn)證等。

故障檢測(cè)和診斷:SPD需要能夠準(zhǔn)確地檢測(cè)和診斷外設(shè)的故障狀態(tài),并及時(shí)進(jìn)行報(bào)告和處理。這可以通過(guò)使用故障檢測(cè)機(jī)制和故障診斷算法來(lái)實(shí)現(xiàn)。

安全數(shù)據(jù)傳輸:SPD需要確保外設(shè)與其他系統(tǒng)組件之間的數(shù)據(jù)傳輸是安全可靠的。這可以通過(guò)使用安全通信協(xié)議和數(shù)據(jù)完整性校驗(yàn)機(jī)制來(lái)實(shí)現(xiàn)。

安全控制和監(jiān)控:SPD需要能夠?qū)ν庠O(shè)進(jìn)行安全控制和監(jiān)控,以確保其在發(fā)生故障時(shí)能夠正確地執(zhí)行安全功能。這可以通過(guò)使用安全控制算法和故障恢復(fù)機(jī)制來(lái)實(shí)現(xiàn)。

車規(guī)MCU的功能安全外設(shè)驅(qū)動(dòng)(SPD)是為了滿足汽車電子系統(tǒng)的功能安全要求而設(shè)計(jì)的,它負(fù)責(zé)驅(qū)動(dòng)功能安全外設(shè),并確保其在發(fā)生故障時(shí)能夠正確地執(zhí)行安全功能。在設(shè)計(jì)SPD時(shí),需要遵循ISO 26262標(biāo)準(zhǔn),并考慮故障檢測(cè)和診斷、安全數(shù)據(jù)傳輸、安全控制和監(jiān)控等方面的要求。

5.2 功能安全庫(kù)(Safety Library)

車規(guī)MCU的功能安全庫(kù)(Safety Library)是為了滿足汽車電子系統(tǒng)的功能安全要求而設(shè)計(jì)的軟件模塊集合。它提供了一系列的功能安全功能和算法,用于監(jiān)測(cè)和控制系統(tǒng)的運(yùn)行,以確保系統(tǒng)在發(fā)生故障時(shí)能夠安全地進(jìn)入故障狀態(tài)或安全地恢復(fù)正常工作。

9e9e4816-6d57-11ee-939d-92fbcf53809c.png

車規(guī)MCU的功能安全庫(kù)的核心功能包括:

故障檢測(cè)和診斷:功能安全庫(kù)可以監(jiān)測(cè)系統(tǒng)的各個(gè)部分是否正常工作,并在發(fā)現(xiàn)故障時(shí)進(jìn)行診斷和報(bào)警。它可以檢測(cè)硬件故障、軟件錯(cuò)誤和通信故障等,并提供相應(yīng)的故障診斷信息。

故障容錯(cuò)和恢復(fù):功能安全庫(kù)可以通過(guò)冗余設(shè)計(jì)和錯(cuò)誤處理算法來(lái)提高系統(tǒng)的容錯(cuò)性。它可以檢測(cè)和糾正錯(cuò)誤,或者在發(fā)生故障時(shí)切換到備用模式,以確保系統(tǒng)的可靠性和穩(wěn)定性。

安全監(jiān)控和保護(hù):功能安全庫(kù)可以監(jiān)控系統(tǒng)的安全狀態(tài),并采取相應(yīng)的措施來(lái)保護(hù)系統(tǒng)免受潛在的安全威脅。它可以檢測(cè)和防止未經(jīng)授權(quán)的訪問(wèn)、數(shù)據(jù)篡改和惡意攻擊等。

安全通信和數(shù)據(jù)保護(hù):功能安全庫(kù)可以提供安全的通信協(xié)議和加密算法,以保護(hù)系統(tǒng)中傳輸?shù)臄?shù)據(jù)的機(jī)密性和完整性。它可以防止數(shù)據(jù)泄露、篡改和劫持等安全風(fēng)險(xiǎn)。

車規(guī)MCU的功能安全庫(kù)是為了確保汽車電子系統(tǒng)在發(fā)生故障時(shí)能夠安全地進(jìn)入故障狀態(tài)或安全地恢復(fù)正常工作而設(shè)計(jì)的軟件模塊集合。它提供了故障檢測(cè)和診斷、故障容錯(cuò)和恢復(fù)、安全監(jiān)控和保護(hù)、安全通信和數(shù)據(jù)保護(hù)等核心功能,以提高系統(tǒng)的可靠性和安全性。

軟件開發(fā)工具鏈(Toolchain)

6.1 集成開發(fā)環(huán)境(IDE)

集成開發(fā)環(huán)境(IDE)是一種集成了多個(gè)軟件開發(fā)工具的平臺(tái),用于幫助開發(fā)人員進(jìn)行軟件開發(fā)和調(diào)試。IDE的主要作用包括:

代碼編輯:IDE提供了一個(gè)編輯器,用于編寫和編輯源代碼。編輯器通常具有代碼自動(dòng)完成、語(yǔ)法高亮和錯(cuò)誤檢查等功能,以提高開發(fā)效率和代碼質(zhì)量。

編譯和構(gòu)建:IDE集成了編譯器和構(gòu)建工具,可以將源代碼編譯成可執(zhí)行文件或庫(kù)。IDE可以自動(dòng)執(zhí)行編譯和構(gòu)建過(guò)程,并提供錯(cuò)誤和警告信息,幫助開發(fā)人員及時(shí)發(fā)現(xiàn)和修復(fù)問(wèn)題。

調(diào)試:IDE提供了調(diào)試器,用于在開發(fā)過(guò)程中跟蹤和調(diào)試程序的執(zhí)行。調(diào)試器可以設(shè)置斷點(diǎn)、單步執(zhí)行、查看變量和內(nèi)存狀態(tài)等,幫助開發(fā)人員定位和解決程序中的錯(cuò)誤。

版本控制:IDE通常集成了版本控制系統(tǒng),如Git或SVN,用于管理和跟蹤代碼的版本和變更。開發(fā)人員可以方便地進(jìn)行代碼提交、分支管理和合并操作。

項(xiàng)目管理:IDE提供了項(xiàng)目管理功能,可以組織和管理多個(gè)源文件、庫(kù)和依賴項(xiàng)。開發(fā)人員可以輕松地創(chuàng)建、導(dǎo)入和管理項(xiàng)目,以及配置項(xiàng)目的構(gòu)建選項(xiàng)和依賴關(guān)系。

自動(dòng)化工具:IDE還可以集成其他自動(dòng)化工具,如靜態(tài)代碼分析工具、單元測(cè)試框架和性能分析工具,以幫助開發(fā)人員提高代碼質(zhì)量和性能。

集成開發(fā)環(huán)境(IDE)提供了一個(gè)集成的平臺(tái),使開發(fā)人員能夠更高效地進(jìn)行軟件開發(fā)、調(diào)試和管理。它的目標(biāo)是提供一個(gè)統(tǒng)一的界面和工具集,簡(jiǎn)化開發(fā)流程,提高開發(fā)效率和代碼質(zhì)量。

6.1.1 基于GNU工具鏈 + Eclipse/VSCode IDE

9eb957d2-6d57-11ee-939d-92fbcf53809c.png

VSCode和Eclipse IDE都是常用的集成開發(fā)環(huán)境(IDE),用于編寫和調(diào)試代碼。它們各自有一些優(yōu)勢(shì)和劣勢(shì),下面是對(duì)它們進(jìn)行的簡(jiǎn)要對(duì)比:

9ec84ee0-6d57-11ee-939d-92fbcf53809c.png

VSCode的優(yōu)勢(shì):

輕量級(jí):VSCode是一個(gè)輕量級(jí)的編輯器,啟動(dòng)速度快,占用系統(tǒng)資源少,適合于資源有限的環(huán)境。

插件生態(tài)豐富:VSCode擁有龐大的插件市場(chǎng),可以根據(jù)需要安裝各種插件,擴(kuò)展功能和支持多種編程語(yǔ)言。

強(qiáng)大的調(diào)試功能:VSCode提供了強(qiáng)大的調(diào)試功能,可以方便地進(jìn)行斷點(diǎn)調(diào)試、變量監(jiān)視等操作。

跨平臺(tái)支持:VSCode支持多種操作系統(tǒng),包括Windows、Linux和Mac OS,可以在不同平臺(tái)上進(jìn)行開發(fā)和調(diào)試。

Eclipse IDE的優(yōu)勢(shì):

功能全面:Eclipse IDE是一個(gè)功能非常全面的IDE,內(nèi)置了豐富的功能和工具,包括代碼編輯、調(diào)試、版本控制等。

集成度高:Eclipse IDE集成了多種開發(fā)工具和框架,如Java開發(fā)工具、Web開發(fā)工具等,可以滿足多種開發(fā)需求。

社區(qū)支持強(qiáng)大:Eclipse IDE有一個(gè)龐大的社區(qū),提供了大量的教程、文檔和插件,方便開發(fā)者學(xué)習(xí)和解決問(wèn)題。

可擴(kuò)展性強(qiáng):Eclipse IDE支持插件的開發(fā)和集成,開發(fā)者可以根據(jù)需要自定義和擴(kuò)展IDE的功能。

不足之處:

VSCode的功能相對(duì)較簡(jiǎn)單,不如Eclipse IDE功能全面。

Eclipse IDE啟動(dòng)速度較慢,占用系統(tǒng)資源較多。

VSCode對(duì)于一些復(fù)雜的項(xiàng)目,可能需要借助插件來(lái)提供更多的功能和支持。

選擇使用VSCode還是Eclipse IDE,主要取決于個(gè)人的偏好、項(xiàng)目需求和開發(fā)環(huán)境。如果對(duì)輕量級(jí)和快速啟動(dòng)有較高要求,且需要豐富的插件支持,可以選擇VSCode。如果需要一個(gè)功能全面、集成度高的IDE,且對(duì)啟動(dòng)速度和系統(tǒng)資源占用沒(méi)有太大要求,可以選擇Eclipse IDE。

目前,VSCode的輕量化靈活設(shè)計(jì)以及豐富的擴(kuò)展插件,對(duì)開發(fā)者的要求比Eclipse要低不少。越來(lái)越多的車規(guī)MCU廠商選擇VSCode作為其應(yīng)用軟件開發(fā)IDE。

6.1.2 IAR IDE

IAR IDE(Integrated Development Environment)是由IAR Systems開發(fā)的一款集成開發(fā)環(huán)境,用于嵌入式系統(tǒng)的軟件開發(fā)。它提供了一整套工具和功能,方便開發(fā)人員進(jìn)行嵌入式軟件的編寫、調(diào)試和部署。

9eda3344-6d57-11ee-939d-92fbcf53809c.png

IAR IDE具有以下特點(diǎn)和功能:

編譯器和調(diào)試器:IAR IDE內(nèi)置了高度優(yōu)化的編譯器,支持多種嵌入式處理器架構(gòu)。它還提供了強(qiáng)大的調(diào)試器,可以實(shí)時(shí)監(jiān)控程序的執(zhí)行狀態(tài),進(jìn)行斷點(diǎn)調(diào)試和變量查看等操作。

代碼編輯器:IAR IDE提供了功能強(qiáng)大的代碼編輯器,支持代碼自動(dòng)完成、語(yǔ)法高亮顯示、代碼折疊等功能,提高了開發(fā)效率。

項(xiàng)目管理:IAR IDE可以管理多個(gè)項(xiàng)目,方便開發(fā)人員進(jìn)行項(xiàng)目的切換和管理。它還提供了項(xiàng)目模板和代碼生成器,加快了項(xiàng)目的啟動(dòng)和開發(fā)過(guò)程。

集成開發(fā)環(huán)境:IAR IDE集成了多個(gè)工具和插件,如版本控制系統(tǒng)、性能分析器、代碼覆蓋率工具等,方便開發(fā)人員進(jìn)行全面的軟件開發(fā)和測(cè)試。

跨平臺(tái)支持:IAR IDE支持多種操作系統(tǒng),包括Windows、Linux和macOS,可以在不同的開發(fā)環(huán)境中使用。

6.1.3 GHS MULTI IDE

GHS MULTI IDE是一個(gè)集成開發(fā)環(huán)境,用于嵌入式系統(tǒng)的軟件開發(fā)。

9ee7a7c2-6d57-11ee-939d-92fbcf53809c.png

其主要功能特性包括:

支持多種編程語(yǔ)言:GHS MULTI IDE支持多種編程語(yǔ)言,包括C、C++匯編語(yǔ)言。

2. 代碼編輯器:GHS MULTI IDE提供了一個(gè)強(qiáng)大的代碼編輯器,支持自動(dòng)補(bǔ)全、代碼折疊、語(yǔ)法高亮等功能。

3. 調(diào)試器:GHS MULTI IDE集成了一個(gè)強(qiáng)大的調(diào)試器,可以幫助開發(fā)人員快速定位和修復(fù)代碼中的錯(cuò)誤。

4. 代碼分析工具:GHS MULTI IDE提供了一系列代碼分析工具,可以幫助開發(fā)人員檢測(cè)代碼中的潛在問(wèn)題,如內(nèi)存泄漏、未初始化的變量等。

5. 版本控制:GHS MULTI IDE支持多種版本控制工具,如Git、SVN等。

6. 代碼生成器:GHS MULTI IDE可以生成可執(zhí)行文件、庫(kù)文件、靜態(tài)鏈接庫(kù)等。

7. 支持多種開發(fā)板:GHS MULTI IDE支持多種開發(fā)板,包括ARM、MIPS、PowerPC等。

8. 自定義配置:GHS MULTI IDE提供了自定義配置功能,可以根據(jù)項(xiàng)目的需求進(jìn)行配置,從而提高開發(fā)效率。

6.1.4 Keil MDK IDE

Keil公司是一家業(yè)界領(lǐng)先的微控制器(MCU)軟件開發(fā)工具的獨(dú)立供應(yīng)商。Keil公司由兩家私人公司聯(lián)合運(yùn)營(yíng),分別是德國(guó)慕尼黑的Keil Elektronik GmbH和美國(guó)德克薩斯的Keil Software Inc。Keil公司制造和銷售種類廣泛的開發(fā)工具,包括ANSI C編譯器、宏匯編程序、調(diào)試器、連接器、庫(kù)管理器、固件和實(shí)時(shí)操作系統(tǒng)核心(real-time kernel)。有超過(guò)10萬(wàn)名微控制器開發(fā)人員在使用這種得到業(yè)界認(rèn)可的解決方案。其Keil C51編譯器自1988年引入市場(chǎng)以來(lái)成為事實(shí)上的行業(yè)標(biāo)準(zhǔn),并支持超過(guò)500種8051變種。Keil公司在2005年被ARM公司收購(gòu)。

Keil公司2005年由ARM公司收購(gòu)。其兩家公司分別更名為ARM Germany GmbH和ARM Inc。

Keil IDE是一種集成開發(fā)環(huán)境,由Keil Software公司開發(fā)。它是一種專門用于嵌入式系統(tǒng)開發(fā)的工具,廣泛應(yīng)用于汽車電子、工業(yè)控制、通信等領(lǐng)域。

9f02de48-6d57-11ee-939d-92fbcf53809c.png

Keil MDK IDE提供了一套完整的開發(fā)工具鏈,包括編譯器、調(diào)試器、仿真器等。它支持多種編程語(yǔ)言,如C、C++和匯編語(yǔ)言,并且兼容多種嵌入式處理器架構(gòu),如ARM、8051等。

9f18c910-6d57-11ee-939d-92fbcf53809c.png

Keil MDK IDE具有以下特點(diǎn):

用戶友好的界面:Keil MDK IDE提供了直觀的圖形界面,使開發(fā)者可以方便地進(jìn)行代碼編寫、調(diào)試和測(cè)試。它還提供了豐富的工具欄、菜單和快捷鍵,以提高開發(fā)效率。

強(qiáng)大的編譯器:Keil MDK IDE內(nèi)置了高度優(yōu)化的編譯器,能夠生成高效的機(jī)器代碼。它支持多種編譯選項(xiàng)和優(yōu)化級(jí)別,以滿足不同應(yīng)用的需求。

全面的調(diào)試功能:Keil MDK IDE提供了強(qiáng)大的調(diào)試功能,包括單步執(zhí)行、斷點(diǎn)調(diào)試、變量監(jiān)視等。它支持多種調(diào)試接口,如JTAG、SWD等,以便與不同的目標(biāo)硬件進(jìn)行連接和調(diào)試。

豐富的仿真器支持:Keil MDK IDE支持多種仿真器,如Keil ULINK系列、J-Link等。這些仿真器能夠與目標(biāo)硬件進(jìn)行連接,實(shí)現(xiàn)實(shí)時(shí)調(diào)試和仿真。

Keil MDK IDE是一款功能強(qiáng)大、易于使用的嵌入式系統(tǒng)開發(fā)工具,為開發(fā)者提供了一站式的解決方案,能夠大大簡(jiǎn)化開發(fā)流程,提高開發(fā)效率。

9f2b4676-6d57-11ee-939d-92fbcf53809c.png

6.2 調(diào)試器和量產(chǎn)工具(離線/批量Flash編程器)

MCU的調(diào)試器和量產(chǎn)工具的作用主要有以下幾個(gè)方面:

調(diào)試器:MCU的調(diào)試器是一種硬件設(shè)備,用于與MCU進(jìn)行通信,讀取和寫入MCU內(nèi)部的寄存器、內(nèi)存等信息,以便在開發(fā)過(guò)程中進(jìn)行調(diào)試和測(cè)試。調(diào)試器可以幫助開發(fā)者快速定位程序中的問(wèn)題,如程序崩潰、死循環(huán)、數(shù)據(jù)錯(cuò)誤等。

2. 量產(chǎn)工具:MCU的量產(chǎn)工具是一種軟件工具,用于將開發(fā)完成的MCU程序燒錄到芯片中,以便進(jìn)行批量生產(chǎn)。量產(chǎn)工具可以自動(dòng)化地進(jìn)行燒錄、測(cè)試、校準(zhǔn)等操作,提高生產(chǎn)效率和產(chǎn)品質(zhì)量。

3. 調(diào)試功能:調(diào)試器和量產(chǎn)工具通常會(huì)提供一些調(diào)試功能,如單步執(zhí)行、斷點(diǎn)調(diào)試、變量監(jiān)視等,以幫助開發(fā)者更好地調(diào)試和測(cè)試MCU程序。

4. 支持多種接口和協(xié)議:調(diào)試器和量產(chǎn)工具通常支持多種接口和協(xié)議,如JTAG、SWD、ISP等,以適應(yīng)不同的MCU芯片和開發(fā)環(huán)境。

5. 支持多種操作系統(tǒng):調(diào)試器和量產(chǎn)工具通常支持多種操作系統(tǒng),如Windows、Linux、Mac OS等,以適應(yīng)不同的開發(fā)環(huán)境和開發(fā)者需求。

總的來(lái)說(shuō),MCU的調(diào)試器和量產(chǎn)工具的作用是幫助開發(fā)者進(jìn)行MCU程序的調(diào)試和測(cè)試,以及進(jìn)行批量生產(chǎn)。調(diào)試器和量產(chǎn)工具可以提供多種功能和支持多種接口和協(xié)議,以適應(yīng)不同的MCU芯片和開發(fā)環(huán)境。

6.3 圖形化配置工具

9f765e7c-6d57-11ee-939d-92fbcf53809c.png

6.3.1 SDK配置工具

SDK配置和代碼生成工具的作用主要有以下幾個(gè)方面:

簡(jiǎn)化配置過(guò)程:SDK配置工具可以提供一個(gè)可視化的界面,讓開發(fā)者通過(guò)簡(jiǎn)單的操作完成SDK的配置,避免繁瑣的手動(dòng)配置過(guò)程。

2. 提高配置準(zhǔn)確性:配置工具可以提供合理的默認(rèn)配置選項(xiàng),并進(jìn)行參數(shù)校驗(yàn),避免因配置錯(cuò)誤而導(dǎo)致的問(wèn)題。

3. 快速生成代碼:代碼生成工具可以根據(jù)配置選項(xiàng)自動(dòng)生成SDK相關(guān)的代碼,減少手動(dòng)編寫代碼的工作量,提高開發(fā)效率。

4. 規(guī)范化代碼結(jié)構(gòu):代碼生成工具可以根據(jù)一定的規(guī)范和模板生成代碼,保證代碼結(jié)構(gòu)的一致性和可維護(hù)性。

5. 提供示例代碼:配置和代碼生成工具可以提供一些示例代碼,幫助開發(fā)者快速上手和理解SDK的使用方式。

6. 支持版本管理:配置和代碼生成工具可以支持SDK的版本管理,方便開發(fā)者在不同版本之間切換和管理。

總的來(lái)說(shuō),SDK配置和代碼生成工具的作用是簡(jiǎn)化配置過(guò)程、提高配置準(zhǔn)確性、快速生成代碼、規(guī)范化代碼結(jié)構(gòu)、提供示例代碼和支持版本管理,從而提高開發(fā)效率、減少錯(cuò)誤和提升代碼質(zhì)量。

6.3.2 MCAL配置工具

MCAL(Microcontroller Abstraction Layer)配置工具是用于配置和生成MCAL驅(qū)動(dòng)程序的工具。它的工作原理主要包括以下幾個(gè)步驟:

9f8f1084-6d57-11ee-939d-92fbcf53809c.png

配置參數(shù)選擇:用戶通過(guò)配置工具選擇需要使用的MCAL驅(qū)動(dòng)程序和相關(guān)參數(shù)??梢愿鶕?jù)具體需求選擇不同的驅(qū)動(dòng)程序和配置選項(xiàng)。

2. 參數(shù)設(shè)置:配置工具提供了用戶界面,用戶可以通過(guò)界面設(shè)置各個(gè)驅(qū)動(dòng)程序的參數(shù),如時(shí)鐘頻率、引腳配置、中斷優(yōu)先級(jí)等。

3. 參數(shù)校驗(yàn):配置工具會(huì)對(duì)用戶設(shè)置的參數(shù)進(jìn)行校驗(yàn),確保參數(shù)的合法性和正確性。例如,檢查時(shí)鐘頻率是否在允許范圍內(nèi),檢查引腳配置是否沖突等。

4. 代碼生成:配置工具根據(jù)用戶的配置參數(shù),生成相應(yīng)的MCAL驅(qū)動(dòng)程序的代碼。生成的代碼包括初始化函數(shù)、配置函數(shù)、中斷處理函數(shù)等。

5. 代碼導(dǎo)出:生成的代碼可以導(dǎo)出為可執(zhí)行文件或者源代碼文件,供用戶在實(shí)際項(xiàng)目中使用。

MCAL配置工具的主要功能包括:

驅(qū)動(dòng)程序選擇和配置:用戶可以選擇需要使用的MCAL驅(qū)動(dòng)程序,并設(shè)置相應(yīng)的參數(shù),以滿足具體的需求。

2. 參數(shù)校驗(yàn)和合規(guī)性檢查:配置工具可以對(duì)用戶設(shè)置的參數(shù)進(jìn)行校驗(yàn),確保參數(shù)的合法性和正確性,避免配置錯(cuò)誤導(dǎo)致的問(wèn)題。

3. 代碼生成和導(dǎo)出:配置工具可以根據(jù)用戶的配置參數(shù),生成相應(yīng)的MCAL驅(qū)動(dòng)程序的代碼,并將代碼導(dǎo)出為可執(zhí)行文件或源代碼文件。

4. 用戶界面和交互:配置工具通常提供友好的用戶界面,使用戶能夠方便地進(jìn)行參數(shù)設(shè)置和配置,提高配置效率和準(zhǔn)確性。

總之,MCAL配置工具通過(guò)用戶界面和參數(shù)設(shè)置,生成符合用戶需求的MCAL驅(qū)動(dòng)程序的代碼,并提供參數(shù)校驗(yàn)和合規(guī)性檢查等功能,以幫助用戶更快速、準(zhǔn)確地配置和生成MCAL驅(qū)動(dòng)程序。

6.3.3 中間件軟件配置工具

中間件軟件包含的各種總線通信協(xié)議、標(biāo)定和中斷協(xié)議等都有很多配置參數(shù),需要生成很多配置結(jié)構(gòu)體,通過(guò)圖形化配置工具的配置向?qū)Ш蛥?shù)檢查、參數(shù)功能提示及配置代碼生成等功能可以幫助客戶高效準(zhǔn)確地使用這些中間件軟件。

中間件軟件的配置工具工作原理與上面介紹的SDK和MCAL配置工具類似,此處不再贅述。

如下是一個(gè)LIN stack的配置工具的實(shí)現(xiàn)架構(gòu),配置工具(Processor Expert)通過(guò)解析LIN描述文件(LDF)獲取應(yīng)用程序?qū)IN通信的總線網(wǎng)絡(luò)和信號(hào)的配置信息,然后生成生成當(dāng)前LIN節(jié)點(diǎn)的配置數(shù)據(jù)和LIN stack的配置數(shù)據(jù),以C文件中的配置結(jié)構(gòu)體和頭文件中的宏定義的形式產(chǎn)生配置結(jié)果,最終與LIN stack和LIN driver一起編譯鏈接生成滿足應(yīng)用需求能夠在目標(biāo)MCU上運(yùn)行的LIN協(xié)議。

9faa2e46-6d57-11ee-939d-92fbcf53809c.png

6.4 電機(jī)調(diào)試和參數(shù)標(biāo)定可視化工具

通常為了幫助用戶更方便、快速地進(jìn)行電機(jī)的調(diào)試和標(biāo)定工作,車規(guī)MCU廠商通過(guò)電機(jī)調(diào)試和參數(shù)標(biāo)定可視化工具提供以下功能:

9fb727e0-6d57-11ee-939d-92fbcf53809c.png

實(shí)時(shí)數(shù)據(jù)監(jiān)控:可以實(shí)時(shí)監(jiān)控電機(jī)的運(yùn)行狀態(tài),包括電流、轉(zhuǎn)速、溫度等參數(shù),并以圖表或曲線的形式展示。

2. 參數(shù)設(shè)置:可以通過(guò)工具設(shè)置電機(jī)的各種參數(shù),如電流限制、速度限制、加速度限制等,以便進(jìn)行調(diào)試和標(biāo)定。

3. 數(shù)據(jù)記錄和導(dǎo)出:可以記錄電機(jī)運(yùn)行過(guò)程中的數(shù)據(jù),并將數(shù)據(jù)導(dǎo)出為文件,以便后續(xù)分析和處理。

4. 參數(shù)標(biāo)定:可以通過(guò)工具對(duì)電機(jī)的各種參數(shù)進(jìn)行標(biāo)定,如電機(jī)的電阻、電感、轉(zhuǎn)矩常數(shù)等,以提高電機(jī)的控制性能。

5. 故障診斷:可以通過(guò)工具對(duì)電機(jī)運(yùn)行過(guò)程中的故障進(jìn)行診斷,如過(guò)流、過(guò)溫、過(guò)載等,以便及時(shí)采取措施進(jìn)行修復(fù)。

6. 可視化界面:工具通常具有友好的可視化界面,使用戶能夠直觀地查看和操作電機(jī)的調(diào)試和標(biāo)定過(guò)程。

總結(jié)

車規(guī)MCU的軟件開發(fā)生態(tài)是其應(yīng)用功能軟件開發(fā)的基礎(chǔ)。

一方面,隨著半導(dǎo)體摩爾定理的發(fā)展,車規(guī)MCU芯片的規(guī)模進(jìn)入到55nm及更先進(jìn)工藝制程后,CPU內(nèi)核數(shù)量和外設(shè)種類及數(shù)量集成越來(lái)越多,片上存儲(chǔ)器越來(lái)越大,車規(guī)MCU的處理性能和外設(shè)功能越來(lái)越復(fù)雜/強(qiáng)大,芯片的數(shù)據(jù)手冊(cè)和參考手冊(cè)長(zhǎng)達(dá)數(shù)千頁(yè),如果還按照十年前的開發(fā)模式,每個(gè)客戶自己工程師通過(guò)編程C代碼讀寫寄存器的方式去開發(fā)新一代車規(guī)MCU的底層驅(qū)動(dòng)程序,將十分費(fèi)時(shí)費(fèi)力,且代碼無(wú)法實(shí)現(xiàn)跨硬件平臺(tái)開發(fā),實(shí)現(xiàn)復(fù)用;

另一方面,伴隨新一代汽車電子電器架構(gòu)(EEA)的落地和逐漸普及,汽車電子應(yīng)用軟件變得越來(lái)越復(fù)雜,各類通信總線的協(xié)議棧、標(biāo)定和診斷以及電機(jī)控制FOC這類與硬件不相關(guān)的通用算法和軟性協(xié)議棧構(gòu)成的中間件軟件(Middleware)使用也變得十分廣泛,提高這些中間件軟件的復(fù)用,可以大大縮短項(xiàng)目開發(fā)周期,并保證代碼質(zhì)量。

本文介紹的車規(guī)MCU的軟件開發(fā)生態(tài)涉及的AUTOSAR軟件、底層驅(qū)動(dòng)、中間件協(xié)議棧軟件、配置工具,編譯/鏈接/調(diào)試工具鏈和集成開發(fā)環(huán)境(IDE)眾多,并非所有軟件都是車規(guī)MCU廠商自研,他們通常會(huì)與行業(yè)里面的第三方專業(yè)合作伙伴合作,一起來(lái)為客戶提供完整的車規(guī)MCU軟件開發(fā)生態(tài):

車規(guī)MCU軟件生態(tài)分類 驅(qū)動(dòng)/協(xié)議棧/工具鏈 是否車規(guī)MCU廠商提供 第三方合作伙伴(Vendor)
AUTOSAR軟件 基礎(chǔ)軟件
(BSW)
微控制器抽象層驅(qū)動(dòng)(MCAL) N/A
服務(wù)層軟件(OSCAN/LIN stack等) × Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
ECU抽象層軟件 × Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
專用外設(shè)復(fù)雜驅(qū)動(dòng)(CDD) N/A
運(yùn)行時(shí)環(huán)境(RTE) × Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
應(yīng)用軟件(ASW) × Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
功能庫(kù)(Library) × Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
Non-AUTOSAR軟件
(SDK)
外設(shè)驅(qū)動(dòng) 底層驅(qū)動(dòng)(LLD) N/A
硬件抽象層(HAL/PAL) N/A
中間件軟件
(Middleware)
CAN協(xié)議棧 √(optional) Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
LIN協(xié)議棧 √(optional) Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
UDS協(xié)議棧 ×/√(Ref.SW) Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
XCP協(xié)議棧 ×/√(Ref.SW) Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
TCP/IP協(xié)議棧 √(LwIP) Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
AVB協(xié)議棧 √(optional) Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
TSN協(xié)議棧 √(optional) Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
電機(jī)驅(qū)動(dòng)庫(kù) N/A
啟動(dòng)文件(Start-Up code)和鏈接文件(Linker file) N/A
操作系統(tǒng)(OS) AUTOSAR OS × Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
Non-AUTOSAR OS FreeRTOS √(porting) N/A
其他RTOS √(porting) QNX, Keil RTX, GHS Integrity OS
啟動(dòng)及信息安全軟件(Security SW) 安全啟動(dòng)固件(Secure Boot Firmware) N/A
硬件安全模塊固件(HSM Firmware) ×/√(Ref.SW) Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
啟動(dòng)加載程序(bootloader) ×/√(Ref.SW) Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
遠(yuǎn)程固件更新程序(FOTA) ×/√(Ref.SW) Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
功能安全軟件
(FuSa SW)
功能安全外設(shè)驅(qū)動(dòng)(SPD) N/A
功能安全庫(kù)(Safety Library) √(optional) Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
軟件開發(fā)工具鏈(Toolchain) 集成開發(fā)環(huán)境
(IDE)
GNU based Eclipse/VSCode IDE N/A
IAR ×(提供patch) IAR
Keil MDK ×(提供patch) ARM/Keil
GHS MULTI ×(提供patch) Greenhill
調(diào)試器和量產(chǎn)工具(離線/批量Flash編程器) ×(提供Flash算法) Segger, IAR, Keil, Greenhill
圖形化配置和代碼自動(dòng)生成工具
(Config Tool)
SDK配置工具 ×/√ N/A
MCAL配置工具 ×/√ Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
中間件軟件配置工具 ×/√ Vector, ETAS, EB, 普華、東軟、恒潤(rùn)等
電機(jī)調(diào)試和參數(shù)標(biāo)定可視化工具 √(optional) Vector, ETAS,恒潤(rùn)等

如下是據(jù)我所知目前國(guó)產(chǎn)車規(guī)MCU的頭部公司 - 蘇州云途半導(dǎo)體的YTM32系列32位車規(guī)MCU芯片的軟件開發(fā)生態(tài)建設(shè)情況供大家參考(其軟件生態(tài)是做得最為完善的公司之一,強(qiáng)烈建議有車規(guī)MCU國(guó)產(chǎn)替代需求的讀者聯(lián)系原廠技術(shù)支持和銷售,詳細(xì)了解評(píng)估一下,尤其是其圖形化配置工具YCT,整合了云途SDK、MCAL及很多中間件軟件的配置、參數(shù)檢查和驅(qū)動(dòng)代碼及應(yīng)用工程自動(dòng)生成功能,使用十分方便高效):

    車規(guī)MCU軟件生態(tài)分類 驅(qū)動(dòng)/協(xié)議棧/工具鏈 云途自研 第三方合作伙伴(Vendor)提供
    AUTOSAR軟件 基礎(chǔ)軟件
    (BSW)
    微控制器抽象層驅(qū)動(dòng)(MCAL) N/A
    服務(wù)層軟件(OSCAN/LIN stack等) × Vector, ETAS, 普華、東軟、恒潤(rùn)等
    ECU抽象層軟件 × Vector, ETAS, 普華、東軟、恒潤(rùn)等
    專用外設(shè)復(fù)雜驅(qū)動(dòng)(CDD) N/A
    運(yùn)行時(shí)環(huán)境(RTE) × Vector, ETAS, 普華、東軟、恒潤(rùn)等
    應(yīng)用軟件(ASW) × Vector, ETAS, 普華、東軟、恒潤(rùn)等
    功能庫(kù)(Library) × Vector, ETAS, 普華、東軟、恒潤(rùn)等
    Non-AUTOSAR軟件
    (SDK)
    外設(shè)驅(qū)動(dòng) 底層驅(qū)動(dòng)(LLD) N/A
    硬件抽象層(HAL/PAL) N/A
    中間件軟件
    (Middleware)
    CAN協(xié)議棧 √(Ref.SW) Vector, ETAS, 普華、東軟、恒潤(rùn)等
    LIN協(xié)議棧 √(Ref.SW) Vector, ETAS, 普華、東軟、恒潤(rùn)等
    UDS協(xié)議棧 √(Ref.SW) Vector, ETAS, 普華、東軟、恒潤(rùn)等
    XCP協(xié)議棧 √(Ref.SW) Vector, ETAS, 普華、東軟、恒潤(rùn)等
    TCP/IP協(xié)議棧 √(LwIP) Vector, ETAS, 普華、東軟、恒潤(rùn)等
    AVB協(xié)議棧 √(optional) Vector, ETAS, 普華、東軟、恒潤(rùn)等
    TSN協(xié)議棧 √(optional) Vector, ETAS, 普華、東軟、恒潤(rùn)等
    電機(jī)驅(qū)動(dòng)庫(kù) N/A
    啟動(dòng)文件(Start-Up code)和鏈接文件(Linker file) √(GCC/IAR/Keil) N/A
    操作系統(tǒng)(OS) AUTOSAR OS × Vector, ETAS, 普華、東軟、恒潤(rùn)等
    Non-AUTOSAR OS FreeRTOS √(porting) 聲明:本文內(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)投訴
    • 芯片
      +關(guān)注

      關(guān)注

      455

      文章

      50714

      瀏覽量

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

      關(guān)注

      146

      文章

      17123

      瀏覽量

      350976
    • AUTOSAR
      +關(guān)注

      關(guān)注

      10

      文章

      360

      瀏覽量

      21552
    • ecu
      ecu
      +關(guān)注

      關(guān)注

      14

      文章

      886

      瀏覽量

      54482
    • 汽車軟件
      +關(guān)注

      關(guān)注

      0

      文章

      98

      瀏覽量

      3178

    原文標(biāo)題:漫談車規(guī)MCU之汽車軟件生態(tài)全解析

    文章出處:【微信號(hào):汽車電子expert成長(zhǎng)之路,微信公眾號(hào):汽車電子expert成長(zhǎng)之路】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

    收藏 人收藏

      評(píng)論

      相關(guān)推薦

      ECU/MCU軟件開發(fā)

      汽車電子技術(shù)——ECU/MCU軟件開發(fā)1. ECU/MCU軟件開發(fā)知識(shí)儲(chǔ)備1.1 ECU/MCU相關(guān)基礎(chǔ)知識(shí)1.2 C語(yǔ)言編程知識(shí)1.3 外
      發(fā)表于 09-10 08:13

      RISC-V開發(fā)生態(tài)MCU芯片的相關(guān)資料推薦

      近兩年,伴隨著AIoT的蓬勃發(fā)展、錯(cuò)綜復(fù)雜的政經(jīng)環(huán)境,開源RISC-V指令集架構(gòu)受到廣泛關(guān)注,生態(tài)日益完善,但其應(yīng)用發(fā)展之路還面臨諸多挑戰(zhàn)。本期專題圍繞RISC-V開發(fā)生態(tài)MCU 芯片...
      發(fā)表于 02-15 07:25

      安全軟件開發(fā)生命周期與業(yè)務(wù)安全

      安全軟件開發(fā)生命周期與業(yè)務(wù)安全
      發(fā)表于 09-08 14:11 ?11次下載
      安全<b class='flag-5'>軟件開發(fā)生</b>命周期與業(yè)務(wù)安全

      解析規(guī)級(jí)MCU的技術(shù)難點(diǎn)

      近日,四維圖新旗下全資子公司AutoChips杰發(fā)科技對(duì)外宣布,其規(guī)級(jí)MCU產(chǎn)品線又添重量級(jí)新成員——AC7801X,這是杰發(fā)科技繼2018年底量產(chǎn)的國(guó)內(nèi)首顆
      發(fā)表于 02-16 09:34 ?1.1w次閱讀

      [IC]淺談嵌入式MCU軟件開發(fā)之中斷優(yōu)先級(jí)與中斷嵌套

      [IC]淺談嵌入式MCU軟件開發(fā)之中斷優(yōu)先級(jí)與中斷嵌套
      發(fā)表于 12-05 10:21 ?11次下載
      [IC]淺談嵌入式<b class='flag-5'>MCU</b><b class='flag-5'>軟件開發(fā)</b>之中斷優(yōu)先級(jí)與中斷嵌套

      規(guī)MCU的發(fā)展之道:建造完整生態(tài)圈是關(guān)鍵

      建造規(guī)MCU生態(tài)圈是滿足汽車領(lǐng)域發(fā)展新需求的關(guān)鍵 兩大主要因素顯著加強(qiáng)建造規(guī)
      的頭像 發(fā)表于 06-17 14:23 ?948次閱讀

      國(guó)民技術(shù)規(guī)MCU型號(hào)應(yīng)用與參數(shù)

      國(guó)民技術(shù)規(guī)MCU型號(hào)應(yīng)用與參數(shù)
      發(fā)表于 11-30 14:17 ?1657次閱讀
      國(guó)民技術(shù)<b class='flag-5'>車</b><b class='flag-5'>規(guī)</b><b class='flag-5'>MCU</b>型號(hào)應(yīng)用與參數(shù)

      200元京東卡,邀您成為軟件開發(fā)生產(chǎn)線 CodeArts體驗(yàn)官!

      華為云 軟件開發(fā)生產(chǎn)線CodeArts 是集華為研發(fā)實(shí)踐、前沿研發(fā)理念、先進(jìn)研發(fā)工具為一體的研發(fā)云平臺(tái)。 內(nèi)置華為多年研發(fā)最佳實(shí)踐,面向開發(fā)者提供研發(fā)工具服務(wù),讓軟件開發(fā) 簡(jiǎn)單高效。 - 軟件
      的頭像 發(fā)表于 04-19 00:45 ?623次閱讀
      200元京東卡,邀您成為<b class='flag-5'>軟件開發(fā)生</b>產(chǎn)線 CodeArts體驗(yàn)官!

      云途規(guī)MCU軟件開發(fā)環(huán)境搭建及使用詳解

      MCU的嵌入式軟件開發(fā)領(lǐng)域,過(guò)去很長(zhǎng)一段時(shí)間都是以基于Eclipse框架開發(fā)的IDE為主,典型此類IDE包括:NXP的CodeWarrior 10.x/11.xIDE, S32DS IDE
      的頭像 發(fā)表于 08-22 10:12 ?7097次閱讀
      云途<b class='flag-5'>車</b><b class='flag-5'>規(guī)</b><b class='flag-5'>MCU</b><b class='flag-5'>軟件開發(fā)</b>環(huán)境搭建及使用詳解

      軟件開發(fā)必讀!華為云軟件開發(fā)生產(chǎn)線 CodeArts 深度體驗(yàn)指南

      7 月 7 日-9 日,隨著華為開發(fā)者大會(huì) 2023 的到來(lái),華為云軟件開發(fā)生產(chǎn)線 CodeArts 也走進(jìn)了很多開發(fā)者的視野。 開發(fā)者都比較好奇,什么是華為云 CodeArts?Co
      的頭像 發(fā)表于 08-25 13:43 ?1230次閱讀
      <b class='flag-5'>軟件開發(fā)</b>必讀!華為云<b class='flag-5'>軟件開發(fā)生</b>產(chǎn)線 CodeArts 深度體驗(yàn)指南

      如何有效應(yīng)對(duì)MCU測(cè)試驗(yàn)證開發(fā)中的難點(diǎn) — 規(guī)MCU適用

      解決方案 | 如何有效應(yīng)對(duì)MCU測(cè)試驗(yàn)證開發(fā)中的難點(diǎn) — 規(guī)MCU適用
      的頭像 發(fā)表于 10-24 15:18 ?1062次閱讀
      如何有效應(yīng)對(duì)<b class='flag-5'>MCU</b>測(cè)試驗(yàn)證<b class='flag-5'>開發(fā)</b>中的難點(diǎn) — <b class='flag-5'>車</b><b class='flag-5'>規(guī)</b><b class='flag-5'>MCU</b>適用

      云途規(guī)MCU VSCode IDE工程使用教程

      作者按:隨著越來(lái)越多云途規(guī)MCU芯片型號(hào)的量產(chǎn),越來(lái)越多的客戶開始使用云途的規(guī)MCU應(yīng)用
      的頭像 發(fā)表于 09-24 10:51 ?2509次閱讀
      云途<b class='flag-5'>車</b><b class='flag-5'>規(guī)</b><b class='flag-5'>MCU</b> VSCode IDE工程使用教程

      規(guī)MCU軟件開發(fā)套件

      費(fèi)用。 對(duì)于項(xiàng)目預(yù)算有限、非平臺(tái)化的小項(xiàng)目,非AUTOSAR(Non-AUTOSAR)軟件開發(fā)是一個(gè)不錯(cuò)的選擇。雖然很多大客戶有自
      的頭像 發(fā)表于 10-27 16:05 ?1675次閱讀
      <b class='flag-5'>車</b><b class='flag-5'>規(guī)</b><b class='flag-5'>MCU</b>的<b class='flag-5'>軟件開發(fā)</b>套件

      規(guī)MCU的功能安全庫(kù)是什么

      監(jiān)測(cè)和控制系統(tǒng)的運(yùn)行,以確保系統(tǒng)在發(fā)生故障時(shí)能夠安全地進(jìn)入故障狀態(tài)或安全地恢復(fù)正常工作。 規(guī)MCU的功能安全庫(kù)的核心功能包括: 故障檢測(cè)和診斷:功能安全庫(kù)可以監(jiān)測(cè)系統(tǒng)的各個(gè)部分是否正
      的頭像 發(fā)表于 10-27 17:45 ?1810次閱讀
      <b class='flag-5'>車</b><b class='flag-5'>規(guī)</b><b class='flag-5'>MCU</b>的功能安全庫(kù)是什么

      紫光同芯與TASKING攜手,共創(chuàng)規(guī)MCU領(lǐng)域新篇章

      在智能汽車蓬勃發(fā)展的今天,芯片與軟件開發(fā)工具鏈的深度融合成為推動(dòng)產(chǎn)業(yè)進(jìn)步的關(guān)鍵。紫光同芯微電子有限公司(以下簡(jiǎn)稱紫光同芯)與全球知名的嵌入式軟件開發(fā)工具提供商塔斯金信息技術(shù)(上海)有限公司(以下簡(jiǎn)稱
      的頭像 發(fā)表于 06-24 17:48 ?624次閱讀
      RM新时代网站-首页
      <ruby id="oku1v"></ruby><ruby id="oku1v"></ruby>