本文檔說明了 ModusToolbox 軟體環境的 4 個層面,該環境為 CapSense 設備和生態系統提供支援。本文是 Infineon PSoC 4 CapSense ModusToolbox IDE-系統介紹的延伸篇 (https://www.wpgdadatong.com/blog/detail/74667)。

什麼是ModusToolbox軟體?
本章節提供 ModusToolbox™ 生態系中使用的各種術語和定義的清單。 ModusToolbox™ 軟體是一種現代化的可擴展開發環境,支援各種英飛凌微控制器裝置。它提供了一套靈活的工具和多樣化、高品質的以應用程式為中心的軟體集合。其中包括配置工具、低階驅動程式、庫和作業系統支持,其中大多數與 Linux、macOS 和 Windows 託管環境相容。下圖顯示了 ModusToolbox™ 軟體的可用內容的俯視圖。這不是一個完整的清單, 它僅僅傳達了您可以使用多種資源的使用方式.

ModusToolbox™ 軟體不包含專有工具或自訂建置環境。這意味著您可以選擇編譯器、IDE、RTOS 和生態系統,而不會影響可用性或對我們業界領先的 CAPSENSE™ 和各種其他功能的存取。 ModusToolbox™ 軟體的另一個重要方面是每個產品都有版本。這確保了每個產品都可以持續更新,但它還允許您針對特定環境鎖定特定版本的工具。有關更多詳細信息,請參閱產品版本控制。
層面 1. 運行時軟體 (GitHub)
ModusToolbox™ 工具還包括大量 GitHub 託管的儲存庫,其中包括程式碼範例、BSP 以及中間件和應用程式支援。我們按季度「訓練模型」計畫發佈運行時軟體,存取新的或更新的料庫, 不需要您手動更新 ModusToolbox™ 的安裝。新專案從我們眾多程式碼範例範本之一開始,這些範本展示了從簡單的外圍設備演示到完整的應用程式解決方案的所有內容。每個英飛凌套件均由全面的BSP 實施支持,可簡化電路板的軟體接口,使應用程式能夠立即重新定位到新硬件,並且可以輕鬆擴展以支持您的定制硬件,而無需常見的移植和集成麻煩。廣泛的中間件集合包括不斷增長的感測器介面、顯示支援和以連接為中心的庫。 ModusToolbox™ 安裝程式也方便地捆綁了您利用英飛凌關鍵技術重點領域所需的所有必要執行時間元件的軟體包。
層面 2. 程式碼範例
所有目前的 ModusToolbox™ 範例都可以透過 GitHub 程式碼範例頁面找到。在那裡您可以找到 PSOC™ 6 MCU、PSOC™ 4 裝置等範例的連結。對於大多數程式碼範例,您可以使用從範本建立應用程式來建立應用程式並直接與 ModusToolbox™ 工具一起使用。對於某些範例,您需要按照程式碼範例儲存資料庫中的說明來實例化該範例。說明根據應用程式的性質和目標生態系統而有所不同。在 ModusToolbox™ 建置基礎架構中,任何需要函式庫的範例應用程式都會自動下載該程式庫。您可以控制正在下載的資料庫版本及其在磁碟機上的位置,以及它們是共享的還是本地的應用程式。您可以參閱庫管理器使用者指南以了解更多詳細資訊。
層面 3. 資料庫 (middleware)
除了程式碼範例之外,ModusToolbox™ 還有許多其他部分作為資料庫提供。這些資料庫對於充分利用各種設備的各種功能至關重要。當您建立 ModusToolbox™ 應用程式時,系統會下載您的應用程式所需的所有程式庫。請參閱 ModusToolbox™ 建置系統章節以了解這一切是如何運作的。所有目前的 ModusToolbox™ 資料庫都可以透過 GitHub ModusToolbox™ 軟體頁面找到。 ModusToolbox™ 應用程式可以使用基於活動 BSP 的不同程式庫。一般來說,圖書館有幾類。每個資料庫都在自己的儲存的資料庫中提供,並附有完整的文件。
- 常見資料庫類型:
大多數 BSP 都有以下某種形式的函式庫:
- 抽象層-這通常是RTOS 抽象層。
- 基礎庫-這些是核心庫,例如core-lib 和core-make。
- 主機板實用程式 – 這些是特定於主機板的實用程序,例如顯示支援或 BTSpy。
- MCU 中間件-包括MCU 特定的函式庫,例如freeRTOS 或Clib 支援。
- BSP特定的基礎函式庫:
BSP 特定的函式庫包括 mtb-hal、mtb-pdl 和 Recipe-make。其中一些特定設備歸類為以下類別:
- 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)
- 設備資料庫 (device-db)
device-db 由一組裝置組成,稱為行銷部件號 (MPN),分佈在一組分層目錄中。每個 MPN 包含一個描述裝置基本特徵的基本視圖以及由使用 device-db 的應用程式定義的附加視圖。最新版本的 device-db 包含在新應用程式中,並且被鎖定的device-db 版本僅包含當時可用的MPN。如果您以後想要將 MPN 更新到設備資料庫中不可用的較新設備,則必須使用庫管理器進行更新。 device-db 取決於應用程式的 PDL。在某些情況下,當您需要更新 device-db 時,可能還需要更新 PDL。我們建議盡可能少更新設備資料庫所需的 PDL 版本,因為 PDL 可能包含比您的應用程式所需的更多變更。有關詳細信息,請參閱 device-db README.md 和 RELEASE.md 檔案。
層面 4. 主板特定封裝 (BSPs)
BSP 是 ModusToolbox™ 軟體的核心功能。 BSP 指定了應用程式的幾個關鍵項目,包括:
- 設備的硬體設定檔(例如design.modus)
- 裝置的啟動程式碼和連結器文件
- 支援套件所需的其他函式庫
BSP 與我們的開發/評估套件保持一致;它們提供基本設備功能的檔案。 BSP 通常有一個 design.modus 文件,用於配置時鐘和其他主板特定功能。此檔案由 ModusToolbox™ 配置器使用。 BSP 還包括板上裝置所需的裝置支援代碼。您可以修改配置以適合您的應用程式。
每個 BSP 都有自己的文件。提供的資訊各不相同,但通常包括以下一項或多項:
- BSP 的 API 參考
- BSP 概述
- 指向相關套件頁面的鏈接,其中包含套件特定文檔
BSP 特定於主板跟設備。對於自訂開發,您可以為您的裝置建立或修改 BSP。
產品支援平台
- PSOC™ 4 MCU (See AN79953: Getting Started with PSOC™ 4 for the supported PSOC™ 4 devices.)
- PSOC™ 6 MCU • PSOC™ Control MCU
縮寫及定義
- Board Support Package (BSP)
您可以自訂的資料庫,它添加了對建置和啟動目標板及相關設備的支援。這包括原始程式碼、標頭、資源、連結器腳本、啟動程式碼,並且它們為 GPIO 等資源定義通用別名以幫助實現可移植性。所有 ModusToolbox™ 應用程式都需要至少一個 BSP。
- BSP 配置器
一種特定類型的配置器,用於配置特定於 BSP 的系統方面。由於 BSP 包含基礎微控制器,因此設備配置器是使用 BSP 配置器。
- 程式碼範例
這是應用程式的起點/模型。它通常是 Git 儲存庫,但也可以是另一個目錄。
- 配置器
GUI 和/或 CLI 工具可簡化運行時資產(晶片、板或中介軟體)的配置。配置器有多種類型,它們通常會建立成為目標應用程式一部分的程式碼或資料結構。
- 設備配置器
BSP 配置器,用於配置主目標設備上的硬體。它允許配置設備 GPIO、週邊、時脈、DMA 等。
- 設備資料庫 (device-db)
包含一組可供各種工具用於建立應用程式和 BSP 的設備
- 驅動器
啟用特定硬體週邊的低階韌體
- 硬體抽象層 (HAL)
一組韌體驅動程序,提供與大多數英飛凌設備一致的低階硬體介面。
- 資料庫配置器
一種特定類型的配置器,用於配置特定於專案的系統的各個方面
- Manifests
這是一組描述可用的可下載內容的 XML 檔案。這包括程式碼範例、BSP 和中層資料庫
- 中層資料庫
一組相關的固件,作為原始碼、標題、預編譯程式碼和資源的函式庫分發,旨在供各種應用程式使用。
- ModusToolbox™ packs
一組額外的工具、清單和韌體資產,透過英飛凌開發人員中心作為一個群組安裝,以擴展基本 ModusToolbox™ 工具包的功能。
- ModusToolbox 工具包
適用於 Windows、macOS 和 Linux 的軟體包中安裝的基本工具集、建置系統和 IDE 支援。
- mtb-shared 目錄
提供用於給定工作區中的應用程式的預設和新增的庫程式碼。
- 周邊驅動程式庫(PDL)
一組低階、設備特定的韌體驅動程序,提供對硬體週邊的存取。
- 工作區
一組檔案和目錄,其中包含一個或多個應用程式以及共用程式庫的公共「mtb_shared」目錄。不同的 IDE 對這些有不同的定義
**資料來源 英飛凌原廠資料
評論