当前位置: 首页 > news >正文

基于TC377的MACL-ADC General配置解读

目录标题

    • 一、MACL-ADC General
    • 1.Config Variant与AdcConfigSet
    • 2. AdcGeneral
    • 3.AdcPublishedInformation
    • 二、最终对应达芬奇生成内容

一、MACL-ADC General

1.Config Variant与AdcConfigSet

你好! 这是你第一次使用 **Markdown编辑器** 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

Config Variant :变体配置,默认选择VariantPostBuild就好了;
选项:
VariantLinkTime: 链接时生效的参数。
VariantPreCompile:编译前生效的参数。
VariantPostBuild: 混合编译前以及编译后生效的参数。

AdcSyncClockDisable :此参数确定模拟时钟是否在同步/非同步模式下生成。转换器控制(CONVCTRL)时钟的配置由MCU驱动器完成;
AdcSystemClock :这个参数是指MCU驱动程序配置的系统时钟。使用这个系统时钟,给ADC组的计时器触发器重新加载值(触发器也是一个计时器,相当于ADC模块的计时器需要一个标准时间,系统时钟就是起到这个作用);

2. AdcGeneral

在这里插入图片描述
AdcDeInitApi :从代码中添加/删除服务Adc_DeInit(),若勾选,则可使用去初始化功能。

AdcDevErrorDetect :打开或关闭默认错误跟踪器(Det)的检测和通知。

AdcSafetyEnable:启用/禁用安全检查和所有相关通知;启用ADC驱动程序安全特性的预处理器开关。通过打开此开关,隐式地启用了这些安全功能:对API参数进行了范围检查;ADC配置结构有一个唯一的标记手段,该手段将由驱动程序验证;发布ADC驱动程序的安全使用情况,供用户设置相应的ADC设置。

AdcMultiCoreErrorDetect :从代码中添加/删除多核错误检测功能。

AdcInitCheckApi :从代码中添加/删除服务Adc_InitCheck(),该服务用于验证ADC驱动程序完成的初始化。

AdcEnableLimitCheck:启用或禁用ADC驱动程序中的限制检查功能;确定在优先级机制禁用的情况下,队列机制是否处于活动状态。(全局启用限制检查,若未启用,则AdcChannelHighLimit和AdcChannelLowLimit、AdcChannelRangeSelect不可用)

AdcEnableQueuing:确定在优先级机制禁用的情况下,队列机制是否处于活动状态;如果启用了优先级机制,则队列机制始终处于活动状态,而参数ADC_ENABLE_QUEUING不会被求值。

AdcEnableStartStopGroupApi :从代码中添加/删除服务Adc_StartGroupConversion()和Adc_StopGroupConversion()。

AdcGrpNotifCapability :确定组通知机制(启用和禁用通知的功能)在运行时是否可用。AdcNotification函数必须在该API启用时才可用。

AdcHwTriggerApi:从代码中添加/删除服务Adc_EnableHardwareTrigger()和Adc_DisableHardwareTrigger()。

AdcReadGroupApi :从代码中添加/删除服务Adc_ReadGroup()。

AdcVersionInfoApi :从代码中添加/删除服务Adc_GetVersionInfo()。

AdcStartupCalibApi:从代码中添加/删除服务Adc_GetStartupCalStatus()和Adc_TriggerStartupCal()。

AdcTriggerOneConversionEnable :该参数允许在API—Adc_TriggerStartupCal()中触发启动校准之前,为每个配置的HW单元执行一个虚拟转换。

AdcSyncConvEnable :支持ADC HW组之间的同步转换。

续上图
AdcPriorityImplementation
确定转换请求的优先级机制是否可用,如果可用,则确定优先级机制的类型。此选择适用于具有软件触发源和硬件触发源的组。
有三种优先级机制可以选择分别是:
AdcPriorityHw(硬件优先级机制):只有硬件优先级机制可用。
AdcPriorityHwSw:硬件和软件优先级都可用。
ADC_PRIORITY_NONE :优先级机制不可用。
软件触发组的组优先级通常配置为低于硬件触发组的组优先级级别。

AdcResultHandlingImplementation
确定ADC驱动程序的结果处理模式。
ADC_INTERRUPT_MODE_RESULT_HANDLING:转换结果在请求源ISR (AUTOSAR模式)中传输。
ADC_DMA_MODE_RESULT_HANDLING:使用DMA通道传输转换结果。ADC_POLLING_MODE_RESULT_HANDLING:使用同步api传输转换结果。

AdcResultAlignment
ADC结果缓冲区中的ADC原始结果对齐方式(左/右对齐)。

AdcMaxChConvTimeCount (0 -> 16962)
在转换请求停止时,A/D转换器中正在进行的信道转换不能立即停止。相反,软件需要等待信道转换完成。为了确保转换器处于空闲状态,需要对转换器状态轮询进行等待,其最大等待时间由AdcMaxChConvTimeCount中输入的值定义。

AdcSleepMode
该参数决定ADC驱动程序是否接受或拒绝来自SCU的休眠模式请求。
ADC_SLEEP_MODE_ACCEPT: 接受SCU的睡眠模式请求 。
ADC_SLEEP_MODE_REJECT: 拒绝SCU的睡眠模式请求。

AdcSupplyVoltage
该参数将模拟电路调整到所选的电源电压,该参数的默认值为对应SFR的重置值。
ADC_VOLTAGE_3P3V: 3.3V固定电源接通。
ADC_VOLTAGE_5V: 固定5V电源接通。
ADC_VOLTAGE_CONTROLLED_BY_SUPPLY: 电压范围由电源控制。

AdcRuntimeApiMode
参数定义运行时api将在其中操作的特权模式。
由于ADC驱动程序访问SFRs,在监控器模式下操作ADC驱动程序更加高效。因此,默认的操作模式是supervisor。
当AdcInitDeInitApiMode配置为User-1模式时,AdcRuntimeApiMode必须配置为User-1模式。

AdcInitDeInitApiMode
配置参数定义初始化和反初始化api将在其中操作的特权模式。
由于ADC驱动程序访问SFRs,在监控器模式下操作ADC驱动程序更加高效。因此,默认的操作模式是supervisor。

3.AdcPublishedInformation

在这里插入图片描述

AdcPublishedInformation
关于PublishedInformation(发布信息)
这个模块包含了由BSW模块的实现者定义的数据,当模块适应(即配置)到实际的硬件和软件环境时,这些数据不会改变。它包含版本和制造商信息。这对于为每个BSW提供明确的版本标识是必要的模块。这个模块一般不用配置,保持默认即可,因为主要与硬件相关的部分有关。

二、最终对应达芬奇生成内容

在这里插入图片描述
De Init Api:实现去初始化功能的API。

Dev Error Detect:实现错误检测功能。

Enable Queuing:队列机制,只有在AdcNonAutosarDmaResultHandling is false [STD_OFF]
AdcPriorityImplementation(15) is ADC_PRIORITY_NONE. 这种情况下才能编辑。
排队机制被禁用的话,则一次只处理一个转换。

Enable Start Stop Group Api:启用AdcGroup功能的API,必须勾选。

Grp Notif Capablility:使能ADC的通知函数功能的API。

Hw Trigger Api:实现硬件触发功能。

Init Check Api:验证ADC驱动程序的初始化是否完成。

Init De Init Api Mode:选择反初始化API的模式,默认的操作模式为ADC_MCAL_SUPERVISOR。

Max Ch Conv Time Count:对转换器状态轮询进行等待的最大等待时间,要确保下一次转换开始的时候,上一次的转换已经完成,转换器已经进入了空闲状态, 默认值10000。

Multi Core Error Detect:实现错误检测功能。

Priority Implementation:三种优先级机制。

Read Group Api:启用AdcGroup功能的API,必须勾选。

Result Alignment:ADC结果缓冲区中,ADC原始结果的对齐方式(左/右对齐)。举例如下:
在这里插入图片描述

Result Handling Implementation:确定ADC驱动程序的结果处理模式。
ADC_INTERRUPT_MODE_RESULT_HANDLING:中断模式传输,转换结果在请求源ISR (AUTOSAR模式)中传输。
ADC_DMA_MODE_RESULT_HANDLING:使用DMA通道模式传输转换结果。 ADC_POLLING_MODE_RESULT_HANDLING:轮询模式,使用同步api传输转换结果。

Runtime Api Mod:参数定义运行时api将在其中操作的特权模式。
由于ADC驱动程序访问SFRs(特殊功能寄存器),在监控器模式下操作ADC驱动程序更加高效。因此,默认的操作模式是ADC_MCAL_SUPERVISOR。
当Init De Init Api Mode配置为User-1模式时,Runtime Api Mode必须配置为User-1模式。

Safety Enable:安全使能。

Sleep Mode:该参数决定ADC驱动程序是否接受或拒绝来自SCU的休眠模式请求。
ADC_SLEEP_MODE_ACCEPT: 接受SCU的睡眠模式请求 。
ADC_SLEEP_MODE_REJECT: 拒绝SCU的睡眠模式请求。
SCU(system control Unit):负责处理系统控制任务。

Startup Calib Api(启动校准功能):从代码中添加/删除服务Adc_GetStartupCalStatus()和Adc_TriggerStartupCal()

Supply Voltage:该参数将模拟电路调整到所选的电源电压。

Sync Conv Enable :启用或禁用ADC硬件组之间的同步转换。

Trigger One Conversion Enable:该参数允许在API Adc_TriggerStartupCal()中触发启动校准之前,为每个配置的HW单元执行一个虚拟转换。

Version Info Api:获取版本信息。

相关文章:

基于TC377的MACL-ADC General配置解读

目录标题一、MACL-ADC General1.Config Variant与AdcConfigSet2. AdcGeneral3.AdcPublishedInformation二、最终对应达芬奇生成内容一、MACL-ADC General 1.Config Variant与AdcConfigSet Config Variant :变体配置,默认选择VariantPostBuild就好了&…...

error: src refspec master does not match any.处理方案

问题描述 在使用git bash指令将项目上传到github时,总是遇到一些错误无法解决。 下面是我遇到的一个问题 error: src refspec master does not match any. error: failed to push some refs to XXXX.git 原因分析: 错误:SRC ReFSPEC主控器不…...

防火墙有关iptables的知识点

基本概念 什么是防火墙 在计算中,防火墙是基于预定安全规则来监视和控制传入和传出网络流量的网络安全系统。该计算机流入流出的所有网络通信均要经过此防火墙。防火墙对流经它的网络通信进行扫描,这样能够过滤掉一些攻击,以免其在目标计算机…...

路肩石水渠机在施工公路项目中工艺特点的匹配

新建公路路肩项目在目前公路项目中的技术手段和实现方式,大多数依靠机械设备来机械来进行,还有一部分通过人工传统的预制作业和安装模式来进行,两种工艺特点的对比来说对于补充完善建设手段和效果实现有很重要的意义. 其中采用了机械设备进行一次成型制作的过程,按照设计需求匹…...

JS 动态爱心(HTML+CSS+JS)

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...

钉钉配置事件订阅(Python)

钉钉配置事件订阅 0.需求分析 需要实现钉钉企业通讯录同步至企业微信通讯录,这就需要用到钉钉的事件与回调 1.配置应用 登陆开放平台 https://open-dev.dingtalk.com/去企业内部开发里面,先创建个应用,后面都借用这个应用来调接口 创建完…...

Linux-Udev机制

一:Udev概述 udev 是一个用户空间的设备管理器,用于为事件设置处理程序。作为守护进程, udev 接收的事件主要由 linux 内核生成,这些事件是外部设备产生的物理事件。总之, udev 探测外设和热插拔,将设备控制权传递给内核,例如加载内核模块或设备固件。udev 是一个用户空…...

ERP是什么?中小商户有必要用吗?秦丝、金蝶、管家婆哪家强?

ERP系统刚开始传入中国的时候,基本上只有超大型或大型企业有条件实施,不过最近几年随着小微企业、中小商户的信息化需求不断增长,ERP软件已慢慢被普遍使用。但是仍然有不少中小商户,还没搞清楚ERP到底是什么,看到大家都…...

pytorch离线安装

windows下离线安装pytorch,很多内网机,无法连接外网,只能下载whl文件进行离线安装下载pytorch,地址https://download.pytorch.org/whl/torch_stable.html我是windows,Python37,没有gpu,所以选择…...

数据结构-算法的时间复杂度(1.1)

目录 1. 算法效率 2. 时间复杂度 2.1 时间复杂度的概念 2.2 大O的渐进表示法 2.3 举例说明: 写在最后: 1. 算法效率 我们该如何判断一个算法的好坏? 衡量一个算法的好坏,是从时间和空间两个维度比较的, 而今天…...

Cygwin安装与Mingw

共同点:window下编译环境 区别:cygwin(gnu windows)模拟Linux编译环境, mingw模拟window编译环境,生成.exe可执行文件 目录 Cygwin安装 一、官网下载 二、双击安装 三、选择安装路径后,到连接方式如图 四、添加连…...

教育舆情监测方案有哪些,TOOM讲解教育舆情的应对与处理?

教育舆情方案是针对教育领域的舆情事件或问题而制定的应对方案。其主要目的是通过有效的信息收集、分析、处理和传播,帮助教育机构或相关组织及时掌握和应对公众舆论的发展趋势,维护良好的舆情形象和声誉,教育舆情监测方案有哪些,…...

c语言操作文件

1、文件缓冲区 文件缓冲区的目的:提高访问效率 提高磁盘使用寿命 刷新就是将当前缓冲区数据全部提交。 不刷新时,程序在崩溃时缓冲区内容无法输出(有些情形会带来错误) 文件缓冲区的四种刷新方式 行刷新(遇到换行符…...

【C语言】初识指针

目录 一、指针是什么 二、指针和指针类型 三、野指针 四、指针运算 五、指针和数组 六、二级指针 七、指针数组 一、指针是什么 指针就是内存地址,指针变量是用来存放内存地址的变量,在同一CPU构架下,不同类型的指针变量所占用的存储单元长度…...

FFMPEG自学一 音视频解封装

一、音视频包含哪些数据对于一个mp4文件我们可以通过音视频分析软件打开查看内部信息。从两图可以看出mp4文件一般包含 音频流 视频流等。对于上面的字段大致分析如下Format编码方式AVC现在大部分视频都是这种编码方式,即H264。CodecId编码器idavc1H264封装有2种格式…...

HoloLens 2 丨打包丨MRTK丨Unity丨新手教学

HoloLens 2打包流程制作前言开发工具介绍Visual Studio 2019MRTK插件或示例程序下载打包流程介绍Unity操作修改Visual Studio修改Hololens 修改Hololens 密码忘记总结前言 提示:今日功能介绍 使用 MRTK制作hololens 2的打包流程制作的新手教学。 开发工具介绍 这…...

AcWing语法基础课笔记 第四章 C++中的数组

第四章 C中的数组 程序 逻辑 数据,数组是存储数据的强而有力的手段。 ——闫学灿 一维数组 数组的定义 数组的定义方式和变量类似。 数组的初始化 在main函数内部,未初始化的数组中的元素是随机的。 访问数组元素 通过下标访问数…...

UTF小结

运行测试 编辑测试 运行模式:程序集Platform平台选择 Any Platforms编辑模式:程序集Platform平台选择 Editor 特性 Test、UnityTest特性:测试方法需要添加Test或UnityTest特性,测试方法是公有的SetUp、TearDown特性&#xff1a…...

(考研湖科大教书匠计算机网络)第四章网络层-第六节3:开放最短路径优先OSPF的基本工作原理

获取pdf:密码7281专栏目录首页:【专栏必读】考研湖科大教书匠计算机网络笔记导航 文章目录一:OSPF概述(1)概述(2)细节阐述A:链路状态和代价B:问候分组和邻居表C&#xff…...

积水在线监测仪——积水点、易涝点水位监测设备

一、设备概述 积水在线监测仪是一款用于城市积水点、易涝点等场景的水位监测设备,设备采用电池供电,无需另外供电,安装方便,使用简单。可以时监测水点、易涝点水位情况,当水位数据超过阈值后触发告警上传,…...

GitHub 被分号击穿信任防线,AI 逆向工具敲响闭源系统安全警钟

GitHub 被分号击穿三层信任,AI 填平逆向护城河敲响闭源系统安全警钟 2026 年 3 月 4 日,GitHub 收到 Wiz 通过 Bug Bounty 提交的报告,报告描述的攻击入口极其简单:一条构造过的 git push,带一个 push option&#xff…...

告别编译迷茫:手把手教你读懂UEFI固件开发中的DSC文件(以EDK2 vUDK2018为例)

告别编译迷茫:手把手教你读懂UEFI固件开发中的DSC文件(以EDK2 vUDK2018为例) 当你第一次打开EDK2项目中的DSC文件时,是否被那些看似杂乱无章的配置项和宏定义搞得晕头转向?作为UEFI固件开发的核心配置文件,…...

三指拖拽革命:在Windows上解锁macOS级触控板体验的终极指南

三指拖拽革命:在Windows上解锁macOS级触控板体验的终极指南 【免费下载链接】ThreeFingersDragOnWindows Enables macOS-style three-finger dragging functionality on Windows Precision touchpads. 项目地址: https://gitcode.com/gh_mirrors/th/ThreeFingersD…...

基于LangGraph与LLM的对话式BI工具OpenChatBI实战部署指南

1. 项目概述:当自然语言对话遇见数据分析 如果你和我一样,每天都要和数据仓库、BI报表打交道,那你肯定也经历过这样的场景:业务同事跑过来问,“帮我看看过去一周的CTR趋势”,或者“对比一下这两个渠道的转化…...

容器技术从入门到精通:Docker核心概念、Dockerfile与生产实践全解析

1. 项目概述:从零到一构建容器化认知体系最近在技术社区里,经常看到有朋友在讨论stephrobert/containers-training这个仓库。乍一看,这像是一个个人或团队维护的关于容器技术的培训材料。对于刚接触 Docker 和容器生态的开发者、运维工程师&a…...

基于 HM-TM32 红外摄像头:棉花燃烧+起火自动录制 30 秒视频

在棉花仓储、纺织原料监测等实际场景中,利用 HM-TM32 微型红外测温机芯实现非接触式火情监测具备极高的实用价值,本文基于 Windows 笔记本环境,实现红外摄像头实时画面显示,并在检测到棉花起火或高温异常时自动录制 30 秒视频留存…...

OpenClaw Deck:为Steam Deck打造开源模块化工具集

1. 项目概述:一个为Steam Deck量身定制的开源工具集如果你是一位Steam Deck的深度用户,大概率经历过这样的场景:想在掌机上玩一些非Steam平台的游戏,或者想对系统进行一些深度定制,却发现官方系统虽然稳定,…...

从“按钮太小”看硬件设计:如何平衡参数竞赛与用户体验

1. 从一场工程师的幽默竞赛说起最近在整理旧资料时,翻到一篇2013年EE Times上的趣闻,讲的是他们每月一次的“标题党”(Caption Contest)竞赛。四月份那期的主题是一幅漫画,画的是一个工程师站在一个巨大的智能手机原型…...

技能图谱探索器:从数据建模到交互可视化的全栈实现

1. 项目概述:一个技能图谱的探索工具最近在GitHub上看到一个挺有意思的项目,叫nitzzzu/openclaw-skills-explorer。光看名字,openclaw和skills-explorer这两个词就挺有画面感的。我第一反应是,这应该是一个用来探索、梳理或可视化…...

5大核心功能揭秘:GTA5线上小助手如何彻底改变你的洛圣都冒险体验

5大核心功能揭秘:GTA5线上小助手如何彻底改变你的洛圣都冒险体验 【免费下载链接】GTA5OnlineTools GTA5线上小助手 项目地址: https://gitcode.com/gh_mirrors/gt/GTA5OnlineTools 你是否厌倦了在GTA5线上模式中花费数小时完成重复任务?是否希望…...