英飞凌Tc27x EB-tresos Mcal 配置详解
文章平均质量分 89
讲述英飞凌单片机AURIX1G Tc2xx 基于MCAL实现硬件抽象层的方法,以及SafeTlib部分。调试方式通过英飞凌Tc275开发板。
优惠券已抵扣
余额抵扣
还需支付
¥69.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
剑从东方起
高级软件工程师,汽车电子行业深耕者。
展开
-
MCAL知识点(二十八):TC275如何通过EB-Tresos配置实现硬件触发ADC同步采样(电机控制器三相电流同步采样)
TC275如何通过GTM触发硬件采样?又如何通过软件定时触发ADC采样呢?本文通过EB-tresos工具来实现此方式。英飞凌tC275的VADC模块在硬件触发方面有两个需要注意的点:- ADC0~3是可以实现同步触发的,ADC4~7又是另外4个核可以实现同步触发的。-ADC0_Channel0、ADC1_Channel0、ADC2_Channel0、ADC3_Channel0实现同步触发,也就是Channelx中的x必须一样才行。VADC的结构图示如下。原创 2024-02-19 18:25:49 · 1272 阅读 · 2 评论 -
MCAL知识点(二十七):TC275如何通过GPT12实现ABZ解码
GPT12 - General Purpose Timer Unit (GPT12):通用定时器单元,具备较为灵活的定时器结构,可以用来做定时器、事件计数、脉冲宽度测量、产生PWM、频率调制、ABZ编码器增量测量。文章记录一下如何通过GPT12实现编码器ABZ信号的测量。注意一下使用方法,只有GPT1才具备增量接口模式。原创 2024-02-19 09:00:32 · 700 阅读 · 10 评论 -
MCAL知识点(二十六):英飞凌OVC(OverLay)地址重定向功能及实战
数据overlay功能提供了将选定的数据访问重定向到overlay内存的能力。TriCore对程序闪存、在线数据采集空间或EBU空间的数据访问可以重定向。overlay存储器可以位于本地存储器(如果存在)、仿真存储器(仅限仿真设备)或DPSR/PSPR存储器中。覆盖功能使其成为可能,例如,在程序运行期间修改应用程序的测试和校准参数(通常存储在闪存中)。注意,只有读和写数据访问被重定向。访问重定向的执行没有性能损失。注意:由于地址转换是在DMI中实现的,它只对TriCore的数据访问有效。原创 2023-06-20 14:29:25 · 2927 阅读 · 7 评论 -
MCAL知识点(二十五):QSPI实现菊花链功能
什么是菊花链呢?参考一下下图的硬件连接形式,根据下图的硬件连接解释什么是菊花链。SPI的四根线MOSI/CS/CK/MISO,图里面显示了一根SD的线,SD再图示里面的作用只是项目为了控制从芯片而引出来的一根连接线而已,与菊花链无关。上图是一个有 N个从器件的菊链系统结构,采用一个片选(CS)信号控制所有从器件的CS输入,所有从器件接收同一个时钟信号。只有链上的第一个从器件(SLAVE 1)从微控制器直接接收命令。其他所有从器件都从链上前一个器件的SDO输出获得其SDI数据。原创 2023-05-12 17:21:28 · 1836 阅读 · 13 评论 -
MCAL知识点(二十四):WDG MCAL驱动配置详解
WDG驱动程序提供使用AURIX系列微控制器的CPU WDT外设所需的服务和配置参数。它提供了服务CPU WDT和适当改变CPU WDT配置的功能。WDG在整个AUTOSAR架构里面的位置如下图所示软硬件匹配关系如下图所示如上图所示,逻辑关系倒是很明确,GTM为看门狗提供时钟,然后又GTM里面使用使用中断,中断是用来喂狗操作的,放到任务里面喂狗倒是不怎么合适的,因为任务有停下来的风险,真正触发中断的应该是SMU模块。Driver.如上所示: WDG 只有三类在 AURIX 1G 产品里面。原创 2023-04-28 14:29:50 · 2399 阅读 · 6 评论 -
MCAL知识点(二十三):ETH MCAL驱动配置详解
通过EB-Tresos配置英飞凌Tc27x单片机的以太网模块,经由ARP帧发出来,进行抓包实验。原创 2023-04-28 13:16:33 · 1907 阅读 · 2 评论 -
MCAL知识点(二十二):LIN MCAL驱动配置详解
LIN总线是针对汽车分布式电子系统而定义的一种低成本的串行通讯网络,是对控制器区域网络(CAN)等其它汽车多路网络的一种补充,适用于对网络的带宽、性能或容错功能没有过高要求的应用。LIN总线是基于SCI(UART)数据格式,采用单主控制器/多从设备的模式,是UART中的一种特殊情况。LIN总线有以下几个特点1、单线通信,传输速率较低。LIN线在物理上是一个上拉到12V的集电极开漏总线。原创 2023-04-25 15:30:45 · 2152 阅读 · 7 评论 -
MCAL知识点(二十一):CRC MCAL驱动配置详解
CRC是循环冗余校验(Cyclic Redundancy Check),利用除法及余数的原理,实现错误侦测的功能。CRC算法校验步骤如下:假设校验多项式是需要校验的数据是0x0102。1. 校验多项式g(x)对应的二进制为 1 0011 0001,即 0x131也就是0x1 0011 0001 = 0x1312.因为需要 8位 CRC 校验,所以将需要校验的数据左移 8 位,得到: 0000 0001 0000 0010 0000 0000。原创 2023-04-25 10:12:58 · 754 阅读 · 0 评论 -
MCAL知识点(二十):I2C驱动详细配置
I2C由两根线组成,一根是双向的数据线SDA,另一根是双向的时钟线,他们都通过一个电流源或上拉电阻连接到正的电源电压。非常注意点:这两个上拉电阻是必要的!I2C总线要求每个设备SCL/SDA线都是开漏模式(OD模式),因此总线必须带有上拉电阻才能正常工作。主设备写执行动作1、主设备发送起始(START)信号占用总线。2、主设备发送设备地址(一般来说从机地址通过上下拉电阻分配的)+读写标志位+从机ACK+寄存器地址 到从设备,原创 2023-04-24 16:06:58 · 1775 阅读 · 2 评论 -
MCAL知识点(十九):SENT驱动详细配置
SENT协议只有一根线,异步传输!Sent协议的全称为Single Edge Nibble Trans .isson,单边半字节传输协议,是一种单线异步串行通信协议。Sent报文包含8个Nibble和一个校准位如图1所示,每一个Nibble数据被编码成PWM方式。设计这种协议的目的是用在与汽车ECU快速交互信息的传感器上,以此来取代低精确度的10bit AD和PWM。Sent是一种点对点的单方向从传感器到控制端的协议,控制器不需要同步信号。原创 2023-04-23 14:46:56 · 1941 阅读 · 2 评论 -
MCAL知识点(十八):AURIX通过EB-tresos配置DSADC实现软解码
英飞凌单片机有个模块叫DSADC,这个模块是离散型的采样,和普通的逐次逼近的方法大不一样,故使其用来作为替代旋变解码芯片是非常合适的。DSADC顾名思义为Delta-Sigma Analog-to-Digital Converter module,可以用于替代旋变,通过芯片本身实现激励输出与位置信息解析。DSADC每个转换器通道可以独立于其他通道运行,由一组专用寄存器控制。每个通道的结果可以存储在专用的特定于通道的结果寄存器中。片上滤波器级从调制器信号产生数字结果。片上调制器接受差分或单端输入信号。原创 2023-04-18 11:23:42 · 2760 阅读 · 6 评论 -
MCAL知识点(十七):VADC驱动配置详解(实战篇)
通过实际配置EB-Tresos,来实现基本的VADC采样,包含一系列例如软件触发采样,硬件触发采样,同步采样等实现方式。为了保持统一,贴入AUTOSAR架构图示。原创 2023-04-17 15:11:58 · 1292 阅读 · 7 评论 -
MCAL知识点(十六):VADC驱动配置详解(理论基础篇)
AURIX微控制器使用连续的逐次逼近寄存器(SAR)原理提供多个VADC HW单元,将模拟输入值(电压)转换为离散数字值。ADC驱动程序初始化和控制内部通用的模拟到数字转换器单元的微控制器。驱动程序还为用户提供了初始化结果缓冲区位置以更新转换值的设备。ADC驱动程序将允许每个通道组(可选)的优先级配置。这意味着在SW中实现优先级,并得到HW的支持。Aurix有两个ADC外围设备,VADC和DSADC。ADC集群的每个转换器都可以独立操作其他的,由一个专用的寄存器和由一个专用的组请求源触发。原创 2023-04-14 17:15:42 · 1504 阅读 · 0 评论 -
MCAL知识点(十五):QSPI驱动配置详解(同步与异步)
Aurix QSPI支持全双工和半双工同步通信。数据宽度、移动方向、时钟极性和相位可编程。这允许与spi兼容的设备进行通信。SPI在AUTOSAR架构里面的位置如下图所示SPI的有四根线,SPI的属性上面有极性CPOL与CPHA相位之分,在一个时钟周期内有两个边沿1、Leading edge=前一个边沿=第一个边沿,对于开始电压是1,那么就是1变成0的时候,对于开始电压是0,那么就是0变成1的时候。原创 2023-04-13 10:44:17 · 2050 阅读 · 0 评论 -
MCAL知识点(十四):FEE驱动配置详解
FEE模块是“内存硬件抽象”层的一部分。FEE应从设备特定的寻址方案和分段中抽象出来,并为上层提供虚拟寻址方案和分段以及“实际上”无限次的擦除/写入周期。软件的上层不应依赖于持久数据存储的类型,即数据是否存储在内部Flash或内部EEPROM或外部存储设备中。上层软件不需要关心存储设备的物理约束。所有这些设备细节都应该封装在Flash EEPROM仿真中。软硬件匹配关系如下图,从图中可以观察出FEE操作的是DF空间,将DF空间看作EEPROM使用。原创 2023-04-11 16:25:06 · 2694 阅读 · 19 评论 -
MCAL知识点(十三):UART驱动配置详解
UART即为串口,在Tc27x里面Uart与ASLIN是共用资源的。专业的解释为通用异步接收机/发射机。软硬件匹配图如下。原创 2023-04-06 15:11:34 · 1290 阅读 · 0 评论 -
MCAL知识点(十二):IRQ中断系统驱动配置详解
IRQ即为中断模块,中断请求既可以由cpu处理,也可以由DMA模块处理。中断请求在本文档中被称为“服务请求”而不是“中断请求”,因为它们可以由任何一个服务提供者提供服务。TC27x中的中断系统是在中断路由器模块中实现的,该模块包括服务请求节点(srn)中断控制单元(ICUs)和用于软件开发支持的附加功能。Tc275的中断单元如下图所示每个SRN包含一个服务请求控制寄存器(SRC)来配置服务请求,例如优先级,映射到一个可用的服务提供者。原创 2023-04-06 10:39:11 · 1535 阅读 · 2 评论 -
MCAL知识点(十一):ICU驱动配置详解
ICU驱动使用Aurix uC平台的GTM、CCU6和ERU外设来实现ICU驱动功能。ICU驱动程序用于信号边缘检测(通知)、信号测量、边缘计数器和时间戳捕获。在BSW里面的位置信息如下› 信号边缘计数› 信号边缘检测› 信号测量软硬件匹配关系。ICU的功能都用到MCU的哪些资源呢?如下图所示ERUERU的使用不仅限于ICU驱动程序。此外,ADC驱动程序使用ERU的公共资源进行门控和触发。ICU驱动会初始化仅用于ICU驱动的ERU资源,不影响其他未使用的ERU资源。原创 2023-04-03 10:39:22 · 2204 阅读 · 5 评论 -
MCAL知识点(十):ERU驱动配置详解
ERS:外部请求单元ETL:中断逻辑单元OGU:输出逻辑单元MCU里面配置要使用的功能和选择输入的管脚,注意上述模块关注点讲述的ERU必须和边沿检测模块相关联。原创 2023-04-03 10:25:58 · 849 阅读 · 0 评论 -
MCAL知识点(九):ATOM实现SVPWM驱动配置详解
与ARU相连的定时器输出模块(ATOM)能够在没有CPU交互的情况下产生复杂的输出信号,因为它与ARU相连。本例子通过ATOM模块产生发波,当然也可以通过TOM模块,看选择,原理都是一样的。ATOM用户手册图示如下模块的时钟来源如下Note:CFGU为TIM、ATOM、TBU和MON提供了8个专用时钟源.FXU 为TOM、MON生成预定义的不可配置时钟CMU_FXCLK固定时钟分频因子EGU能够生成最多三个外部时钟信号(针对AURIX)原创 2023-03-29 14:15:45 · 806 阅读 · 0 评论 -
MCAL知识点(八):PWM驱动配置详解
PWM Driver使用AURIX平台的GTM外设来产生PWM信号。驱动程序可以配置多个通道,并具有在运行时改变占空比的功能。Driver也支持在配置边缘时通知上层。软硬件依赖关系根据软硬件依赖关系,GPT模块时钟主要来源于TOM于ATOM,那么两个选择有什么区别呢?TOM:-16bitATOM:-24bit产生PWM的流程图,MCAL配置手册里面也已经给出来了。原创 2023-03-29 10:13:02 · 1642 阅读 · 0 评论 -
MCAL知识点(七):GPT驱动配置详解
什么是GPT,Generic Timer Module,通用定时器模块。目前使用方式,要是裸机单纯的用来定时,用于AUTOSAR工程,一般用于WDGM的1ms中断喂狗模块。根据MCAL的手册描述,主要使用于以下几个功能GPT在整个底层中的位置如下:软硬件匹配关系如下,体现GPT与其他模块的关联关系。根据软硬件依赖关系,GPT模块时钟主要来源于TOM于ATOM。原创 2023-03-28 17:32:58 · 2047 阅读 · 3 评论 -
MCAL知识点(六):GTM驱动配置详解
EB-tresos配置英飞凌通用定时器模块GTM以及对GTM模块的初步讲解原创 2023-03-28 10:42:20 · 1526 阅读 · 0 评论 -
MCAL知识点(五):FlsLoader驱动配置详解
FlsLoader Driver的初衷是英飞凌的同步驱动,支持Boot loader 的,在英飞凌给出的解释里面,如下关联关系。看到上图,其实也能感受到,FlsLoader能操作的不仅仅是PF,应该也是包含DF的,但是目前来说,但针对我个人而言,并没有在实际的项目里面取操作过DF相关的信息,不过下面自己实测是可以的。单单对TC275来讲,可操作的部分,实际为如下图,此处划重点,发现没,图里面PF的操作地址仅仅是A0开头的地方,也就是no cache部分。但是实际操作80开头的也是可以的。原创 2023-03-21 11:08:11 · 1215 阅读 · 4 评论 -
MCAL知识点(四):Fls驱动配置详解
记录一下用MCAL配置Flash驱动的方式,针对芯片tc27x,MCAL的FLS配置,配置的是DF(dataflash)。DF在整个内存的位置以及框架位置Tc27x总共有384K的空间Tc275的锁步核有两个,分别是Core0 Tc1.6E与Core1 Tc1.6P 其中P代表Power,性能核。提起DF需要关注一个点 UCB。原创 2023-03-20 11:39:07 · 1811 阅读 · 5 评论 -
MCAL知识点(三):CAN驱动配置详解
CAN驱动程序为使用单片机中的MultiCAN+单元提供服务。一个MultiCAN+单元(在AUTOSAR中称为“硬件单元”)由共享许多独立消息对象(在AUTOSAR中称为“硬件对象”)的独立节点(在AUTOSAR中称为“控制器”)组成。Aurix微控制器中的CAN硬件单元为每个CAN节点提供了符合CAN规范V2.0 B的全CAN功能(符合ISO 11898)。CAN驱动在整个AUTOSAR架构图示如下软硬件之间匹配关系如下MultiCAN+模块包含独立操作的CAN节点,具有全CAN功能。原创 2023-03-01 09:19:50 · 3023 阅读 · 31 评论 -
MCAL知识点(二):Port与Dio MCAL驱动配置详解
DIO与PORT与MCU上面的管脚相关,其中Port指属性,Dio值命名,在AUTOSAR里面的位置如下图所示。原创 2023-03-09 19:17:04 · 2380 阅读 · 6 评论 -
MCAL知识点(一):MCU配置
记录一下Tc27x用MCAL去配置,怎么实现操作的,下图是MCU在分层结构里面的位置。参考资料:《Aurix_MC-ISAR_UM_MCUDriver.pdf》拿到EB包之后解压出来部分MC-ISAR_AS4XX_AURIX_TC27X_DC_PB_BASE_V600_REL-378\UserManuals。原创 2023-03-17 11:33:33 · 2326 阅读 · 0 评论 -
Tc2xx知识点(二) :AURIX单片机基础概念记录
目前接触Tc275第五个年头了,一直使用的是MCAL,少数时间使用ILLD,对于Tc275的基础概念其实也有部分是不理解的,毕竟大部分时间都在项目里面无法脱身,真正使自己进步的恰恰是项目的空窗期,静下心来,慢慢梳理和理解一些专属自己的内容。记录一下自己认为不太理解的,很希望有道友一起交流啊!原创 2023-04-21 16:09:39 · 1330 阅读 · 0 评论 -
Tc2xx知识点(一) BMI实现启动
英飞凌可以通过BMI实现启动,那么本文章将会仔细介绍BMI相关知识以及如何应用到项目里面。BMI的结构组成,在手册里面的介绍如下图在英飞凌的UM手册里面,本地的BMI有且仅有四个BMI的顺序是从0开始查找到第三个,假设这四个BMI均为找到有限的,那么单片机就无法启动。原创 2023-02-19 11:40:30 · 1280 阅读 · 0 评论
分享