Infineon PSoC 4 CapSense ModusToolbox IDE - 系统生态篇

本文档说明了 ModusToolbox 软体环境的 4 个层面,该环境为 CapSense 设备和生态系统提供支援。本文是 Infineon PSoC 4 CapSense ModusToolbox IDE-系统介绍的延伸篇 (Infineon PSoC 4 CapSense ModusToolbox IDE -系统介绍篇 - 大大通(简体站))。

什么是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 的不同程式库。一般来说,图书馆有几类。每个资料库都在自己的储存的资料库中提供,并附有完整的文件。

  1. 常见资料库类型:

大多数 BSP 都有以下某种形式的函式库:

  • 抽象层-这通常是RTOS 抽象层。
  • 基础库-这些是核心库,例如core-lib 和core-make。
  • 主机板实用程式 – 这些是特定于主机板的实用程序,例如显示支援或 BTSpy。
  • MCU 中间件-包括MCU 特定的函式库,例如freeRTOS 或Clib 支援。
  1. 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)
  1. 设备资料库 (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 对这些有不同的定义

**资料来源 英飞凌原厂资料

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/67730.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用PVE快速创建虚拟机集群并搭建docker环境

安装Linux系统 这里以安装龙蜥操作系统AnolisOS8.9为例加以说明。 通过PVE后台上传操作系统ISO镜像。 然后在PVE上【创建虚拟机】,选定上传的龙蜥操作系统镜像进行系统安装。 注意:在安装过程中,要设定语言、时区、超管用户root的密码、普…

ElasticSearch内存占用率过高怎么办?

文章目录 1,先用top看看各个进程的内存占用情况2,不能简单的杀死进程,然后再重启。3,查看一下ElasticSearch进程的具体启动情况4,修改Elasticsearch 的Java堆内存 1,先用top看看各个进程的内存占用情况 先…

OpenHarmony AVScreenCaptureRecorder录屏开发指导

一、简介 OpenHarmony 5.0新增了AVScreenCaptureRecorder ArkTs API。用户可以调用录屏AVScreenCaptureRecorder API录制屏幕,采集音频源数据,获取封装后的音视频文件,然后通过文件的形式流转到其他模块进行播放或处理,用于以文件…

【Spring】构造方法注入 属性加final

在Spring框架中,构造方法注入是一种常见的依赖注入方式。通过构造方法注入,Spring容器会在创建Bean时自动调用相应的构造方法,并将所需的依赖作为参数传入。关于构造方法注入时属性是否加final关键字,主要有以下几点区别&#xff…

一.MySQL程序简介

整体介绍 1.服务端mysqld(可执行文件) mysqld --verbose --help 2.客户端mysql(可执行文件) 3.其它工具包程序

G1垃圾回收器的FullGC

如何确定GarbageFirst回收器发生的是FullGC ? 必须出现FullGC字样才算是FUllGC,例如下图:因为内存分配失败(Allocation Failure)导致 如果不出现FullGC的字样说明它不是FUllGC,并不像Serial GC、ParallelGC的在老年代…

Sql 创建用户

Sql server 创建用户 Sql server 创建用户SQL MI 创建用户修改其他用户密码 Sql server 创建用户 在对应的数据库执行,该用户得到该库的所有权限 test.database.chinacloudapi.cn DB–01 DB–02 创建服务器登录用户 CREATE LOGIN test WITH PASSWORD zDgXI7rsafkak…

腾讯云AI代码助手编程挑战赛-武器大师

作品简介 对话过程能够介绍二战 各种武器 冷战 武器 现代的 各种武器装备,陆海空三军都知道。 技术架构 使用全后端分离的架构,前端使用Vue脚手架,腾讯云修改样式css 开发环境、开发流程 系统:win11 开发工具:VS…

Maven核心插件之maven-resources-plugin

前言 Maven 插件是 Maven 构建系统的重要组成部分,它们为 Maven 提供了丰富的功能和扩展能力,使得 Maven 不仅是一个构建工具,更是一个强大的项目管理平台。在 Maven 项目中,插件的使用通常通过配置 pom.xml 文件来完成。每个插件…

Golang的文件加密技术研究与应用

Golang的文件加密技术研究与应用 一、加密技术概述 文件加密的重要性 文件加密是指通过对文件进行加密操作,将文件内容转化为一段难以理解的数据。这样可以保护文件的隐私和安全,防止文件被未授权的用户访问和窃取。在日常工作和生活中,我们经…

Redis之秒杀活动

目录 全局唯一ID&#xff1a; 为什么 count 不可能为 null&#xff1f; 为什么返回值是 timestamp << COUNT_BITS | count&#xff1f; 整体的逻辑 (1) 生成时间戳 (2) 生成序列号 (3) 拼接时间戳和序列号 超卖问题&#xff1a; 基于版本号的乐观锁 CAS思想 …

VSCode 在Windows下开发时使用Cmake Tools时输出Log乱码以及CPP文件乱码的终极解决方案

在Windows11上使用VSCode开发C程序的时候&#xff0c;由于使用到了Cmake Tools插件&#xff0c;在编译运行的时候&#xff0c;会出现输出日志乱码的情况&#xff0c;那么如何解决呢&#xff1f; 这里提供了解决方案&#xff1a; 当Settings里的Cmake: Output Log Encoding里设…

【C++经典例题】求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句

&#x1f493; 博客主页&#xff1a;倔强的石头的CSDN主页 &#x1f4dd;Gitee主页&#xff1a;倔强的石头的gitee主页 ⏩ 文章专栏&#xff1a; 期待您的关注 题目描述&#xff1a; 原题链接&#xff1a; 求123...n_牛客题霸_牛客网 (nowcoder.com) 解题思路&#xff1a; …

STM32 单片机 练习项目 LED灯闪烁LED流水灯蜂鸣器 未完待续

个人学习笔记 文件路径&#xff1a;程序源码\STM32Project-DAP&DAPmini\1-1 接线图 3-1LED闪烁图片 新建项目 新建项目文件 选择F103C8芯片 关闭弹出窗口 拷贝资料 在项目内新建3个文件夹 Start、Library、User Start文件拷贝 从资料中拷贝文件 文件路径&#xff1a;固…

DAY15 神经网络的参数和变量

DAY15 神经网络的参数和变量 一、参数和变量 在神经网络中&#xff0c;参数和变量是两个关键概念&#xff0c;它们分别指代不同类型的数据和设置。 参数&#xff08;Parameters&#xff09; 定义&#xff1a;参数是指在训练过程中学习到的模型内部变量&#xff0c;这些变量…

VS Code 可视化查看 C 调用链插件 C Relation

简介 一直想用 SourceInsight 一样的可以查看函数调用链一样的功能&#xff0c;但是又不想用 SourceInsight&#xff0c;找了一圈没有找到 VS Code 有类似功能的插件&#xff0c;索性自己开发了一个。 这是一个可以可视化显示 C 函数调用关系的 VS Code 插件&#xff0c;功能纯…

(k8s)kubectl不断重启问题解决!

1.问题描述&#xff1a; 在服务器上安装完k8s之后&#xff0c;会出现kubectl有时候连得上&#xff0c;等之后再去连接的时候又断开&#xff0c;同时节点出现了NotReady的情况&#xff0c; 出现了这两种双重症状 2.解决问题 自己的思路&#xff1a;查看日志&#xff0c;检查报…

什么是数据湖?大数据架构的未来趋势

&#x1f496; 欢迎来到我的博客&#xff01; 非常高兴能在这里与您相遇。在这里&#xff0c;您不仅能获得有趣的技术分享&#xff0c;还能感受到轻松愉快的氛围。无论您是编程新手&#xff0c;还是资深开发者&#xff0c;都能在这里找到属于您的知识宝藏&#xff0c;学习和成长…

【Leetcode·中等·数组】59. 螺旋矩阵 II(spiral matrix ii)

题目描述 英文版描述 Given a positive integer n, generate an n x n matrix filled with elements from 1 to n(2) in spiral order. Example 1: Input: n 3 Output: [[1,2,3],[8,9,4],[7,6,5]] 提示&#xff1a; 1 < n < 20 英文版地址 https://leetcode.com…

Open WebUI 与 AnythingLLM 安装部署

在前文 Ollama私有化部署大语言模型LLM&#xff08;上&#xff09;-CSDN博客 中通过Ollama来搭建运行私有化大语言模型&#xff0c;但缺少用户交互的界面&#xff0c;特别是Web可视化界面。 对此&#xff0c;本文以Open WebUI和AnythingLLM为例分别作为Ollama的前端Web可视化界…