AUTOSAR------ADC

我这里对AUTOSAR做一个介绍-----------依据瑞萨RH850为案例做参考;如果有AUTOSAR的相关问题欢迎留言讨论。

首先介绍下:ADC是驱动程序初始化和控制微控制器的内部模拟数字转换器单元。

它提供的服务分别启动和停止转换,以启用和禁用转换的触发源。此外,

它提供了启用和禁用通知机制的服务,以及查询状态和结果的例程

转换。

        ADC驱动程序在ADC通道上工作。ADC通道结合模拟输入引脚,所需的ADC电路

本身和转换结果寄存器转换成一个实体,该实体可以通过ADC驱动程序单独控制和访问。

        ADC驱动组件包括嵌入式软件和生成工具两部分来实现可伸缩性和可配置性。

        本章描述了ADC驱动生成工具的特性。ADC驱动生成工具是一个命令行工具

从ECU配置描述文件和BSWMDT文件中提取信息,生成ADC驱动程序C

源文件和C头文件(Adc_Cfg.h, Adc_Cbk.h和Adc_PBcfg.c输出文件)。

本文章包含有关ADC驱动生成工具的选项、输入和输出文件的信息。此外,使用工具的步骤。

ECU配置描述文件包含ADC的配置信息。

主要是 通过MCAL配置的动态库迁移到IDE内就行编译使用。

配置介绍如下

AdcAlreadyInitDetCheck 初始化检查AdcGeneral ADC通用设置
AdcCriticalSectionProtection 此参数指定是否可以通过在ADC驱动配置中添加预编译配置参数来禁用进入/退出临界区功能来减少ADC驱动的CPU负载         
AdcDeInitApi 从代码中添加/删除服务Adc_DeInit()。
AdcDevErrorDetect 打开或关闭开发错误检测和通知。
AdcEcmInterruptConsistencyCheck  该参数启用/禁用ECM中断一致性检查。
AdcEnableAdTimer  AD定时器触发特性控制逻辑组。
AdcEnableClkImmediateValue  该参数启用/禁用立即值方法。
AdcEnableDisableChSupport 从代码中添加/删除服务adc_enablecchannel()和adc_disablecchannel()。
AdcEnableDma  

此参数启用/禁用ADC驱动程序的DMA功能。

AdcEnableIdErr 启用或禁用ID错误。
AdcEnableLimitCheck 启用或禁用ADC驱动程序中的限制检查功能。
AdcEnableOverWriteErr 启用或禁用覆盖错误。
AdcEnableParityErr  启用或禁用奇偶校验错误。
AdcEnableQueuing 

确定在禁用优先级机制的情况下队列机制是否处于活动状态。

注意:如果启用了优先级机制,则队列机制始终处于活动状态,并且不计算参数ADC_ENABLE_QUEUING。

AdcEnableSelfDiag  在ADC驱动程序中启用或禁用自诊断。
AdcEnableStartStopGroupApi 从代码中添加/删除服务Adc_StartGroupConversion()和Adc_StopGroupConversion()。
AdcEnableStreaming 该参数启用/禁用流功能。AdcGeneral
AdcEnableTrackHold 启用或禁用ADC驱动程序中的跟踪和保持功能。
AdcEnableTriggerOverlapErr  启用或禁用触发器重叠错误。
AdcFunctionalityMode  

此参数提供功能模式的选择。

ADC_INTERRUPT_MODE:所有组将工作在中断模式。为parameter配置的值

容器AdcHwScanGroup中的AdcSgProcessingMode将被忽略,如果它不是配置为ADC_INTERRUPT_MODE)

ADC_POLLING_MODE:所有组将在轮询模式下工作。为parameter配置的值

容器AdcHwScanGroup中的AdcSgProcessingMode将被忽略,如果它不是ADC_POLLING_MODE配置的话)

ADC_POLLING_INTERRUPT_MODE:配置为ADC_POLLING_MODE的组将工作在轮询模式,配置为ADC_INTERRUPT_MODE的组将根据参数的配置工作在中断模式

AdcHwScanGroup容器中的AdcSgProcessingMode

AdcGrpNotifCapability  确定组通知机制(启用和禁用通知的函数)在运行时是否可用。
AdcHwTriggerApi  从代码中添加/删除服务Adc_EnableHardwareTrigger()和Adc_DisableHardwareTrigger()。
AdcHwUnitVirtualChannel 该参数指定硬件单元支持的虚拟通道数量。
AdcInterruptConsistencyCheck  该参数启用/禁用中断一致性检查。
AdcIsrCategory  该参数选择支持中断类别。
AdcPeNumber 

此参数指定用于此配置的PE类型。

用户应确保adcpennumber值与PE号对应。

AdcPriorityImplementation 

ADC_PRIORITY_NONE:无优先级机制。

ADC_PRIORITY_HW_SW:硬件和软件优先级

机制可用。

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

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

实现类型:Adc_ResultAlignmentType

AdcVersionCheckExternalModules 为模块间依赖项启用/禁用AUTOSAR版本检查。

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

AdcHwUnitId HW单元的数字ID。这个符号名允许访问Hw Unit数据。枚举字面值是特定于供应商定义的AdcHwUnit这个容器包含驱动程序配置(参数),这取决于通道的分组
AdcHwUnitResolution 该参数指定HW单元内所有信道的信道分辨率
AdcChannelId 通道IDAdcChannel
AdcEnableDmaTransfer 启用或禁用DMA传输。AdcGroup
AdcEnableWiringBreakDetection 启用或禁用接线断开检测。
AdcGroupAccessMode 

组转换结果的访问模式类型。

ImplementationType: Adc_GroupAccessModeType

ADC_ACCESS_MODE_SINGLE:单值访问模式。

ADC_ACCESS_MODE_STREAMING:流式访问模式

AdcGroupConversionMode 

驱动程序支持的转换模式类型。

ImplementationType: Adc_GroupConvModeType

ADC_CONV_MODE_CONTINUOUS:如果通道组映射到TG0,则在软件API调用(start)或硬件API调用(start)之后,ADC通道组的转换将持续进行。转换本身自动运行(不需要额外的软件或硬件触发器)。

ADC_CONV_MODE_ONESHOT:触发后执行一次ADC通道组的转换。

AdcGroupDefinition
AdcGroupId 

数字型组ID。该参数是要在API上使用的符号名称。此符号名称允许访问通道组数据。该值将分配给AdcGroup容器shortName派生的符号名称

ImplementationType: Adc_GroupType

AdcGroupTriggSrc 

启动组转换的源事件类型。

ImplementationType: Adc_TriggerSourceType

AdcScanGroup adc扫描组
AdcStreamingBufferMode ADC驱动程序继续转换模式 
AdcStreamingNumSamples 流式访问模式下每个通道要获取的ADC值的数量
AdcScanGroupId  adc扫描组IDAdcHwScanGroup 硬件扫描
AdcSGProcessingMode 

该参数选择SG单位转换方式。

ADC_INTERRUPT_MODE:映射到SG Unit的组将工作在中断模式。

ADC_POLLING_MODE:映射到SG Unit的组,将以轮询模式工作。

备注:配置该参数时,会考虑该参数的值

AdcGeneral容器中参数AdcFunctionalityMode的值配置为ADC_POLLING_INTERRUPT_MODE。

否则,如果AdcFunctionalityMode参数为AdcFunctionalityMode,则忽略该参数配置的值

在AdcGeneral容器中配置为ADC_INTERRUPT_MODE或ADC_POLLING_MODE

AdcSoftwareWaitTimeSelect 

该参数指定AdcSGSoftwareWaitTime选择。

0:表示禁用(执行虚拟通道前不插入等待)。

AdcHwTrigger硬件触发源AdcHwTriggerConfig 触发配置
ADC_E_TIMEOUT  该参数指定了对DemEventParameter的引用,该引用将在硬件错误导致超时时发出AdcDemEventParameterRefs
AdcChannelValueSigned ADC驱动的结果值是否有符号信息(true)或不(false)。如果结果需要解释为带符号的值,则应适用于c语言规则。AdcPublishedInformation 公共”已发布信息未涵盖的其他已发布参数。
AdcGroupFirstChannelFixed 

ADC通道组的第一个通道是否可以配置(false)或固定(true),由ADC HW单元决定。

true:固定ADC通道组的第一个通道。

false:可配置ADC通道组的第一个通道。

AdcMaxChannelResolution 以位为单位的最大通道分辨率(不指定精度)。

下面是一个案例---------------根据瑞萨系列的mcal 供参考:

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值