【学一点英飞凌】AutoSar-MCAL-Gtm-TOM模块

article/2025/10/11 8:25:44

系列文章目录

【英飞凌学习笔记】TC3XX系列GTM模块的基本组成


文章目录

  • 系列文章目录
  • 前言
  • 一、TOM模块是什么?
  • 二、TGC Sub-unit-Global Channel Control(全局控制寄存器)
    • 1、触发源
    • 2、触发方法
    • 3、注意要点
    • 4、TGC具体结构
  • 总结


在这里插入图片描述

前言

提示:这里可以添加本文要记录的大概内容:
本文基于英飞凌TC3X7芯片手册,GTM的TOM模块是产生并输出PWM的地方,想要彻底了解PWM,就必须知道它是怎么产生和如何被输出的。


一、TOM模块是什么?

TOM------ TIME OUT Module 时间输出模块,不了解GTM的话,详见上面的系列文章;

  • 一个TOM有TOM_CH0—TOM_CH15 一共 16个独立的通道
  • 一路通道产生一个PWM信号
  • 采用16位的计时器服务每个通道
  • 拥有五个FX_CLK(固定时钟的时钟源)–分频比固定为1:16、1:256等
  • TOM的16个通道分为了两个Group,每组八个通道

在这里插入图片描述

两个全局控制寄存器TGC0和TGC1,TGC0为TOM_CH0到TOM_CH7的控制寄存器,TGC1为TOM_CH8到TOM_CH15的控制寄存器
作用:TGC0和TGC1主要实现三个功能
同时控制八个通道的

  1. 使能和关闭
  2. 输出使能和关闭
  3. 寄存器的强制更新

二、TGC Sub-unit-Global Channel Control(全局控制寄存器)

1、触发源

前三个单独的机制(通道的启用/禁用、输出启用和强制更新)中的每一个都可以由三个不同的触发器源驱动。三个触发源是:

  • 1 、主机CPU(寄存器TOM[i]_TGC[y]_GLB_CTRL的HOST_TRIG位)
  • 2 、TBU时间戳(信号TBU_TS0, TBU_TS1, TBU_TS2-如果可用)
  • 3 、内部触发信号TRIG(一串触发信号TRIG_[x],既可以是通道x的触发器TRIG_CCU0,也可以是前面通道x-1的触发器(即信号TRIG_[x-1]),也可以是外部触发分配的TIM通道t的TIM_EXT_CAPTURE(t)。

2、触发方法

  • 第一种方法是通过主机CPU(寄存器TOM[i]_TGC[y]_GLB_CTRL的HOST_TRIG位)的直接寄存器写访问来触发控制机制。
  • 第二种方式由一个比较匹配触发器提供,该触发器代表来自模块TBU(由TBU_SEL位选择)和寄存器TOM[i]_TGC[y]_ACT_TB位字段ACT_TB中定义的时间戳比较值。注意,当x=0,1,2时,将执行ACT_TB与所选TBU_TS[x]的有符号比较。
  • 第三种可能是输入TRIG(一串触发信号TRIG_[x])来自TOM通道0到7 / 8到15。

3、注意要点

  • 来自通道[x]的相应触发信号TRIG_[x]可以被寄存器TOM[i]_TGC[y]_INT_TRIG.屏蔽.

  • 要启用或禁用每个单独的TOM通道,请使用寄存器TOM[i]_TGC[y]_ENDIS_CTRL和/或必须使用TOM[i]_TGC[y]_ENDIS_STAT

  • 寄存器TOM[i]_TGC[y]_ENDIS_STAT直接控制信号ENDIS。可以对这个寄存器进行写访问。

  • 如果三个触发条件之一匹配。寄存器TOM[i]_TGC[y]_ENDIS_CTRL是一个覆盖寄存器TOM[i]_TGC[y]_ENDIS_STAT值的影子寄存器。

4、TGC具体结构

在这里插入图片描述

  • 可以使用寄存器TOM[i]_TGC[y]_OUTEN_CTRLTOM[i]_TGC[y]_OUTEN_STAT来控制单个TOM通道的输出。
  • 寄存器TOM[i]_TGC[y]_OUTEN_STAT直接控制信号OUTEN。可以对这个寄存器进行写访问。
  • 如果三个触发条件之一匹配。寄存器TOM[i]_TGC[y]_OUTEN_CTRL是一个覆盖寄存器TOM[i]_TGC[y]_OUTEN_STAT值的影子寄存器。
  • 如果TOM通道被寄存器TOM[i]_TGC[y]_OUTEN_STAT禁用,那么TOM_CH[x]_OUT处通道输出的实际值由通道控制寄存器(TOM[i]_CH[x]_CTRL)中定义的信号电平位(SL)定义;如果使能输出,TOM_CH[x]_OUT的输出取决于触发器的SOUR值
  • 寄存器TOM[i]_TGC[y]_FUPD_CTRL定义了 如果触发信号CTRL_TRIG被触发,哪个TOM通道会接收FORCE_UPDATE事件。
  • NOTE : 强制更新请求被存储并同步执行到所选的CMU_FXCLK。
  • 寄存器位UPEN_CTRL[z]定义了TOM为其传送工作寄存器CM0、CM1和的更新CLK_SRC通过对应的影子寄存器SR0、SR1和CLK_SRC_SR启用。如果启用更新,寄存器CM0、CM1和CLK_SRC将在计数器寄存器CN0重置时更新
  • 一个例外是SR0_TRIG=1的配置,它启用SR0定义的触发器生成。那么CM0就不会被SR0更新

总结

TOM通道还没有介绍的,详见下一篇;


http://chatgpt.dhexx.cn/article/quq4PbEQ.shtml

相关文章

【MCAL_CANDriver】-1.5-图解CANFD如何兼容经典Classical CAN 2.0及其解决方案

点击返回「《Autosar_MCAL高阶配置》总目录」 目录 1 图解CANFD网络兼容Classical CAN 1.1 Classical CAN节点接收CANFD帧检出错误原因 1.2 CAN FD升级解决方案选择 2 CANFD对硬件设计要求 END 1 图解CANFD网络兼容Classical CAN 关于CANFD帧和Classical CAN帧结构差异&…

基于EB工具的TC3xx_MCAL配置开发01_WDG模块配置介绍

目录 1.概述2. WDG 配置2.1 General部分配置2.2 WdgSettingsConfig配置2.2.1 配置概述2.2.2 CPU WDG具体配置2.3 WdgDemEventParameterRefs3. WDG配置注意事项1.概述 本篇开始我们基于EB Tresos工具对英飞凌TC3xx系列MCU的MCAL开发进行介绍,结合项目经验对各MCAL外设的开发及…

MCAL 部分配置详情

对CSDN上的MCAL相关文章配置的记录 ,持续更新 英飞凌: Port 模块 DIO: DIO可以看做是Port的使用接口,应用程序是不可以直接操作Port或Pin的,只能通过DIO。DIO的配置也比较简单,其实就是给Pin重新定义了一个名称。 …

Autosar MCAL-ICU输入捕获

文章目录 前言ICUIcuChannelIcuChannelIdIcuDefaultStartEdgeIcuMeasurementModeIcuSignalTypeIcuWakeupCapability子配置项IcuSignalMeasurementIcuSignalMeasurementPropertyIcuDutycycleBufferMarker IcuOptionalApisIcuGetDutyCycleValuesApiIcuSetModeApiIcuSignalMeasure…

Autosar MCAL-SPI配置及使用

文章目录 前言SPI协议基础Autosar SPI专有名词SpiDriverSpiChannelSpiChannelIdSpiChannelTypeSpiDataWidthSpiDefaultDataSpiEbMaxLengthSpiIbNBuffersSpiTransferStart SpiExternalDeviceSpiBaudrateSpiAutoCalcBaudParamsSpiCsIdentifierSpiCsPolaritySpiCsSelectionSpiData…

【AUTOSAR】 MCAL配置说明(二)----MCAL CAN模块配置

CAN CAN 通讯模块配置 主要的配置内容如下: can 模块的时钟源 can busoff, rx, tx的处理方式 映射pin 脚选择 波特率,采样点设置 邮箱配置,接收、发送报文邮箱,标准帧/扩展帧 CanClockConfiguration 配置CAN 模…

Autosar MCAL-ADC详解(二)-基于Tc27x的cfg软件

文章目录 前言AdcHwUnitAdcGroupChannel Emux SelectGroup Access Mode配置结果指针初始化结果访问读取buffer中的结果 Group Buffer MarkerGroup Conversion ModeGroup IdGroup PriorityGroup ReplacementGroup Request SourceAdcGroupTriggSrcAdcHwTrigSignalHw Gate SignalA…

TC397 EB MCAL开发从0开始系列 之 [1.0]-MCAL结构及Demo介绍

MCAL结构介绍MCAL结构MCAL模块 MCAL安装包说明DemoWorkspaceMclsar EB 环境配置EB环境安装EB新建工程 ->返回总目录-< MCAL结构介绍 MCAL结构 MCAL是 Microcontroller Abstraction Layer&#xff08;微控制器抽象层)的简写&#xff0c;是AuoSar架构中的概念&#xff0…

MCAL中ADC的配置

根据硬件资源分配以及各信号的应用对ADC模块进行配置,使能正确采集信号,并提供转换结果。 1. ADC模块接口配置 使能AdcHwTriggerApi:硬件触发ADC转换,根据硬件需求,部分Channel的转换是通过硬件信号触发转换,因此需要使能该API。 使能AdcEnableStartStopGroupApi:软件…

AurixDevStudio集成MCAL

这是Tricore MCAL安装路径 打开ADS新建一个AURIX Project 我手上的是龙邱的TC377最小系统, 就这样选 理解下第一个选项 新建好的基础工程是这个样子 删除掉Library文件夹, 因为我们这里要使用的MCAL而不是iLLD库(虽然它们实现的功能大体相同) 在工程里新建一个文件夹为Mca…

AUTOSAR 学习笔记(一):NXP S32K14X AUTOSAR MCAL 软件下载及安装

AUTOSAR学习笔记(一)&#xff1a;NXP S32K14X AUTOSAR MCAL 软件下载及安装 目录 AUTOSAR学习笔记(一)&#xff1a;NXP S32K14X AUTOSAR MCAL 软件下载及安装1.下载MCAL 软件2、下载 AUTOSAR EB tresos 软件3、下载AUTOSAR 4.0 OS4、安装 EB tresos5、安装 MCAL6、安装 AUTOSAR…

[ 搞一点AutoSar ]基于EB的MCAL-GPT全模块配置与解析

笔者搞了快一个星期的GPT的测试了&#xff0c;从配置到代码一遍又一遍的操作和阅读。觉得有必要把学习成功稍微总结一下了&#xff1b;学AUTOSAR最后还是得熟悉代码&#xff0c;毕竟AUTOSAR只是目的&#xff0c;而代码才是实现的手段。中间的逻辑关系看代码一目了然&#xff1b…

【MCAL_CANDriver】-1.3-FullCAN和BasicCAN的差异及配置使用

点击返回「《Autosar_MCAL高阶配置》总目录」 目录 1 什么是FullCAN和BasicCAN 1.1 FullCAN / Basic CAN HRH区别 1.2 FullCAN / Basic CAN HTH区别 1.3 FullCAN和Basic CAN存在的原因 1.4 FullCAN/Basic CAN HRH/HTH如何选择 2 如何配置FullCAN和BasicCAN 3 来自CAN Dr…

MCAL MCU Module详解和配置说明

关注“嵌入式软件实战派”回复“AUTOSAR”获得更多实战教程。 以下内容包含&#xff1a;基本概念、模块依赖、应用时序、参数配置实践讲解&#xff0c;以及ECUM对其引用等。 1. 基本概念 描述了MCU&#xff08;Microcontroller Unit&#xff09; 驱动程序的功能和 API。 MCU 驱…

搞一点AutoSar--MCAL SPI-1

整理了一点SPI的资料 目录 1、SPI模块简介2、SPI驱动模块API的使用方法3、SPI通信主要概念4、选择SPI通道缓存&#xff08;Buffer&#xff09;位置5、SPI驱动模块API调用流程 1、SPI模块简介 图1 MCAL 4个驱动组与微控制器内核和外设的映射关系SPI属于MCAL模块中的通信驱动组&…

【MCAL_CANDriver】-1.2-Can Mailbox邮箱,Hardware Object,HOH,HRH,HTH之间的关系

点击返回「《Autosar_MCAL高阶配置》总目录」 目录 1 关键字定义 2 Maibox与Hardware Object之间的关系 2.1 接收L-PDU 2.2 发送L-PDU 3 HOH&#xff0c;HRH&#xff0c;HTH&#xff0c;Hardware Object之间的关系 4 Message buffer(MB)结构 5 结尾 1 关键字定义 Mailb…

图解AUTOSAR(五)——微控制器抽象层(MCAL)

微控制器抽象层位于AUTOSAR分层模型中BSW最底层&#xff0c;包含内部驱动&#xff0c;可以直接访问微控制器和片内外设。更进一步地&#xff0c;MCAL又可以分为微控制器驱动、存储器驱动、通信驱动和I/O驱动四个部分&#xff0c;各部分又由具体的与微控制器硬件相对应的驱动模块…

MCAL架构

MCAL位于AUTOSAR软件架构中基本软件&#xff08;BSW&#xff09;的底层&#xff0c;是可以直接访问MCU寄存器和内部外设的底层驱动。这样划分的目的是使上层软件&#xff08;如ECU抽象层、系统服务层等&#xff09;独立于MCU硬件平台&#xff0c;保证上层软件的标准化和通用性。…

AutoSar之微控制器抽象层MCAL

微控制器抽象层位于AUTOSAR BSW的最底层&#xff0c;包含内部驱动&#xff0c;可直接访问微控制器和外设芯片。从具体应用来看&#xff0c;MCAL主要包括微控制器驱动、存储器驱动、通信驱动和输入输出驱动四个部分&#xff0c;各部分又由具体的与微控制器硬件相对应的驱动模块组…

MCAL介绍及Module Plugin开发流程总结

Mcal–微控制器抽象层位于AUTOSAR分层模型中BSW最底层&#xff0c;包含内部驱动&#xff0c;可以直接访问微控制器和片内外设。 MCAL又可以分为微控制器驱动、存储器驱动、通信驱动和I/O驱动四个部分&#xff0c;各部分又由具体的与微控制器硬件相对应的驱动模块组成。如图所示…