沈陽(yáng)網(wǎng)站訂制公眾號(hào)軟文推廣
本文檔說(shuō)明了 ModusToolbox 軟體環(huán)境的 4 個(gè)層面,該環(huán)境為 CapSense 設(shè)備和生態(tài)系統(tǒng)提供支援。本文是 Infineon PSoC 4 CapSense ModusToolbox IDE-系統(tǒng)介紹的延伸篇 (Infineon PSoC 4 CapSense ModusToolbox IDE -系統(tǒng)介紹篇 - 大大通(簡(jiǎn)體站))。
什么是ModusToolbox軟體?
本章節(jié)提供 ModusToolbox? 生態(tài)系中使用的各種術(shù)語(yǔ)和定義的清單。 ModusToolbox? 軟體是一種現(xiàn)代化的可擴(kuò)展開(kāi)發(fā)環(huán)境,支援各種英飛凌微控制器裝置。它提供了一套靈活的工具和多樣化、高品質(zhì)的以應(yīng)用程式為中心的軟體集合。其中包括配置工具、低階驅(qū)動(dòng)程式、庫(kù)和作業(yè)系統(tǒng)支持,其中大多數(shù)與 Linux、macOS 和 Windows 托管環(huán)境相容。下圖顯示了 ModusToolbox? 軟體的可用內(nèi)容的俯視圖。這不是一個(gè)完整的清單, 它僅僅傳達(dá)了您可以使用多種資源??的使用方式.
ModusToolbox? 軟體不包含專有工具或自訂建置環(huán)境。這意味著您可以選擇編譯器、IDE、RTOS 和生態(tài)系統(tǒng),而不會(huì)影響可用性或?qū)ξ覀儤I(yè)界領(lǐng)先的 CAPSENSE? 和各種其他功能的存取。 ModusToolbox? 軟體的另一個(gè)重要方面是每個(gè)產(chǎn)品都有版本。這確保了每個(gè)產(chǎn)品都可以持續(xù)更新,但它還允許您針對(duì)特定環(huán)境鎖定特定版本的工具。有關(guān)更多詳細(xì)信息,請(qǐng)參閱產(chǎn)品版本控制。
層面 1.?運(yùn)行時(shí)軟體 (GitHub)
ModusToolbox? 工具還包括大量 GitHub 托管的儲(chǔ)存庫(kù),其中包括程式碼范例、BSP 以及中間件和應(yīng)用程式支援。我們按季度“訓(xùn)練模型”計(jì)畫(huà)發(fā)布運(yùn)行時(shí)軟體,存取新的或更新的料庫(kù), 不需要您手動(dòng)更新 ModusToolbox? 的安裝。新專案從我們眾多程式碼范例范本之一開(kāi)始,這些范本展示了從簡(jiǎn)單的外圍設(shè)備演示到完整的應(yīng)用程式解決方案的所有內(nèi)容。每個(gè)英飛凌套件均由全面的BSP 實(shí)施支持,可簡(jiǎn)化電路板的軟體接口,使應(yīng)用程式能夠立即重新定位到新硬件,并且可以輕松擴(kuò)展以支持您的定制硬件,而無(wú)需常見(jiàn)的移植和集成麻煩。廣泛的中間件集合包括不斷增長(zhǎng)的感測(cè)器界面、顯示支援和以連接為中心的庫(kù)。 ModusToolbox? 安裝程式也方便地捆綁了您利用英飛凌關(guān)鍵技術(shù)重點(diǎn)領(lǐng)域所需的所有必要執(zhí)行時(shí)間元件的軟體包。
層面 2.?程式碼范例
所有目前的 ModusToolbox? 范例都可以透過(guò) GitHub 程式碼范例頁(yè)面找到。在那里您可以找到 PSOC? 6 MCU、PSOC? 4 裝置等范例的連結(jié)。對(duì)于大多數(shù)程式碼范例,您可以使用從范本建立應(yīng)用程式來(lái)建立應(yīng)用程式并直接與 ModusToolbox? 工具一起使用。對(duì)于某些范例,您需要按照程式碼范例儲(chǔ)存資料庫(kù)中的說(shuō)明來(lái)實(shí)例化該范例。說(shuō)明根據(jù)應(yīng)用程式的性質(zhì)和目標(biāo)生態(tài)系統(tǒng)而有所不同。在 ModusToolbox? 建置基礎(chǔ)架構(gòu)中,任何需要函式庫(kù)的范例應(yīng)用程式都會(huì)自動(dòng)下載該程式庫(kù)。您可以控制正在下載的資料庫(kù)版本及其在磁盤(pán)機(jī)上的位置,以及它們是共享的還是本地的應(yīng)用程式。您可以參閱庫(kù)管理器使用者指南以了解更多詳細(xì)資訊。
層面?3.?資料庫(kù)?(middleware)
除了程式碼范例之外,ModusToolbox? 還有許多其他部分作為資料庫(kù)提供。這些資料庫(kù)對(duì)于充分利用各種設(shè)備的各種功能至關(guān)重要。當(dāng)您建立 ModusToolbox? 應(yīng)用程式時(shí),系統(tǒng)會(huì)下載您的應(yīng)用程式所需的所有程式庫(kù)。請(qǐng)參閱 ModusToolbox? 建置系統(tǒng)章節(jié)以了解這一切是如何運(yùn)作的。所有目前的 ModusToolbox? 資料庫(kù)都可以透過(guò) GitHub ModusToolbox? 軟體頁(yè)面找到。 ModusToolbox? 應(yīng)用程式可以使用基于活動(dòng) BSP 的不同程式庫(kù)。一般來(lái)說(shuō),圖書(shū)館有幾類。每個(gè)資料庫(kù)都在自己的儲(chǔ)存的資料庫(kù)中提供,并附有完整的文件。
- 常見(jiàn)資料庫(kù)類型:
大多數(shù) BSP 都有以下某種形式的函式庫(kù):
- 抽象層-這通常是RTOS 抽象層。
- 基礎(chǔ)庫(kù)-這些是核心庫(kù),例如core-lib 和core-make。
- 主機(jī)板實(shí)用程式 – 這些是特定于主機(jī)板的實(shí)用程序,例如顯示支援或 BTSpy。
- MCU 中間件-包括MCU 特定的函式庫(kù),例如freeRTOS 或Clib 支援。
- BSP特定的基礎(chǔ)函式庫(kù):
BSP 特定的函式庫(kù)包括 mtb-hal、mtb-pdl 和 Recipe-make。其中一些特定設(shè)備歸類為以下類別:
- cat1/cat1a = PSOC? 6 MCUs (mtb-hal-cat1, recipe-make-cat1a, etc.)
- cat2 = PSOC? 4 devices and XMC? Industrial MCUs (mtb-hal-cat2, mtb-pdl-cat2)
- 設(shè)備資料庫(kù) (device-db)
device-db 由一組裝置組成,稱為行銷部件號(hào) (MPN),分布在一組分層目錄中。每個(gè) MPN 包含一個(gè)描述裝置基本特征的基本視圖以及由使用 device-db 的應(yīng)用程式定義的附加視圖。最新版本的 device-db 包含在新應(yīng)用程式中,并且被鎖定的device-db 版本僅包含當(dāng)時(shí)可用的MPN。如果您以后想要將 MPN 更新到設(shè)備資料庫(kù)中不可用的較新設(shè)備,則必須使用庫(kù)管理器進(jìn)行更新。 device-db 取決于應(yīng)用程式的 PDL。在某些情況下,當(dāng)您需要更新 device-db 時(shí),可能還需要更新 PDL。我們建議盡可能少更新設(shè)備資料庫(kù)所需的 PDL 版本,因?yàn)?PDL 可能包含比您的應(yīng)用程式所需的更多變更。有關(guān)詳細(xì)信息,請(qǐng)參閱 device-db README.md 和 RELEASE.md 檔案。
層面?4.?主板特定封裝?(BSPs)
BSP 是 ModusToolbox? 軟體的核心功能。 BSP 指定了應(yīng)用程式的幾個(gè)關(guān)鍵項(xiàng)目,包括:
- 設(shè)備的硬體設(shè)定檔(例如design.modus)
- 裝置的啟動(dòng)程式碼和連結(jié)器文件
- 支援套件所需的其他函式庫(kù)
BSP 與我們的開(kāi)發(fā)/評(píng)估套件保持一致;它們提供基本設(shè)備功能的檔案。 BSP 通常有一個(gè) design.modus 文件,用于配置時(shí)鐘和其他主板特定功能。此檔案由 ModusToolbox? 配置器使用。 BSP 還包括板上裝置所需的裝置支援代碼。您可以修改配置以適合您的應(yīng)用程式。
每個(gè) BSP 都有自己的文件。提供的資訊各不相同,但通常包括以下一項(xiàng)或多項(xiàng):
- BSP 的 API 參考
- BSP 概述
- 指向相關(guān)套件頁(yè)面的鏈接,其中包含套件特定文檔
BSP 特定于主板跟設(shè)備。對(duì)于自訂開(kāi)發(fā),您可以為您的裝置建立或修改 BSP。
產(chǎn)品支援平臺(tái)
- PSOC? 4 MCU (See AN79953: Getting Started with PSOC? 4 for the supported PSOC? 4 devices.)
- PSOC? 6 MCU ? PSOC? Control MCU
縮寫(xiě)及定義
- Board Support Package (BSP)
您可以自訂的資料庫(kù),它添加了對(duì)建置和啟動(dòng)目標(biāo)板及相關(guān)設(shè)備的支援。這包括原始程式碼、標(biāo)頭、資源、連結(jié)器腳本、啟動(dòng)程式碼,并且它們?yōu)?GPIO 等資源定義通用別名以幫助實(shí)現(xiàn)可移植性。所有 ModusToolbox? 應(yīng)用程式都需要至少一個(gè) BSP。
- BSP 配置器
一種特定類型的配置器,用于配置特定于 BSP 的系統(tǒng)方面。由于 BSP 包含基礎(chǔ)微控制器,因此設(shè)備配置器是使用 BSP 配置器。
- 程式碼范例
這是應(yīng)用程式的起點(diǎn)/模型。它通常是 Git 儲(chǔ)存庫(kù),但也可以是另一個(gè)目錄。
- 配置器
GUI 和/或 CLI 工具可簡(jiǎn)化運(yùn)行時(shí)資產(chǎn)(芯片、板或中介軟體)的配置。配置器有多種類型,它們通常會(huì)建立成為目標(biāo)應(yīng)用程式一部分的程式碼或資料結(jié)構(gòu)。
- 設(shè)備配置器
BSP 配置器,用于配置主目標(biāo)設(shè)備上的硬體。它允許配置設(shè)備 GPIO、周邊、時(shí)脈、DMA 等。
- 設(shè)備資料庫(kù) (device-db)
包含一組可供各種工具用于建立應(yīng)用程式和 BSP 的設(shè)備
- 驅(qū)動(dòng)器
啟用特定硬體周邊的低階韌體
- 硬體抽象層 (HAL)
一組韌體驅(qū)動(dòng)程序,提供與大多數(shù)英飛凌設(shè)備一致的低階硬體界面。
- 資料庫(kù)配置器
一種特定類型的配置器,用于配置特定于專案的系統(tǒng)的各個(gè)方面
- Manifests
這是一組描述可用的可下載內(nèi)容的 XML 檔案。這包括程式碼范例、BSP 和中層資料庫(kù)
- 中層資料庫(kù)
一組相關(guān)的固件,作為原始碼、標(biāo)題、預(yù)編譯程式碼和資源的函式庫(kù)分發(fā),旨在供各種應(yīng)用程式使用。
- ModusToolbox? packs
一組額外的工具、清單和韌體資產(chǎn),透過(guò)英飛凌開(kāi)發(fā)人員中心作為一個(gè)群組安裝,以擴(kuò)展基本 ModusToolbox? 工具包的功能。
- ModusToolbox 工具包
適用于 Windows、macOS 和 Linux 的軟體包中安裝的基本工具集、建置系統(tǒng)和 IDE 支援。
- mtb-shared 目錄
提供用于給定工作區(qū)中的應(yīng)用程式的預(yù)設(shè)和新增的庫(kù)程式碼。
- 周邊驅(qū)動(dòng)程式庫(kù)(PDL)
一組低階、設(shè)備特定的韌體驅(qū)動(dòng)程序,提供對(duì)硬體周邊的存取。
- 工作區(qū)
一組檔案和目錄,其中包含一個(gè)或多個(gè)應(yīng)用程式以及共用程式庫(kù)的公共“mtb_shared”目錄。不同的 IDE 對(duì)這些有不同的定義
**資料來(lái)源?英飛凌原廠資料