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

73 篇文章 337 订阅
订阅专栏
16 篇文章 96 订阅
订阅专栏

前言

既然谈到MCAL,那必定是与硬件芯片分不开的,但是网上的博客资料大部分都是按照理论知识来分析(也可能有些收费的我看不到。。。)。基于此,本文详细介绍Autosar MCAL中的ADC模块,应用的单片机为TC27x系列。

TC27x系列ADC硬件资源


ADC共有48+12个通道,查看datasheet可知,48Group0的通道0-7到Group5的通道0-7,12Group6的0-5到Group7的0-5。后12个引脚来自于Port的复用,前48个部分可以来自于Port的复用,也可以来自于Analog Inputs。ADC共有8个转换器。
截取其中一路通道Group0.0如下图所示:


对于48个模拟输入引脚来说,Analog Input Number(0-47)决定了其所在的Group和Channel.

Autosar ADC模块

在Autosar官方文档中的配置项有如下几个:

AdcConfigSet:此容器包含AUTOSAR Adc模块的配置参数和子容器

AdcGeneral:ADC驱动程序软件模块的一般配置(参数)。

AdcPublishedInformation:“通用”已发布信息未涵盖的其他已发布参数。请注意,这些参数具有“PUBLISHED-INFORMATION”配置类设置,因为它们是发布信息。

基本主要配置的是前两项内容。

AdcConfigSet

系统时钟

配置系统时钟是由McuClockReferencePoint而来,查看芯片手册可知,fVADC时钟由fSPB为基础时钟本文设为100MHZ

分频参数

分频图:

Analog clock frequency分频参数

datasheet中规定fADCI(转换器时钟)频率最高为20MHZ

cfg配置fADCI分频值


计算得到fADCI频率为100/(4+1)=20MHZ

Digital clock frequency分频参数
cfg配置fADCD分频值


计算得到fADCD频率为100/(3+1)=25MHZ

采样同步信号

采样同步信号由CCU6x的T13生成

cfg中配置采样同步信号来源


这个地方只是配置了可以由CCU6来触发同步信号,后面还有一个配置是否开启该功能

supply voltage选择

可选5V或3.3V,配置寄存器为GLOBCFG.LOSUP

预充控制

选择是否开启预充控制,此处选择带预充控制。VDDM指的为电源电压。

参考电流可以通过从电源电压VDDM预加载电容场来降低。该特性通过在寄存器GLOBCFG中设置REFPC位来启用。在这种情况下,参考电压和电源电压必须在同一水平上。电容场首先在第一相从VDDM预加载,然后在第二相调整为VAREF。

睡眠模式

选择是否允许睡眠模式,此处选择允许。该项由寄存器CLC.EDIS位控制

子配置项

AdcGlobInputClass

设置全局的采样精度和采样时间,对应的寄存器为GLOBICLASS,时间配置为0时,采样时间为2/fADC.采样精度不用多说,位数越高精度越高,12位对应的值为0-4096。该寄存器有两个一样参数项,参数的可以设置的不一样

cfg中配置AdcGlobInputClass


EMUX没有用到,暂时不管。

AdcHwUnit

AdcHwUnit是Autosar中规定的标准配置,一个AdcHwUnit对应一个ADC硬件单元(转换器),对于tc27X,最多有8个AdcHwUnit。规范中一个AdcHwUnit中包括AdcChannels,AdcGroups(CFG中扩展了AdcKernelInputClass,为对应ADC组的采样时间和转换精度)

Autosar规范中定义:由于一个AdcChannel可以是多个AdcGroup的一部分,这个容器(AdcChannel)不是作为AdcGroup的子容器实现的,而是作为AdcHwUnit的子容器实现的。也就是说同一个AdcChannel可以存在多个AdcGroup中。但一般在实际使用过程中,都是和硬件Group一一对应的

Arbitration Round Length

该项在用户手册中可以查到,由寄存器GxARBCFG.ARBRND配置。在28.5.3.1章中建议配置为4.
仲裁槽位的持续时间是可配置的。 tSlot = (DIVD+1) / fVADC.因此,一轮仲裁的持续时间为tARB = 4 × tSlot
cfg中配置如下:

Hw Unit Id

配置所属的硬件单元,

Post Cal

选择是否开启硬件校准,由寄存器GLOBCFG.DPCALx位决定是否禁止硬件校准。

cfg中配置为禁止校准:

Sync Conv Mode

选择ADC内核的运行方式.如果需要同步转换-并行采样的话,这里需要配置ADC内核主机或从机。不需要同步转换的话,配置成STANDALONE即可。


下图显示了ADC0为主机,ADC1和ADC2为从机时的转换过程,对通道3进行同步采样。

主ADC请求对某个通道(对应的通道控制寄存器GxCHCTRy中的SYNC = 1)进行同步转换,连接的从ADC内核也请求同步转换

注意:程序寄存器GxSYNCTR需要在转换组中所有ADC核中的位域GxARBCFG.ANONS = 00B之后设置。之后设置主节点的位域ANONC为11b

AdcChannel

AdcChannel作为Autosar标准中定义的容器,跟硬件ADC通道对应。

An Channel Num

连接每个ADC硬件单元的8个模拟输入

For HWUNIT_ADC0: 0 - 7 for TC27x / TC29x and 0 - 15 for TC26x

For HWUNIT_ADC1: 8 - 15 for TC27x / TC29x and 16 - 31 for TC26x

For HWUNIT_ADC2: 16 - 23 for TC27x / TC29x and 32 - 47 for TC26x

For HWUNIT_ADC3: 24 - 31 for TC27x / TC29x and 48 - 63 for TC26x

For HWUNIT_ADC4: 32 - 39 for TC27x / TC29x

For HWUNIT_ADC5: 40 - 47 for TC27x / TC29x

For HWUNIT_ADC6: 48 - 55 for TC27x / TC29x

For HWUNIT_ADC7: 56 - 63 for TC27x / TC29x

For HWUNIT_ADC8: 64 - 71 for TC29x

For HWUNIT_ADC9: 72 - 79 for TC29x

For HWUNIT_ADC10: 80 - 87 for TC29x

该配置项需要与实际应用对应,与硬件原理图相关。

cfg中配置硬件通道:

Channel High/Low Limit

转换结果最大/小值限制,该值还受limit check开关影响,没有enable limit check时设置无效。

cfg中配置Channel High/Low Limit,实际由于limit check未使能,所以配置没作用


当转换/比较的结果在用户定义的边界内或边界外时,就可以生成通道事件(参见位域CHEVMODE)

Channel Limit Check

enable/disable Limit checking,此处未enable

Channel Id

该ID为名称定义用,不需要与硬件通道ID一致,一般AdcGroup中的Channel Id是顺序的,而对应的An Channel Num可能不是顺序的。

Channel Range Select

这个配置是在Autosar规范中定义的。类型如下:

选项描述
ADC_RANGE_ALWAYS完全范围,独立于通道限制设置
ADC_RANGE_BETWEEN下限和上限之间的范围-包括高限制值
ADC_RANGE_NOT_BETWEEN超出上限或低于下限的范围-包括下限值
ADC_RANGE_NOT_OVER_HIGH范围低于高限值-包括高限值
ADC_RANGE_NOT_UNDER_LOW范围高于下限值
ADC_RANGE_OVER_HIGH范围高于上限值
ADC_RANGE_UNDER_LOW范围低于下限制-包括下限值

cfg中配置:(实际查看vector代码,这个配置好像没有起作用,根本没有定义,理论上来说这个应该是软件实现的,tc27x中没有这个相关寄存器配置)

Channel Ref Voltsrc High

通道的上参考电压,可以选择VAREF或CH0。由寄存器GxCHCTRy.REFSEL配置。
cfg中配置:

Channel Ref Voltsrc Low

通道的下参考电压,此处只能配置为VAGAND

Input Class Selection

选择采样时间和精度,TC27x可以选择全局也可以选择组,对应的寄存器为 GxICLASS0,GxICLASS1,GLOBICLASSy(x:0-7,y:0-1)
cfg中配置:(AdcKernelInputClass和AdcGlobInputClass配置项一样

总结

ADC一篇写不完了,之后再更新后面的配置吧,然后对转换过程进行全局的梳理。大部分配置项都是参考的用户手册和数据手册,主要根据Autosar规范,具体应用到芯片时,会有一些差异和扩展

参考资料:

Infineon-TC27x_D-step-UM-v02_02-EN.pdf

Infineon-TC27xDC-DataSheet-v01_00-EN.pdf

AURIX™公开课第15讲-逐次逼近模数转换器SAR ADC


若你觉得本文对你有帮助,欢迎点赞,关注,收藏,转发~~~
你的鼓励是对小弟的最大支持~~~
建了一个WX公众h,《汽车电子学习笔记》感兴趣可以关注一下~~~文章都会同步更新~

Autosar MCAL-S32K324Port配置-基于EB
赞的博客
07-15 845
Autosar MCAL配置之S32K324 Port配置详解,基于EB
AUTOSAR------ADC
weixin_39512905的博客
12-04 749
我这里对AUTOSAR做一个介绍-----------依据瑞萨RH850为案例做参考;源文件和C头文件(Adc_Cfg.h, Adc_Cbk.h和Adc_PBcfg.c输出文件)。ADC驱动组件包括嵌入式软件和生成工具两部分来实现可伸缩性和可配置性。本文章包含有关ADC驱动生成工具的选项、输入和输出文件的信息。本身和转换结果寄存器转换成一个实体,该实体可以通过ADC驱动程序单独控制和访问。它提供的服务分别启动和停止转换,以启用和禁用转换的触发源。ECU配置描述文件包含ADC的配置信息。
AUTOSAR MCAL ADC原理详解和配置应用
热门推荐
嵌入式软件实战派
07-21 1万+
本文从以下角度详细讲解MCAL ADC的原理、配置和使用: 基本概念 模块依赖 功能要求 工具配置 应用实现 ​ 1. 基本概念 ADC,即Analogue Digital Converter缩写。简单来说,它是将输入的模拟信号转换为数字信号输出。 提到转换,里面就会涉及到采样、精度、转换时间等概念或参数。 在AUTOSAR中,关于ADC的概念要先理解下 ADC Module ADC基础软件模块ADC Driver,也缩写为ADC ...
AURIX TC2XX 学习笔记(0)TC27x架构简介
最新发布
weixin_46739313的博客
08-20 947
好了扯远了,之所所以写这个学习笔记也是为了记录一些学习过程,让自己的心稍微静下来,另一方面将来有遗忘的地方我也可以回过头来温习一遍,温故而知新。你记它干嘛,用到的时候再去翻书去查资料就行,而且很多东西用多了就熟记于心了,想忘都忘不掉。关键是要去理解它的原理,就比如上面那个RAM和ROM,只读存储器和随机存取存储器,看字是不是又懵逼了,什么是只读,什么是随机存取?接上充电器发现百度网盘APP这个任务进程结束了,但是万幸的是你的“学习资源”依然存在,这个时候你很开心,又可以进行一场酣畅淋漓的学习了。
AUTOSAR MCAL解析: ADC
斯蒂芬杜的博客
07-22 1万+
MCAL模块解析 — ADC 1. 知识点概览 可能很多人认为ADC很简单。是的,ADC的工作原理很多人大概了解 ,但再简单的模块在AUTOSAR里面就没听说过简单的。先看看一张图吧,以下是我大概总结的一些ADC模块里面的概念,该图也只是尽量囊括主要概念,并非所有东西都能体现。下图只是列举的知识点,各个知识点之间有牵连,总之并没有你想的那么简单。本文也不会涉及到下图中的所有知识点,但会尽量将重要的知识点给大家讲解清楚。 2. Group/Channel/Hardware关系 首先来看看最常见的Group,
AUTOSAR-MCAL-CAN-IM.pdf
04-27
AUTOSAR-MCAL-CAN-IM.pdf》整合指南详细阐述了如何在S32K144微控制器上集成CAN驱动程序,该文档由EB公司编写,是针对S32K14X系列CAN驱动的MCAL配置手册。MCAL(Microcontroller Abstraction Layer)是AUTOSAR...
AUTOSAR-MCAL -CanDriver-UserMAnnual
04-19
AUTOSAR-MCAL - CanDriver-UserManual】是针对EB Tresos的CAN驱动用户手册,主要关注在32位TriCoreTM AURIXTM TC3xx微控制器上的Microcontroller Abstraction Layer (MCAL)软件的集成。该文档旨在帮助用户理解如何...
AUTOSAR-MCAL-FLS-UM.pdf
05-04
《S32K144的MCAL配置FLS手册》是针对NXP Semiconductors的S32K14X系列微控制器的一份详细技术文档,主要讲解了在AUTOSARAUTomotive Open System ARchitecture)环境下如何配置和使用FLS(Flash Memory Controller...
Autosar-Mcal配置详解-Can
easybook_zhu的博客
02-19 772
(1)发送节点Node_A比接收节点Node_B的时间慢了,也就是说Node_A当前位的ss段产生的时候,Node_B 当前位的ss段已经在2个Tq之前产生了;(3)这样就会导致接收节点Node_B的下一位能够提前2个Tq,从而Node_B的下一位采样点和Node_A下一位的采样点能够同步。(1)发送节点Node_A当前位的SS段诞生2Tq时长之后,接收节点Node_B的当前位才产生SS段;硬同步发生在报文的SOF位,所有接收节点调整各自当前位的同步段,使其位于发送的SOF位内;
AUTOSAR_MCAL_ADC.zip
08-14
基于NXP S32K144的MCAL ADC配置资料,用于在EB tresos上的驱动配置参考。 This User Manual describes NXP Semiconductors AUTOSAR Analog to Digital Converter ( Adc ) for S32K14X . AUTOSAR Adc driver configuration parameters and deviations from the specification are described in Adc Driver chapter of this document. AUTOSAR Adc driver requirements and APIs are described in the AUTOSAR Adc driver software specification document.
AUTOSAR_MCAL_ADC_IM.pdf
11-22
AUTOSAR_MCAL_ADC_IM.pdf
AUTOSAR_MCAL_ADC_UM.pdf
11-22
AUTOSAR_MCAL_ADC_UM.pdf
AUTOSAR_MCAL_CAN_UM.pdf
11-22
AUTOSAR_MCAL_CAN_UM.pdf
AUTOSAR_MCAL_SPI.zip
08-14
This User Manual describes NXP Semiconductors AUTOSAR Serial Peripheral Interface ( SPI ) for S32K14X . AUTOSAR SPI driver configuration parameters and deviations from the specification are described in SPI Driver chapter of this document. AUTOSAR SPI driver requirements and APIs are described in the AUTOSAR SPI driver software specification document.
Autosar】MCAL - ADC(NXP - S32K14x)
嵌入式小白
10-14 1966
Autosar】MCAL - ADC模块介绍:S32K146 ADC模块配置、功能介绍
Autosar MCAL-S32k324 Crypto配置-基于EB
赞的博客
04-27 509
NXP官网提供了免费的HSE固件,同时也提供了对应的协议栈。本文以算法为例,介绍MCAL相关的配置及在代码中的集成与使用。使用HSE计算,比软件算法确实方便许多。后面会完善更多的算法测试。
Autosar】MCAL - CAN(NXP - S32K14x)
嵌入式小白
11-22 4278
Autosar】MCAL - CAN模块介绍:S32k14x 芯片CAN模块收发原理介绍、mcal配置介绍
AUTOSAR MCAL概述
Anghuikeji的博客
12-20 1080
AUTOSAR分层架构模型中,最重要且最复杂的是基础软件层 (Basic Software Layer,BSW) ,将基础软件层进一步细化后,又分为微控制器抽象层(Microcontroller Abstraction Layer,MCAL)、ECU抽象层(ECU Abstraction Layer)、服务层(Services Layer)和复杂驱动(Complex Drivers)。该模块初始化和控制微控制器内部的模拟数字转换器单元,提供启动和停⽌转换的服务,以启⽤和禁⽤转换的触发器源。
写文章

热门文章

  • CANoe数据回放时数据不完整问题 11692
  • 基于can总线的A2L文件解析(1) 8983
  • Autosar MCAL-SPI配置及使用 8796
  • Test Sequence与Test Manager联合测试Simulink模型 8266
  • 15765-3/14229-1-UDS刷写Bootloader笔记 7439

分类专栏

  • S32K324开发进阶 付费 21篇
  • Autosar进阶 付费 63篇
  • CAN通讯上位机开发 付费 7篇
  • MISRA C 2012 8篇
  • S32K3学习笔记 9篇
  • RH850 1372 9篇
  • 自定义代码生成 11篇
  • TC277学习笔记 16篇
  • Autosar笔记 73篇
  • 软件测试 5篇
  • UDS诊断 4篇
  • MAB建模规范 4篇
  • STM32 8篇
  • 自定义硬件驱动 4篇
  • 自定义目标系统 5篇
  • CANoe数据回放 1篇
  • 正则表达式 1篇
  • dbc 1篇

最新评论

  • S32K324双核的核间通信使用示例

    赞哥哥s: mcal用的2.0.2,跟4.0.0差别挺大的

  • Autosar NvM配置-手动配置Nvblock及使用-基于ETAS软件

    行百里者做甚: 感谢耐心回复.你说的大致我是明白的,从nvblock这边配置可能更容易生成RTE这块操作接口. 我也参照你这篇文章做了配置,但是bsw nvm始终没有生成新的block配置,然后我尝试生成RTE, 也生成了 但是rte.c中read_block()和write_block()都没有copy这一步,还是有点问题。还是怀疑是没有生成block导致的,所以还是想问下在这块还有没有需要勾选其他哪里配置?另外你说的etas推荐的流程是这样的,这个可以参考哪个文档看看呢?

  • S32K324双核的核间通信使用示例

    逛公园第一名: 大佬,官方给的双核demo工程我没有在官网找到,在社区找到了一个22年的rtd2.0.0的demo这个差别大吗,我用的是rtd4.0. 可以问问你这个是哪个吗

  • Autosar NvM配置-手动配置Nvblock及使用-基于ETAS软件

    赞哥哥s: 1)nvblock就是为了生成bsw的nvm的,除了生成nvm配置外,还会生成操作nvm的接口。 etas推荐的流程是这样的,基本不需要手写多少代码,对应fee的配置也是自动生成的 2)有空我再完善下吧。

  • Autosar NvM配置-手动配置Nvblock及使用-基于ETAS软件

    行百里者做甚: 博主你好,在看了关于NVM配置这篇文章想问两个问题: 1)从NvBlock配置block和从BSW NVM配置生成NvRam Block有什么不同吗?或者说在哪些情况下要从NvBlock生成啊?一定要在NVM生成block cfg才能执行后续RTE的生成吗? 2)从NvBlock配置block属性这些操作能否再具体些,相信看这些资料都是新手有些操作还不是很清晰(比如如何删除RAM-ELEMENT、 生成NVM、RamBlock Renfence及RomBlock InitValue等) 以上也是在操作过程中遇到的问题,纯属个人理解望不要怪罪,感谢!

最新文章

  • Autosar Dcm开发-诊断报文请求网络管理报文的实现方法-基于ETAS软件
  • Autosar Dcm开发-诊断2E或31服务实现pending功能
  • RTA-OS Port Guide学习(二)-基于S32K324 OS
2024
09月 5篇
08月 8篇
07月 10篇
06月 8篇
05月 6篇
04月 7篇
03月 7篇
02月 1篇
01月 7篇
2023年70篇
2022年42篇
2021年18篇

目录

目录

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赞哥哥s

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家深圳卡通玻璃钢雕塑有哪些德州武城玻璃钢雕塑广东发光景观玻璃钢雕塑生产商玻璃钢动物牛雕塑公司推荐玻璃钢太极雕塑作品玻璃钢熊猫雕塑批发价格如何商场灯光美陈苏州盐城玻璃钢雕塑贵州商场美陈样式深圳兵马俑人物玻璃钢雕塑湖北步行街玻璃钢雕塑批发北京玻璃钢雕塑制造厂江西玻璃钢卡通雕塑价格范围山东玻璃钢海豚雕塑艺术摆件白山玻璃钢雕塑厂家定制下城区玻璃钢雕塑方案河北特色玻璃钢雕塑优势潍坊玻璃钢雕塑公司圣诞玻璃钢雕塑厂家临江玻璃钢气球雕塑选择好的玻璃钢花盆雕塑玻璃钢雕塑 湖南吉林佛像玻璃钢雕塑哪家便宜阳江玻璃钢花盆花器铜陵春节商场美陈兴安盟玻璃钢天鹅雕塑重庆小区玻璃钢雕塑定制包头玻璃钢雕塑联系方式北京玻璃钢雕塑厂家供应通用玻璃钢雕塑摆件研究香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化