IoHwAb产品参考手册

缩写词注解

缩写词

英文全称

中文解释

IoHwAb

Input Output Hardware Abstraction

输入输出硬件抽象

SWC

Software Component

软件组件

RTE

Real-Time Running Environment

实时运行环境

BSW

Basic Software

基础软件

BSWMD

Basic SoftWare Module Description

基础软件模块描述

OS

Operating System

操作系统

MCAL

Microconroller Abstraction Layer

微控制器抽象层

MMU

Memory Management Unit

内存管理单元

ADC

Analog-to-Digital Converter

模拟-数字转换器

ICU

Input Capture Unit

输入捕获单元

DIO

Digital Input Output

数字输入输出

PWM

Pulse Width Modulation

脉冲宽度调制

OCU

Output Comparison Unit

输出比较单元

SPI

Serial Peripheral Interface

串行外设总线

GPT

General Purpose Timer

通用定时器

C/S

Client - Server

客户端-服务端组件

S/R

Sender/Receiver

发送端/接收端

CDD

Complex device driver

复杂设备驱动

DET

Default Error Tracer

默认错误跟踪器

ECU

Electronic Control Unit

电子控制单元

MCU

Micro Controller Unit

微控制器单元

AUTOSAR

AUTomotive Open System ARchitecture

汽车开放系统架构

API

Application Programming Interface

应用编程接口

HW

Hardware

硬件

SW

Software

软件

ISR

Interrupt Service Routine

中断服务例程

XML

Extensible Markup Language

可扩展标记语言

简介

本文档作为IoHwAb模块软件产品的使用手册,详细介绍了IoHwAb模块的功能、使用约束以及定制开发方法,使用户可以尽快熟悉并使用IoHwAb模块。

AUTOSAR规范中明确指出IoHwAb模块是ECU抽象层的一部分。IoHwAb模块不应该被认为是一个单一的模块,因为它可以被实现为多个模块。IoHwAb模块不对外设组件进行标准化,它是一份与其他模块一起实现其功能接口的指南。IoHwAb模块的目的是通过将IoHwAb模块端口映射到ECU信号来提供对MCAL驱动程序的访问。提供给SWC的数据完全是从物理层抽象出来的。因此,SWC设计人员不再需要详细了解MCAL驱动程序的API和物理层的单元。

IoHwAb模块是对ECU的特定实现,因为SWC对BSW的需求必须匹配特定的MCAL所实现的特性。IoHwAb模块应该为初始化整个IoHwAb模块提供服务。

参考资料

[1] AUTOSAR_SRS_ADCDriver.pdf 4.2.2

[2] AUTOSAR_SWS_ADCDriver.pdf 4.2.2

[3] AUTOSAR_SRS_DIODriver.pdf 4.2.2

[4] AUTOSAR_SWS_DIODriver.pdf 4.2.2

[5] AUTOSAR_SRS_ICUDriver.pdf 4.2.2

[6] AUTOSAR_SWS_ICUDriver.pdf 4.2.2

[7] AUTOSAR_SRS_PWMDriver.pdf 4.2.2

[8] AUTOSAR_SWS_PWMDriver.pdf 4.2.2

[9] AUTOSAR_SRS_GPTDriver.pdf 4.2.2

[10] AUTOSAR_SWS_GPTDriver.pdf 4.2.2

[11] AUTOSAR_SRS_PortDriver.pdf 4.2.2

[12] AUTOSAR_SWS_PortDriver.pdf 4.2.2

[13] AUTOSAR_SRS_OCUDriver.pdf 4.2.2

[14] AUTOSAR_SWS_OCUDriver.pdf 4.2.2

[15] AUTOSAR_SRS_SPIHandlerDriver.pdf 4.2.2

[16] AUTOSAR_SWS_SPIHandlerDriver.pdf 4.2.2

[17] AUTOSAR_SRS_MCUDriver.pdf 4.2.2

[18] AUTOSAR_SWS_MCUDriver.pdf 4.2.2

[19] AUTOSAR_SRS_IOHWAbstraction.pdf R22-11

[20] AUTOSAR_SWS_IOHardwareAbstraction.pdf R22-11

[21] AUTOSAR_SRS_RTE.pdf R19-11

[22] AUTOSAR_SWS_RTE.pdf R19-11

功能描述

IoHwAb功能

IoHwAb功能介绍

如图所示IoHwAb位于MCAL驱动程序之上,也就意味着IoHwAb将调用驱动程序的API来管理芯片设备。MCAL驱动程序的配置取决于SWC所需的ECU信号的质量。例如,当PIN引脚电平发生相关变化(上升沿,下降沿)时,可能需要通知用户。系统设计者必须配置MCAL驱动程序以允许给定信号的通知。通知由MCAL驱动程序生成,并在IoHwAb模块中处理。

image1

图2-1 Interfaces with MCAL drivers

IoHwAb功能实现

IoHwAb模块为SWC提供对所有MCAL驱动程序的抽象API访问。

表2-1 IoHwAb组件抽象状况

组件

功能

** MC AL d ri ve rs **

D IO

P ORT

PWM

ICU

ADC

SPI

OCU

G PT

C DD

I O硬件抽象

D ig it al

Pwm

Cap ture

An alog

Bus

Co mpare

T im

D ev

I O抽象服务

×

×

×

×

中断 通知机制

×

×

×

×

×

说明:√表示实现了抽象功能并关联MCAL对应驱动程序;×表示暂时没有实现抽象功能并关联MCAL对应驱动程序。

IoHwAb模块提供SWC访问ADC的接口。主要用于启动和停止ADC驱动程序对模拟信号的数字量转化功能;使能和禁止ADC驱动程序中断通知;使能和禁止ADC驱动程序硬件触发功能;设置ADC驱动程序采样结果目标缓冲区;提取ADC驱动程序的采样结果。

IoHwAb模块实现和提供SWC访问DIO的接口。主要用于设置和获取DIO驱动程序对数字信号的通道电平;对数字信号的端口电平;对数字信号的端口组电平,提取DIO驱动程序的通道电平翻转状态。

IoHwAb模块实现和提供SWC访问PWM的接口。主要用于使能和禁止PWM驱动程序中断通知;设置PWM驱动程序输出为IDLE状态;提取PWM驱动程序的输出状态;设置PWM驱动程序输出占空比;设置PWM驱动程序输出周期和占空比。

IoHwAb模块实现和提供SWC访问ICU的接口。主要用于使能和禁止ICU驱动程序的中断通知;使能和禁止ICU驱动程序的边沿检测功能;使能和禁止ICU驱动程序的边沿计数功能;设置ICU驱动程序复位边沿计数器;获取ICU驱动程序的边沿计数器;启动和停止ICU驱动程序的时间戳功能;获取ICU驱动程序的时间戳索引;获取ICU驱动程序的消逝时间值;启动和停止ICU驱动程序的信号测量功能;获取ICU驱动程序的输入状态;获取ICU驱动程序对信号测量的占空比结果。

软件编码主要采用C语言,还有少量的汇编语言。另外,充分考虑车载软件的特殊应用环境,编码规则严格按照汽车制造业嵌入式C编码标准-MISRA-C:2012 执行,以保证IoHwAb模块安全可靠。

ECU信号的抽象

IoHwAb模块无法为SWC提供标准化的AUTOSAR接口,因为它与上层的接口强烈依赖于信号采集链。相反,IoHwAb模块提供了AUTOSAR服务接口。而这些AUTOSAR接口都是来自于ECU输入或寻址到ECU输出的实际电信号的抽象。另外,有些电信号也可能来自其他ECU或被发送到其他ECU。

端口PORT是AUTOSAR组件的入口点。它们由AUTOSAR接口表示,并映射到对应ECU信号。ECU信号的来源针对于硬件平台互换性的必要性。

image2

图2-2 ECU signal description

IoHwAb模块处理所有直接连接到ECU的输入和输出。它包括所有的输入和输出,直接映射到微控制器端口或板载外围设备。在考虑所提供的接口时,微控制器和外设之间的所有通信都被IoHwAb模块所隐藏。

ECU信号表示一个电信号,意味着至少有一个输入或输出ECU引脚被IO硬件抽象所映射。通过软件抽象ECU引脚,可以把输入和输出识别为电信号。本文档中所定义的一切都与电信号概念有关,统一由IoHwAb模块进行服务。具有相似行为的电信号可以归为一个类,并通过IO硬件抽象以ECU信号的形式来进行关联,然后提供给SWC用户使用。

ECU信号的属性

每个ECU信号的特征描述都是由SWC定义的,但必须为每个信号添加一些属性,以提供SWC所期望的信号质量。

所有通过IoHwAb模块处理的ECU信号都依赖于ECU硬件设计。意味着设置ECU输出信号的时间和获得ECU输入信号的时间不可能在同一时间进行控制。因此,为了保证各种ECU信号的控制行为,定义了一个通用的年龄属性,并对每个ECU信号进行配置。

所有ECU信号都应该有一个年龄属性,根据ECU信号的方向(输入/输出),年龄属性有两个具体的名称。对于ECU输入信号,年龄属性的具体功能是限制信号的生存期,其值定义了该信号数据的最大允许年龄,如果生存期为0,则必须立即从物理寄存器中检索该信号,如果生存期大于0,则信号在指定的时间内有效;对于ECU输出信号,年龄属性的具体功能是限制信号输出到最大延迟,其值定义了该信号实际设置之前允许的最大时间,如果延迟为0,则必须立即将信号设置到物理寄存器,如果延迟大于0,信号可以设置到配置的时间已经过去。

和其他软件组件SWC一样,IoHwAb模块可以是子结构的,取决于ECU的复杂程度。IoHwAb模块是一个经典的组件原型,可以是原子的,也可以是组合的,它提供需求接口。此外,IoHwAb模块只能通过它们的PortPrototypes与RTE之上的其他软件组件进行交互。不允许使用PortPrototypes表示的隐藏依赖项。

IoHwAb模块一方面通过标准化的AUTOSAR接口连接于MCAL驱动程序,另一方面通过RTE连接SWC服务组件和应用组件。IoHwAb模块的服务组件在SWC配置工具中通过EcuAbstractionSwComponentType组件实现为一个或多个IO硬件抽象服务实例,一个EcuAbstractionSwComponentType的实例化提供了一组端口,在生成RTE时,只考虑那些与软件组件建立连接的IO信号;IoHwAb模块的应用组件在SWC配置工具中通过ApplicationSwComponentType组件实现为一个或多个IO硬件抽象服务实例,一个ApplicationSwComponentType的实例化提供了一组端口,在生成RTE时,只考虑那些与软件组件建立连接的IO信号。

软件组件具备实现策略和内部行为的功能,其功能是通过Runnable来描述的,前者包含在Runnable中,后者取决于Runnable的设计,Runnable由原子软件组件提供,是底层操作系统调度的对象。每个原子软件组件的实现必须在其内部行为中为每个可运行的Runnable提供一个入口点。

Runnable实体是最小的代码片段,可以独立激活。它们由原子软件组件提供并由RTE激活,Runnable被设置为响应服务器上的数据交换或操作调用。

Runnable实体有三种可能的状态:Suspended、Enabled和Running。在运行时,原子软件组件的每个Runnable都处于这些状态之一。

每个BSW模块都可以提供BSW可运行的实体,在RTE规范中也称为BswModuleEntity。BswModuleEntity相当于SWC运行的实体,Runnable实体是一个原子软件组件可以执行和计划独立于原子软件组件的其他运行的实体。意味着IoHwAb模块可以同时使用Runnable调度和BSW调度。Runnable调度处理可运行实体,是强制性的。与可运行调度不同,BSW调度是可选的,与BSW调度程序的接口必须手动完成。对于SWC可运行实体,可以在AUTOSAR OS任务体中被调用,SWC可运行项的激活强烈依赖于RTE事件。与SWC通常被RTEEvents激活的方式一样,可调度的BswModuleEntities也可以被BswEvents激活。还有一种BswModuleEntity可以在中断上下文中激活。

从接口的角度描述IoHwAb模块,实现由SWC定义的PortInterfaces的对等物提供Runnable实体,并实现SWC所需的端口映射提供(Server-Client端口,或者Sender/Receiver端口)。

IoHwAb模块提供端口服务的实现是ECU特定的,对应的PortInterface的映射应在软件组件描述中归档化。对于与PortInterface相关联的ECU信号配置为输入信号,IoHwAb模块应提供一个GET操作,其操作的API简短名称可以由用户来决定;对于ECU信号与PortInterface相关联的配置为一个输出信号,IoHwAb模块应该提供一个SET操作,其操作的API短名称可以由用户来决定;IoHwAb模块通过定义BswInterruptEntities来实现通知回调机制,在中断上下文中与RTE下面的其他模块进行交换数据,实现时需要必须考虑回调函数将在中断上下文中执行;回调函数还可以提供在IoHwAb模块之外触发软件组件的能力,其通知需要通过RTE进行处理;可用回调函数的数量和执行顺序将取决于实现,并且必须在IoHwAb模块BSWMD中记录。

通过RTE路由的IoHwAb模块的回调函数函数的函数原型应按照以下规则实现:Std_ReturnType Rte_Call_ < p > _ < o >(<parameters>)

回调函数必须与RTE的Rte_Call_<p>_<o>的API兼容,以使AUTOSAR服务和IO硬件抽象的类型安全配置和实现。

IoHwAb模块可以包含一个或几个作业任务处理主函数,由BSW调度程序定时触发,也可以同步到其他可运行实体的执行。BswSchedulableEntities的数量和它们的执行顺序将依赖于实现,并且必须在IoHwAb模块描述中记录。

IoHwAb模块定义BswModuleEntries与外部中断上下文RTE以下的其他软件进行交换数据,如BSW初始化/反初始化;这些BswModuleEntries被链接到一个专用的BswModuleEntity,它将被调用来执行服务/交换数据。IoHwAb模块可以包含一个或几个初始化和反初始化函数。与MCAL驱动类似,初始化函数应该包含一个参数,以便能够将不同的配置传递给设备驱动程序。这个函数将IoHwAb模块驱动程序使用的所有局部和全局变量初始化到初始状态;初始化/反初始化功能应由ECU状态管理器进行处理。可用函数的数量和执行顺序是依赖于实现的,必须在IoHwAb模块描述中记录下来。

软件组件架构

image3

图2-3 IoHwAb模块的软件架构

IoHwAb软件功能的基本组成部分包括:微控制抽象层MCAL、IoHwAb硬件抽象组件实现层、IoHwAb硬件抽象信号映射层、IoHwAb硬件抽象服务组件、ECU抽象服务端软件组件SWC、输入输出抽象客户端软件组件SWC等。

image4

图2-4 IoHwAb模块的在AUTOSAR软件架构中的位置

信号映射机制和数据流

image5

图2-5 AUTOSAR ECU Software Architecture

image6

图2-6 Example of IoHwAb runnables

image7

图2-7 Interfaces between hardware and software

当ECU外部挂接设备和IO硬件抽象进行连接时,并通过IO服务组件的形式与用户层SWC进行交互,而这种情况下都是先实现CDD复杂设备驱动并支持SPI组件的通信抽象,然后CDD与IoHwAb进行交互,IO硬件抽象实现标准的服务组件API接口给应用组件SWC使用。

image8

图2-8 Sensor and Actuator Signal Flow

image9

图2-9 Sequence diagram - ADC conversion

当上层应用组件需要对MCAL进行模拟信号-数字量转换时,可以通过以上时序进行时序控制;首先,EcuM_Init接口的驱动初始化流程需要调用Adc_Init函数执行ADC组件的初始化,调用Adc_EnableNotification函数执行ADC组件的中断通知使能;然后,上层如果需要使用ADC组建的资源,可以调用相应的服务简介调用ADC组件的Adc_StartGroupConversion函数来启动AD转换;最后,当中断服务函数或轮询接收到AD转换完成,可以通过调用Adc_ReadGroup函数获取转换结果,并拷贝到指定缓冲区。

AUTOSAR方法论

image10

图2-10 AUTOSAR工具链方法论

内存分配

在IO硬件抽象模块中,内存使用上大概分为静态代码部分的代码段,占用一定内存的Code Flash存储空间;静态代码部分的数据段,占用一定内存的RAM存储空间;配置代码部分的代码段,占用一定内存的Code Flash存储空间;配置代码部分的数据段,占用一定内存的RAM存储空间。

源文件描述

image11

图4-1 IoHwAb组件文件组织结构描述

表4-1 IoHwAb组件文件描述

文件

说明

IoHwAb_Types.h

IoHwAb模块头文件,包含了IoHwAb模块 和ECU信号映射描述相关的数据类型和宏定义

IoHwAb_Drv_Cfg.h

定义IoHwAb模 块预编译时用到的配置参数,用于选择性对 MCAL组件进行抽象,以及MCAL接口重映射。

IoHwAb_Cfg.h

定义Io HwAb模块预编译时用到的配置参数,用于MCA L组件信号通道的重映射定义和IO信号统计。

IoHwAb_PbCfg.c

定义IoHwAb模块中连接时用 到的配置参数,用于进行信号映射的查表。

IoHwAb_Digital.c

Io HwAb模块与Dio组件交互相关的源文件,包含 了API函数的实现和变量的定义,用于处理数 字量电平输入输出信号映射的IO硬件抽象。

IoHwAb_Digital.h

IoHwAb模块与Dio组件交互相关的头文件 ,包含了API函数和变量的声明,用于处理数 字量电平输入输出信号映射的IO硬件抽象。

IoHwAb_Adc.c

Io HwAb模块与Adc组件交互相关的配置源文件, 包含了API函数的实现和变量的定义,用于处 理模拟量输入采集信号映射的IO硬件抽象。

IoHwAb_Adc.h

IoHwAb模块与Adc组件交互相关的配置头 文件,包含了API函数和变量的声明,用于处 理模拟量输入采集信号映射的IO硬件抽象。

IoHwAb_Icu.c

IoHwAb模块与Icu组件交互相关的源 文件,包含了API函数的实现和变量的定义, 用于处理输入捕获信号映射的IO硬件抽象。

IoHwAb_Icu.h

IoHwAb模块与Icu组件交互相 关的头文件,包含了API函数和变量的声明, 用于处理输入捕获信号映射的IO硬件抽象。

IoHwAb_Pwm.c

IoHwAb模块与Pwm组件交互相关的 源文件,包含了API函数的实现和变量的定义 ,用于处理PWM输出信号映射的IO硬件抽象。

IoHwAb_Pwm.h

IoHwAb模块与Pwm组件交互 相关的头文件,包含了API函数和变量的声明 ,用于处理PWM输出信号映射的IO硬件抽象。

IoHwAb_Cbk.c

IoHwAb模块配置源文件,包含了IoHwAb与MC AL关联时用于中断通知挂接API函数的实现。

IoHwAb_Cbk.h

IoHwAb模块配置头文件,包含了IoHwAb与MC AL关联时用于中断通知挂接API函数的声明。

IoHwAb.c

IoHwAb模块配置 源文件,包含了API函数的实现和变量的定义

IoHwAb.h

IoHwAb模 块配置头文件,包含了API函数和变量的声明

:mark:`IoHwAb_MemMap.h`

IoHwAb模块配 置头文件,用于处理内存段分布的映射机制

Rte_IoHwAb_Type.h

IoHwAb模块与Swc组件交互相关的头文件 ,包含了IoHwAb模块模型组件引用数据类型

Rte_IoHwAb.c

IoHwAb模块与Sw c组件交互相关的源文件,包含了IoHwAb模块 模型组件Server端API函数实现和变量的定义

Rte_IoHwAb.h

IoHwAb模块 与Swc组件交互相关的头文件,包含了IoHwAb 模块模型组件Server端API函数和变量的声明

R te_IoHwAb_SignalAnalysis.c

IoHwAb模块与Sw c组件交互相关的源文件,包含了IoHwAb模块 模型组件Client端API函数实现和变量的定义

R te_IoHwAb_SignalAnalysis.h

IoHwAb模块 与Swc组件交互相关的头文件,包含了IoHwAb 模块模型组件Client端API函数和变量的声明

Rte_Io HwAb_SignalAnalysis_Type.h

IoHwAb模块与Swc组件交互相关的头文件 ,包含了IoHwAb模块模型组件引用数据类型

外围可编程接口

由于用户需求的差异性,IoHwAb提供部分可定制开发的回调接口,用户可自行实现其具体厂家平台所具有的特殊功能。

类型定义

UInt8类型定义

名称

UInt8

类型

unsigned char

范围

0~255

描述

UInt16类型定义

名称

UInt16

类型

unsigned short

范围

0~65535

描述

UInt32类型定义

名称

UInt32

类型

unsigned long

范围

0~4294967295

描述

IoHwAb_AdValueType类型定义

名称

IoHwAb_AdValueType

类型

uint32

范围

0~4294967295

描述

用于描述模拟信号转化为数字量的数据类型

IoHwAb_PwmDutycycleType类型定义

名称

IoHwAb_PwmDutycycleType

类型

uint32

范围

0~4294967295

描述

用于描述Pwm信号占空比的数据类型

IoHwAb_ChannelType类型定义

名称

IoHwAb_ChannelType

类型

uint32

范围

0~4294967295

描述

用于描述IoHwAb模块组件信号通道的数据类型

IoHwAb_SignalType类型定义

名称

IoHwAb_SignalType

类型

uint32

范围

0~4294967295

描述

用于描述IoHwAb模块组件信号种类的数据类型

IoHwAb_SignalDescriptorIdType类型定义

名称

IoHwAb_SignalDescriptorIdType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块组件信号描述标识符的数据类型

Icu_ChannelType类型定义

名称

Icu_ChannelType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Icu组件信号通道的数据类型

Icu_ValueType类型定义

名称

Icu_ValueType

类型

uin32

范围

0~4294967295

描述

用于描述IoHwAb模块Icu组件捕获结果的数据类型

Icu_IndexType类型定义

名称

Icu_IndexType

类型

uin16

范围

0~65535

描述

用于描述IoHwAb模块Icu组件索引编号的数据类型

Icu_EdgeNumberType类型定义

名称

Icu_EdgeNumberType

类型

uin32

范围

0~4294967295

描述

用于描述IoHwAb模块Icu组件边沿计数的数据类型

Icu_MeasurementModeType类型定义

名称

Icu_MeasurementModeType

类型

enum

范围

ICU_MODE_SIGNAL_EDGE_DETECT

ICU_MODE_SIGNAL_MEASUREMENT

ICU_MODE_TIMESTAMP

ICU_MODE_EDGE_COUNTER

描述

用于描述IoHwAb模块Icu组件测量模式的数据类型

Icu_InputStateType类型定义

名称

Icu_InputStateType

类型

enum

范围

ICU_IDLE

ICU_ACTIVE

描述

用于描述IoHwAb模块Icu组件输入状态的数据类型

Icu_ActivationType类型定义

名称

Icu_ActivationType

类型

enum

范围

ICU_RISING_EDGE

ICU_FALLING_EDGE

ICU_BOTH_EDGES

ICU_NO_EDGE

描述

用于描述IoHwAb模块Icu组件激活状态的数据类型

Icu_DutyCycleType类型定义

名称

Icu_DutyCycleType

类型

struct

范围

描述

用于描述IoHwAb模块Icu组件占空比的数据类型

定义

typedef struct

{

Icu_ValueType ActiveTime;

Icu_ValueType PeriodTime;

} Icu_DutyCycleType;

Pwm_ChannelType类型定义

名称

Pwm_ChannelType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Pwm组件信号通道的数据类型

Pwm_EdgeNotificationType类型定义

名称

Pwm_EdgeNotificationType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Pwm组件边沿通知的数据类型

Pwm_ChannelClassType类型定义

名称

Pwm_ChannelClassType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Pwm组件通道属性的数据类型

Pwm_PeriodType类型定义

名称

Pwm_PeriodType

类型

uint32

范围

0~4294967295

描述

用于描述IoHwAb模块Pwm组件周期参数的数据类型

Pwm_OutputStateType类型定义

名称

Pwm_OutputStateType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Pwm组件输出状态的数据类型

Adc_ChannelType类型定义

名称

Adc_ChannelType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Adc组件信号通道的数据类型

Adc_GroupType类型定义

名称

Adc_GroupType

类型

uint16

范围

0~65535

描述

用于描述IoHwAb模块Adc组件信号扫描组的数据类型

Adc_ValueGroupType类型定义

名称

Adc_ValueGroupType

类型

uint16

范围

0~65535

描述

用于描述IoHwAb模块Adc组件扫描转换结果的数据类型

Adc_ConversionTimeType类型定义

名称

Adc_ConversionTimeType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Adc组件扫描转换时序的数据类型

Adc_SamplingTimeType类型定义

名称

Adc_SamplingTimeType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Adc组件扫描采样时序的数据类型

Adc_ResolutionType类型定义

名称

Adc_ResolutionType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Adc组件扫描分辨率的数据类型

Adc_GroupPriorityType类型定义

名称

Adc_GroupPriorityType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Adc组件扫描组优先级的数据类型

Adc_StreamNumSampleType类型定义

名称

Adc_StreamNumSampleType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Adc组件扫描组流式逐次采样的数据类型

Adc_HwTriggerTimerType类型定义

名称

Adc_HwTriggerTimerType

类型

uint16

范围

0~65535

描述

用于描述IoHwAb模块Adc组件硬件触发时序的数据类型

Adc_ResultRegType类型定义

名称

Adc_ResultRegType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Adc组件转换结果注册的数据类型

Adc_PrescaleType类型定义

名称

Adc_PrescaleType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Adc组件归一化缩放的数据类型

Adc_StatusType类型定义

名称

Adc_StatusType

类型

uint8

范围

#define ADC_IDLE (0U)

#define ADC_BUSY (1U)

#define ADC_COMPLETED (2U)

#define ADC_STREAM_COMPLETED (3U)

描述

用于描述IoHwAb模块Adc组件扫描组转换状态的数据类型

Adc_TriggerSourceType类型定义

名称

Adc_TriggerSourceType

类型

uint8

范围

#define ADC_TRIGG_SRC_SW (0U)

#define ADC_TRIGG_SRC_HW (1U)

描述

用于描述IoHwAb模块Adc组件扫描组触发源的数据类型

Adc_GroupConvModeType类型定义

名称

Adc_GroupConvModeType

类型

uint8

范围

#define ADC_CONV_MODE_ONESHOT (0U)

#define ADC_CONV_MODE_CONTINUOUS (1U)

描述

用于描述IoHwAb模块Adc组件扫描组转换模式的数据类型

Dio_ChannelType类型定义

名称

Dio_ChannelType

类型

uint16

范围

0~65535

描述

用于描述IoHwAb模块Dio组件信号通道的数据类型

Dio_LevelType类型定义

名称

Dio_LevelType

类型

uint8

范围

#define STD_HIGH 0x01u

#define STD_LOW 0x00u

描述

用于描述IoHwAb模块Dio组件引脚电平状态的数据类型

Dio_PortType类型定义

名称

Dio_PortType

类型

uint8

范围

0~255

描述

用于描述IoHwAb模块Dio组件信号端口的数据类型

Dio_PortLevelType类型定义

名称

Dio_PortLevelType

类型

uint16

范围

#define STD_HIGH 0x01u

#define STD_LOW 0x00u

描述

用于描述IoHwAb模块Dio组件端口电平状态的数据类型

Dio_ChannelGroupType类型定义

名称

Dio_ChannelGroupType

类型

struct

范围

描述

用于描述IoHwAb模块Dio组件信号通道组的数据类型

定义

typedef struct

{

Dio_PortLevelType mask;

uint8 offset;

Dio_PortType port;

} Dio_ChannelGroupType;

IoHwAb_SignalChannelType类型定义

名称

IoHwAb_SignalChannelType

类型

enum

范围

IOHWAB_INVALID_SIGNAL

IOHWAB_DIGITAL_INOUT_SIGNAL

IOHWAB_INPUT_CAPTURE_SIGNAL

IOHWAB_PWM_OUTPUT_SIGNAL

IOHWAB_ANALOG_INPUT_SIGNAL

IOHWAB_OUTPUT_COMPARE_SIGNAL

IOHWAB_TIMER_OUTPUT_SIGNAL

IOHWAB_SPI_SERIAL_BUS_SIGNAL

IOHWAB_EXT_DEV_CONTROL_SIGNAL

描述

用于描述IoHwAb模块信号通种类的数据类型

IoHwAb_PinDirectionType类型定义

名称

IoHwAb_PinDirectionType

类型

enum

范围

IOHWAB_INPUT

IOHWAB_OUTPUT

描述

用于描述IoHwAb模块Dio组件引脚控制方向的数据类型

IoHwAb_DefaultLevelType类型定义

名称

IoHwAb_DefaultLevelType

类型

enum

范围

IOHWAB_LOW

IOHWAB_HIGH

描述

用于描述IoHwAb模块Dio组件默认电平状态的数据类型

IoHwAb_DioDescriptorType类型定义

名称

IoHwAb_DioDescriptorType

类型

struct

范围

描述

用于描述IoHwAb模块Dio组件信号描述的数据类型

定义

typedef struct

{

/* Referenced Dio channel id */

const Dio_ChannelType DioChannel;

/* Type of Ecu signal abstraction */

const IoHwAb_SignalChannelType SignalChannelKind;

/* Used to describe the control direction of a pin */

const IoHwAb_PinDirectionType PinDirection;

/* Default Dio channel level: HIGH or LOW*/

const IoHwAb_DefaultLevelType DefaultLevel;

/* The Position mask of Channel Group */

const uint8 ChannelGroupPositionMask;

/* The position of group*/

const uint8 GroupOffsetPosition;

/* Port Number on which Channel Group */

const Dio_PortType ChannelGroupPortId;

} IoHwAb_DioDescriptorType;

IoHwAb_AdcSetupResultBufFcnt类型定义

名称

IoHwAb_AdcSetupResultBufFcnt

类型

function pointer

范围

描述

用 于描述IoHwAb模块Adc组件设置转换结果缓冲区的函数指针类型

定义

typedef Std_ReturnType (*IoHwAb_AdcSetupResultBufFcnt)

(Adc_GroupType AdcGroupId);

IoHwAb_AdcDescriptorType类型定义

名称

IoHwAb_AdcDescriptorType

类型

struct

范围

描述

用于描述IoHwAb模块Adc组件信号描述的数据类型

定义

typedef struct

{

/* The scan group index for analog conversion */

const Adc_GroupType AdcGroupId;

/* The channel index for analog conversion */

const Adc_ChannelType AdcChannelId;

/* Signal channel kind */

const IoHwAb_SignalChannelType SignalChannelKind;

/* The control mode for analog conversion */

uint8 AdcConvCtrlMode;

/* Estimated conversion time of ADC scan group */

const uint32 EstimatedConvTime;

/* Pointer to the conversion result of the ADC scan group */

Adc_ValueGroupType *AdConvResultsPtr;

/* The buffer index of the conversion result store */

const uint16 BufferIndex;

} IoHwAb_AdcDescriptorType;

IoHwAb_IcuDescriptorType类型定义

名称

IoHwAb_IcuDescriptorType

类型

struct

范围

描述

用于描述IoHwAb模块Icu组件信号描述的数据类型

定义

typedef struct

{

/* Referenced Icu channel id*/

const Icu_ChannelType ChannelId;

const IoHwAb_SignalChannelType SignalChannelKind;

const Icu_MeasurementModeType MeasureMode;

const Icu_ActivationType DefaultStartEdge;

/* Referenced Icu channel sampling frequency*/

const uint32 IcuSamplingFrequency;

} IoHwAb_IcuDescriptorType;

IoHwAb_PwmDescriptorType类型定义

名称

IoHwAb_PwmDescriptorType

类型

struct

范围

描述

用于描述IoHwAb模块Pwm组件信号描述的数据类型

定义

typedef struct

{

/* Referenced Icu channel id*/

const Pwm_ChannelType ChannelId;

/* Signal channel kind */

const IoHwAb_SignalChannelType SignalChannelKind;

/* Period policy of pwm output */

const Pwm_ChannelClassType PeriodPolicy;

/* Edge Notification of pwm output */

Pwm_EdgeNotificationType EdgeNotify;

} IoHwAb_PwmDescriptorType;

IoHwAb_SignalChannelMapType类型定义

名称

IoHwAb_SignalChannelMapType

类型

struct

范围

描述

用于描述IoHwAb模块信号通道映射的数据类型

定义

typedef struct

{

/* Signal channel name */

const IoHwAb_SignalType SignalChannelName;

/* Signal channel kind */

const IoHwAb_SignalChannelType SignalChannelKind;

/* Signal descriptor index */

const IoHwAb_SignalDescriptorIdType SignalDescriptorIndex;

} IoHwAb_SignalChannelMapType;

IoHwAb_SignalChannelOffsetType类型定义

名称

IoHwAb_SignalChannelOffsetType

类型

struct

范围

描述

用于描述IoHwAb模块信号通道偏移的数据类型

定义

typedef struct

{

/* Signal channel name */

const IoHwAb_SignalType SignalChannelName;

/* Signal channel kind */

const IoHwAb_SignalChannelType SignalChannelKind;

/* Signal channel Offset */

const uint16 SignalChannelOffset;

/* Signal group Offset */

const uint16 SignalGroupOffset;

} IoHwAb_SignalChannelOffsetType;

IoHwAb_EcuSignalConfigType类型定义

名称

IoHwAb_EcuSignalConfigType

类型

struct

范围

描述

用于描述IoHwAb模块ECU信号配置的数据类型

定义

typedef struct

{

/* Total number of analog input group */

const uint8 AdcDescriptorCount;

/* pointer to Analog group descriptor */

const IoHwAb_AdcDescriptorType *AdcDescriptorPtr;

/* Function pointer used to set the conversion result buffer */

const IoHwAb_AdcSetupResultBufFcnt AdcSetupResultBufferFct;

/* Total number of digital input/output channels */

const uint8 DioChanDescriptorCount;

/* pointer to digital input/output channel descriptor*/

const IoHwAb_DioDescriptorType *DioChanDescriptorPtr;

/* Total number of input capture channels */

const uint8 IcuChanDescriptorCount;

/* pointer to input capture channel descriptor */

const IoHwAb_IcuDescriptorType *IcuChanDescriptorPtr;

/* Total number of pwm output channels */

const uint8 PwmChanDescriptorCount;

/* pointer to pwm output channel descriptor */

const IoHwAb_PwmDescriptorType *PwmChanDescriptorPtr;

/* Total number of Signal Channel List */

const uint8 SignalChannelListNbr;

/* pointer to ECU signal channel list */

const IoHwAb_SignalChannelMapType *SignalChannelListPtr;

/* Total number of Signal Channel List */

const uint8 SignalChannelOffsetNbr;

/* pointer to ECU signal channel offset */

const IoHwAb_SignalChannelOffsetType *SignalChannelOffsetPtr;

} IoHwAb_EcuSignalConfigType;

输入函数描述

输入模块

API

Det

Det_ReportRuntimeError

Det_ReportError

Adc

Adc_SetupResultBuffer

Adc_StartGroupConversion

Adc_StopGroupConversion

Adc_ReadGroup

Adc_EnableHardwareTrigger

Adc_DisableHardwareTrigger

Adc_EnableGroupNotification

Adc_DisableGroupNotification

Adc_GetGroupStatus

Adc_RS0EventInterruptHandler

Adc_RS1EventInterruptHandler

Adc_RS2EventInterruptHandler

Adc_ChEventInterruptHandler

Dio

Dio_ReadChannel

Dio_WriteChannel

Dio_ReadPort

Dio_WritePort

Dio_ReadChannelGroup

Dio_WriteChannelGroup

Dio_FlipChannel

Icu

Icu_SetActivationCondition

Icu_DisableEdgeDetection

Icu_EnableEdgeDetection

Icu_EnableNotification

Icu_DisableNotification

Icu_StartTimestamp

Icu_StopTimestamp

Icu_GetTimestampIndex

Icu_GetTimeElapsed

Icu_ResetEdgeCount

Icu_EnableEdgeCount

Icu_DisableEdgeCount

Icu_GetEdgeNumbers

Icu_StartSignalMeasurement

Icu_StopSignalMeasurement

Icu_GetInputState

Icu_GetDutyCycleValues

Icu_Timer_Isr

Pwm

Pwm_SetDutyCycle

Pwm_SetPeriodAndDuty

Pwm_SetOutputToIdle

Pwm_OutputStateType

Pwm_GetOutputState

Pwm_EnableNotification

Pwm_DisableNotification

Pwm_Isr

静态函数接口定义

IoHwAb_MainFunction函数定义

函数名称:

IoHwAb_MainFunction

函数原型:

void IoHwAb_MainFunction(void);

服务编号:

同步/异步:

同步

是 否可重入:

不可重入

输入参数:

输入 输出参数:

输出参数:

返回值:

功能概述:

IoHwAb硬件抽象层的调度主函数(周期性被调用)

IoHwAbDigital_SetChannelLevel函数定义

函数名称:

I oHwAbDigital_S etChannelLevel

函数原型:

Std_ReturnType I oHwAbDigital_S etChannelLevel

(

IoH wAb_SignalType SignalId,

Dio_LevelType output_Level

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值域 :0~4294967295

信号描述标识符

output_Level

值域:enum

STD_LOW = 0

STD_HIGH = 1

引脚电平状态

输入 输出参数:

输出参数:

返回值:

St d_ReturnType: E_OK/E_NOT_OK

功能概述:

用于IoH wAb模块中设置D igital组件对应 通道的电平状态

IoHwAbDigital_GetChannelLevel函数定义

函数名称:

IoHwA bDigital_Get ChannelLevel

函数原型:

St d_ReturnType IoHwA bDigital_Get ChannelLevel

(

IoHwA b_SignalType SignalId,

D io_LevelType *input_Level

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

input_Level

值域:enum

STD_LOW = 0

STD_HIGH = 1

引脚电平状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中获取Digit al组件对应通 道的电平状态

IoHwAbDigital_FlipChannelLevel函数定义

函数名称:

IoHwAb Digital_Flip ChannelLevel

函数原型:

St d_ReturnType IoHwAb Digital_Flip ChannelLevel

(

IoHwA b_SignalType SignalId,

D io_LevelType *flip_Level

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

flip_Level

值域:enum

STD_LOW = 0

STD_HIGH = 1

引脚电平状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中翻转Digit al组件对应通 道的电平状态

IoHwAbDigital_SetPortLevel函数定义

函数名称:

Io HwAbDigital_ SetPortLevel

函数原型:

St d_ReturnType Io HwAbDigital_ SetPortLevel

(

IoHwA b_SignalType SignalId,

Dio_P ortLevelType outp ut_portLevel

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

outp ut_portLevel

值域:enum

STD_LOW = 0

STD_HIGH = 1

端口电平状态

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中设置Digit al组件对应端 口的电平状态

IoHwAbDigital_GetPortLevel函数定义

函数名称:

Io HwAbDigital_ GetPortLevel

函数原型:

St d_ReturnType Io HwAbDigital_ GetPortLevel

(

IoHwA b_SignalType SignalId,

Dio_P ortLevelType *inp ut_portLevel

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

inp ut_portLevel

值域:enum

STD_LOW = 0

STD_HIGH = 1

端口电平状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中获取Digit al组件对应端 口的电平状态

IoHwAbDigital_SetChannelGroupLevel函数定义

函数名称:

IoHwAbDigi tal_SetChann elGroupLevel

函数原型:

St d_ReturnType IoHwAbDigi tal_SetChann elGroupLevel

(

IoHwA b_SignalType SignalId,

Dio_P ortLevelType outp ut_portLevel

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

outp ut_portLevel

值域:enum

STD_LOW = 0

STD_HIGH = 1

端口电平状态

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 设置Digital 组件对应通道 组的电平状态

IoHwAbDigital_GetChannelGroupLevel函数定义

函数名称:

IoHwAbDigi tal_GetChann elGroupLevel

函数原型:

St d_ReturnType IoHwAbDigi tal_GetChann elGroupLevel

(

IoHwA b_SignalType SignalId,

Dio_P ortLevelType *inp ut_portLevel

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

inp ut_portLevel

值域:enum

STD_LOW = 0

STD_HIGH = 1

端口电平状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 获取Digital 组件对应通道 组的电平状态

IoHwAbAnalog_StartGroupConversion函数定义

函数名称:

IoHwAbAna log_StartGro upConversion

函数原型:

St d_ReturnType IoHwAbAna log_StartGro upConversion

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwAb模 块中启动Anal og组件对应扫 描组的AD转换

IoHwAbAnalog_StopGroupConversion函数定义

函数名称:

IoHwAbAn alog_StopGro upConversion

函数原型:

St d_ReturnType IoHwAbAn alog_StopGro upConversion

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwAb模 块中停止Anal og组件对应扫 描组的AD转换

IoHwAbAnalog_SetupConvResultBuffer函数定义

函数名称:

IoHwAbAnal og_SetupConv ResultBuffer

函数原型:

St d_ReturnType IoHwAbAnal og_SetupConv ResultBuffer

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHw Ab模块中设置 Analog组件对 应扫描组的转 换结果缓冲区

IoHwAbAnalog_EnableGroupNotification函数定义

函数名称:

IoHwAbAnalog _EnableGroup Notification

函数原型:

St d_ReturnType IoHwAbAnalog _EnableGroup Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwAb 模块中使能An alog组件对应 扫描组的转换 完成中断通知

IoHwAbAnalog_DisableGroupNotification函数定义

函数名称:

I oHwAbAnalog_ DisableGroup Notification

函数原型:

St d_ReturnType I oHwAbAnalog_ DisableGroup Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwAb 模块中禁止An alog组件对应 扫描组的转换 完成中断通知

IoHwAbAnalog_EnableHardwareTrigger函数定义

函数名称:

IoHwAbAnal og_EnableHar dwareTrigger

函数原型:

St d_ReturnType IoHwAbAnal og_EnableHar dwareTrigger

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中使能Analog 组件对应扫描 组的硬件触发

IoHwAbAnalog_DisableHardwareTrigger函数定义

函数名称:

IoHwAbAnalo g_DisableHar dwareTrigger

函数原型:

St d_ReturnType IoHwAbAnalo g_DisableHar dwareTrigger

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中禁止Analog 组件对应扫描 组的硬件触发

IoHwAb_Adc_HardwareTriggerHandler函数定义

函数名称:

IoHwAb_Ad c_HardwareTr iggerHandler

函数原型:

void IoHwAb_Ad c_HardwareTr iggerHandler

(

A dc_GroupType GroupId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

GroupId

值域:0~65535

ADC扫描组标识符

输入 输出参数:

输出参数:

返回值:

功能概述:

用 于IoHwAb模块 中Analog组件 对应扫描组的 硬件触发处理

IoHwAbAnalog_GetRawAdValue函数定义

函数名称:

Io HwAbAnalog_G etRawAdValue

函数原型:

St d_ReturnType Io HwAbAnalog_G etRawAdValue

(

IoHwA b_SignalType SignalId,

IoHwAb _AdValueType *ConvResult

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

RawAdValue

值 域:0~4294967295

原始AD转换结果

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHw Ab模块中从An alog组件对应 目标缓冲区中 读取转换结果

IoHwAbAnalog_GetGroupConvNotification函数定义

函数名称:

I oHwAbAnalog_ GetGroupConv Notification

函数原型:

St d_ReturnType I oHwAbAnalog_ GetGroupConv Notification

(

IoHwA b_SignalType SignalId,

boolean *Conv Notification

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

Conv Notification

值域:FALSE~TRUE

AD转换的通知状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 从Analog组件 状态机中读取 转换通知状态

IoHwAbAnalog_CleartGroupConvNotification函数定义

函数名称:

IoHw AbAnalog_Cle artGroupConv Notification

函数原型:

St d_ReturnType IoHw AbAnalog_Cle artGroupConv Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHw Ab模块中将An alog组件状态 机的转换通知 状态进行清除

IoHwAb_AdcNotification函数定义

函数名称:

IoHwAb_Adc Notification

函数原型:

void IoHwAb_Adc Notification

(

A dc_GroupType AdcGroupId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

AdcGroupId

值域:0~65535

ADC扫描组的标识符

输入 输出参数:

输出参数:

返回值:

功能概述:

用于 IoHwAb模块中 Analog组件的 转换完成中断 通知服务处理

IoHwAb_AdcNotificationByDmaCompleted函数定义

函数名称:

IoHwAb_AdcNo tificationBy DmaCompleted

函数原型:

void IoHwAb_AdcNo tificationBy DmaCompleted

(

A dc_GroupType AdcGroupId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

AdcGroupId

值域:0~65535

ADC扫描组的标识符

输入 输出参数:

输出参数:

返回值:

功能概述:

用于 IoHwAb模块中 Analog组件的 转换完成DMA 通知服务处理

IoHwAb_Adc_MainFunction函数定义

函数名称:

IoHwAb_Adc_MainFunction

函数原型:

void IoHwAb_Adc_MainFunction(void);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

输入 输出参数:

输出参数:

返回值:

功能概述:

用于IoHwAb模块中Analog组件的周期调度主函数

IoHwAbCapture_SetActivationCondition函数定义

函数名称:

IoHw AbCaptur e_SetAct ivationC ondition

函数原型:

Std_Re turnType IoHw AbCaptur e_SetAct ivationC ondition

(

I oHwAb_Si gnalType S ignalId,

Ic u_Activa tionType Ac tivation

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值域:0~4294967295

信号描述标识符

Ac tivation

值域:enum

ICU_RISING_EDGE = 0

ICU_FALLING_EDGE = 1

ICU_BOTH_EDGES = 2

ICU通道激活状态

输入 输出参数:

输出参数:

返回值:

Std_R eturnTyp e:E_OK/ E_NOT_OK

功能概述:

用 于IoHwAb 模块中设 置Captu re组件对 应通道的 激活条件

IoHwAbCapture_GetInputState函数定义

函数名称:

IoH wAbCapture_G etInputState

函数原型:

St d_ReturnType IoH wAbCapture_G etInputState

(

IoHwA b_SignalType SignalId,

Icu_In putStateType *InputState

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

InputState

值域:enum

ICU_ACTIVE = 0

ICU_IDLE = 1

对应通道的输入状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中设置Captu re组件对应通 道的激活条件

IoHwAbCapture_GetTimeElapsed函数定义

函数名称:

IoHw AbCapture_Ge tTimeElapsed

函数原型:

St d_ReturnType IoHw AbCapture_Ge tTimeElapsed

(

IoHwA b_SignalType SignalId,

I cu_ValueType *ElapsedTime

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

ElapsedTime

值 域:0~4294967295

对应通道的消逝时间

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中获取Captu re组件对应通 道的消逝时间

IoHwAbCapture_EnableNotification函数定义

函数名称:

IoHwAbCa pture_Enable Notification

函数原型:

St d_ReturnType IoHwAbCa pture_Enable Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中使 能Capture组 件对应通道的 捕获中断通知

IoHwAbCapture_DisableNotification函数定义

函数名称:

IoHwAbCap ture_Disable Notification

函数原型:

St d_ReturnType IoHwAbCap ture_Disable Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中禁 止Capture组 件对应通道的 捕获中断通知

IoHwAbCapture_EnableEdgeDetection函数定义

函数名称:

IoHwAbCap ture_EnableE dgeDetection

函数原型:

St d_ReturnType IoHwAbCap ture_EnableE dgeDetection

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中使 能Capture组 件对应通道的 边沿检测功能

IoHwAbCapture_DisableEdgeDetection函数定义

函数名称:

IoHwAbCapt ure_DisableE dgeDetection

函数原型:

St d_ReturnType IoHwAbCapt ure_DisableE dgeDetection

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中禁 止Capture组 件对应通道的 边沿检测功能

IoHwAbCapture_GetEdgeDetectNotification函数定义

函数名称:

IoHwAbC apture_GetEdgeDe tectNotification

函数原型:

Std_ReturnType IoHwAbC apture_GetEdgeDe tectNotification

(

I oHwAb_SignalType SignalId,

boolean *EdgeDe tectNotification

);

服务编号:

同 步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值域 :0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

EdgeDe tectNotification

值 域:FALSE~TRUE

边沿检测通知状态

返回值:

Std_ReturnTyp e:E_OK/E_NOT_OK

功能概述:

用于IoHwA b模块中获取Captu re组件对应通道的 边沿检测通知状态

IoHwAbCapture_ClearEdgeDetectNotification函数定义

函数名称:

IoHwA bCapture_Cle arEdgeDetect Notification

函数原型:

St d_ReturnType IoHwA bCapture_Cle arEdgeDetect Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwA b模块中清除C apture组件对 应通道的边沿 检测通知状态

IoHwAbCapture_StartTimestamp函数定义

函数名称:

IoHw AbCapture_St artTimestamp

函数原型:

St d_ReturnType IoHw AbCapture_St artTimestamp

(

IoHwA b_SignalType SignalId,

I cu_ValueType *BufferPtr,

uint16 BufferSize,

uint16 No tifyInterval

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

BufferPtr

值域:0~255

时间戳记录缓冲区

BufferSize

值域:0~65535

缓冲区大小

No tifyInterval

值域:0~65535

通知属性

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 启动Capture 组件对应通道 的时间戳记录

IoHwAbCapture_StopTimestamp函数定义

函数名称:

IoH wAbCapture_S topTimestamp

函数原型:

St d_ReturnType IoH wAbCapture_S topTimestamp

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 停止Capture 组件对应通道 的时间戳记录

IoHwAbCapture_GetTimestampIndex函数定义

函数名称:

IoHwAbC apture_GetTi mestampIndex

函数原型:

St d_ReturnType IoHwAbC apture_GetTi mestampIndex

(

IoHwA b_SignalType SignalId,

I cu_IndexType *Index

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

Ti mestampIndex

值域:0~65535

时间戳索引

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 获取Capture 组件对应通道 的时间戳索引

IoHwAbCapture_GetTimeStampNotification函数定义

函数名称:

IoHwAb Capture_GetTimeS tampNotification

函数原型:

Std_ReturnType IoHwAb Capture_GetTimeS tampNotification

(

I oHwAb_SignalType SignalId,

boolean *TimeS tampNotification

);

服务编号:

同 步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值域 :0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

TimeS tampNotification

值 域:FALSE~TRUE

时间戳通知状态

返回值:

Std_ReturnTyp e:E_OK/E_NOT_OK

功能概述:

用于IoH wAb模块中获取Cap ture组件对应通道 的时间戳通知状态

IoHwAbCapture_ClearTimeStampNotification函数定义

函数名称:

IoHw AbCapture_Cl earTimeStamp Notification

函数原型:

St d_ReturnType IoHw AbCapture_Cl earTimeStamp Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHw Ab模块中清除 Capture组件 对应通道的时 间戳通知状态

IoHwAbCapture_ResetEdgeCount函数定义

函数名称:

IoHw AbCapture_Re setEdgeCount

函数原型:

St d_ReturnType IoHw AbCapture_Re setEdgeCount

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中复 位Capture组 件对应通道的 边沿计数功能

IoHwAbCapture_EnableEdgeCount函数定义

函数名称:

IoHwA bCapture_Ena bleEdgeCount

函数原型:

St d_ReturnType IoHwA bCapture_Ena bleEdgeCount

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中使 能Capture组 件对应通道的 边沿计数功能

IoHwAbCapture_DisableEdgeCount函数定义

函数名称:

IoHwAb Capture_Disa bleEdgeCount

函数原型:

St d_ReturnType IoHwAb Capture_Disa bleEdgeCount

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中禁 止Capture组 件对应通道的 边沿计数功能

IoHwAbCapture_GetEdgeNumbers函数定义

函数名称:

IoHw AbCapture_Ge tEdgeNumbers

函数原型:

St d_ReturnType IoHw AbCapture_Ge tEdgeNumbers

(

IoHwA b_SignalType SignalId,

Icu_Ed geNumberType *EdgeCount

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

EdgeCount

值 域:0~4294967295

边沿计数值

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 获取Capture 组件对应通道 的边沿计数值

IoHwAbCapture_GetEdgeCounterNotification函数定义

函数名称:

IoHw AbCapture_GetEdgeC ounterNotification

函数原型:

Std_ReturnType IoHw AbCapture_GetEdgeC ounterNotification

(

IoHwAb_SignalType SignalId,

boolean *EdgeC ounterNotification

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值域 :0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

EdgeC ounterNotification

值 域:FALSE~TRUE

边 沿计数通知状态

返回值:

Std_ReturnT ype:E_OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中获取C apture组件对应通道 的边沿计数通知状态

IoHwAbCapture_ClearEdgeCounterNotification函数定义

函数名称:

IoHwAb Capture_Clea rEdgeCounter Notification

函数原型:

St d_ReturnType IoHwAb Capture_Clea rEdgeCounter Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwA b模块中清除C apture组件对 应通道的边沿 计数通知状态

IoHwAbCapture_StartSignalMeasure函数定义

函数名称:

IoHwAbCa pture_StartS ignalMeasure

函数原型:

St d_ReturnType IoHwAbCa pture_StartS ignalMeasure

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中启 动Capture组 件对应通道的 信号测量功能

IoHwAbCapture_StopSignalMeasure函数定义

函数名称:

IoHwAbC apture_StopS ignalMeasure

函数原型:

St d_ReturnType IoHwAbC apture_StopS ignalMeasure

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中停 止Capture组 件对应通道的 信号测量功能

IoHwAbCapture_GetDutyCycleValues函数定义

函数名称:

IoHwAbCa pture_Ge tDutyCyc leValues

函数原型:

Std_Re turnType IoHwAbCa pture_Ge tDutyCyc leValues

(

I oHwAb_Si gnalType S ignalId,

I cu_DutyC ycleType *D utyCycle

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

d utycycle

值域:

typedef struct

{

Icu_ValueType ActiveTime;

Icu_ValueType PeriodTime;

} Icu_DutyCycleType;

占空比测量结果

返回值:

Std_R eturnTyp e:E_OK/ E_NOT_OK

功能概述:

用于IoHw Ab模块中 获取Cap ture组件 对应通道 的占空比 测量结果

IoHwAbCapture_GetSignalMeasureNotification函数定义

函数名称:

IoHw AbCapture_GetSignal MeasureNotification

函数原型:

Std_ReturnType IoHw AbCapture_GetSignal MeasureNotification

(

IoHwAb_SignalType SignalId,

boolean *Signal MeasureNotification

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值域 :0~4294967295

信 号描述标识符

输入 输出参数:

输出参数:

Signal MeasureNotification

值 域:FALSE~TRUE

信号 测量通知状态

返回值:

Std_Return Type:E_OK/E_NOT_OK

功能概述:

用 于IoHwAb模块中获取 Capture组件对应通道 的信号测量通知状态

IoHwAbCapture_ClearSignalMeasureNotification函数定义

函数名称:

IoHwAbCa pture_ClearS ignalMeasure Notification

函数原型:

St d_ReturnType IoHwAbCa pture_ClearS ignalMeasure Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwA b模块中清除C apture组件对 应通道的信号 测量通知状态

IoHwAb_IcuNotification函数定义

函数名称:

IoHwAb _IcuNoti fication

函数原型:

void IoHwAb _IcuNoti fication (Icu_Cha nnelType Cha nnelId);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

C hannelId

值域:0~65535

ICU对应通道的标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnTyp e:E_OK/ E_NOT_OK

功能概述:

用于Io HwAb模块 中Captu re组件对 应通道的 中断通知 服务处理

IoHwAbPwm_EnableNotification函数定义

函数名称:

IoHw AbPwm_Enable Notification

函数原型:

St d_ReturnType IoHw AbPwm_Enable Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwA b模块中使能P wm组件对应通 道的输出成功 中断通知功能

IoHwAbPwm_DisableNotification函数定义

函数名称:

IoHwA bPwm_Disable Notification

函数原型:

St d_ReturnType IoHwA bPwm_Disable Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwA b模块中禁止P wm组件对应通 道的输出成功 中断通知功能

IoHwAbPwm_SetOutputToIdle函数定义

函数名称:

I oHwAbPwm_Set OutputToIdle

函数原型:

St d_ReturnType I oHwAbPwm_Set OutputToIdle

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中设置Pwm组 件对应通道输 出到IDLE状态

IoHwAbPwm_GetOutputState函数定义

函数名称:

IoHwAb Pwm_GetOu tputState

函数原型:

Std_R eturnType IoHwAb Pwm_GetOu tputState

(

IoHwAb_S ignalType SignalId,

P wm_Output StateType *Ou tputState

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

Ou tputState

值域:

typedef enum

{

PWM_LOW = 0,

PWM_HIGH = 1

} Pwm_OutputStateType;

输出状态

返回值:

St d_ReturnT ype:E_OK /E_NOT_OK

功能概述:

用于 IoHwAb模 块中获取 Pwm组件对 应通道的 输出状态

IoHwAbPwm_WriteDutycycle函数定义

函数名称:

IoHwAbPwm_Wr iteDutycycle

函数原型:

St d_ReturnType IoHwAbPwm_Wr iteDutycycle

(

IoHwA b_SignalType SignalId,

IoHwAb_PwmD utycycleType Outp ut_Dutycycle

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

Outp ut_Dutycycle

值 域:0~4294967295

PWM的占空比

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwAb模 块中设置Pwm 组件对应通道 的输出占空比

IoHwAbPwm_WritePeriodAndDutycycle函数定义

函数名称:

IoHwAbPwm _WritePeriod AndDutycycle

函数原型:

St d_ReturnType IoHwAbPwm _WritePeriod AndDutycycle

(

IoHwA b_SignalType SignalId,

Pw m_PeriodType Ou tput_Period,

IoHwAb_PwmD utycycleType Outp ut_Dutycycle

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

O utput_Period

值 域:0~4294967295

PWM的周期

Outp ut_Dutycycle

值 域:0~4294967295

PWM的占空比

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中设 置Pwm组件对 应通道的输出 周期和占空比

IoHwAbPwm_GetPwmOutputNotification函数定义

函数名称:

IoHwAbPwm_GetPwmO utputNotification

函数原型:

Std_ReturnType IoHwAbPwm_GetPwmO utputNotification

(

IoHwAb_SignalType SignalId,

boolean *PwmO utputNotification

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值域 :0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

PwmO utputNotification

值 域:FALSE~TRUE

PWM输出通知状态

返回值:

Std_ReturnTy pe:E_OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中获取 PWM组件对应通道的 信号输出通知状态

IoHwAbPwm_ClearPwmOutputNotification函数定义

函数名称:

IoHwAbPwm_Cl earPwmOutput Notification

函数原型:

St d_ReturnType IoHwAbPwm_Cl earPwmOutput Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中清 除PWM组件对 应通道的信号 输出通知状态

IoHwAb_PwmNotification函数定义

函数名称:

IoHwAb _PwmNoti fication

函数原型:

void IoHwAb _PwmNoti fication (Pwm_Cha nnelType Cha nnelId);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

C hannelId

值域:0~65535

对应通道的标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnTyp e:E_OK/ E_NOT_OK

功能概述:

用 于IoHwA b模块中P WM组件对 应通道的 中断通知 服务处理

硬件抽象服务封装接口定义

StartGroupConversion函数定义

函数名称:

StartGro upConversion

函数原型:

St d_ReturnType StartGro upConversion

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 启动Analog组 件对应扫描组 的AD转换功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Ana logSignalInp ut->StartGro upConversion

StopGroupConversion函数定义

函数名称:

StartGr opConversion

函数原型:

St d_ReturnType StopGro upConversion

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于I /O硬件抽象中 停止Analog组 件对应扫描组 的AD转换功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->An alogSignalIn put->StopGro upConversion

SetupConvResultBuffer函数定义

函数名称:

SetupConv ResultBuffer

函数原型:

St d_ReturnType SetupConv ResultBuffer

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHw Ab模块中设置 Analog组件对 应组的转换结 果目标缓冲区

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Anal ogSignalInpu t->SetupConv ResultBuffer

EnableGroupNotification函数定义

函数名称:

EnableGroup Notification

函数原型:

St d_ReturnType EnableGroup Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwAb 模块中使能An alog组件对应 扫描组的转换 完成中断通知

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Analog SignalInput- >EnableGroup Notification

DisableGroupNotification函数定义

函数名称:

DisableGroup Notification

函数原型:

St d_ReturnType DisableGroup Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwAb 模块中禁止An alog组件对应 扫描组的转换 完成中断通知

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->AnalogS ignalInput-> DisableGroup Notification

EnableHardwareTrigger函数定义

函数名称:

EnableHar dwareTrigger

函数原型:

St d_ReturnType EnableHar dwareTrigger

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中使 能Analog组件 对应扫描组的 硬件触发功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Anal ogSignalInpu t->EnableHar dwareTrigger

DisableHardwareTrigger函数定义

函数名称:

DisableHar dwareTrigger

函数原型:

St d_ReturnType DisableHar dwareTrigger

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中禁 止Analog组件 对应扫描组的 硬件触发功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Analo gSignalInput ->DisableHar dwareTrigger

GetRawAdValue函数定义

函数名称:

G etRawAdValue

函数原型:

St d_ReturnType G etRawAdValue

(

IoHwA b_SignalType SignalId,

IoHwAb _AdValueType *ConvResult

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

ConvResult

值 域:0~4294967295

AD转换结果

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHw Ab模块中从An alog组件对应 目标缓冲区中 读取转换结果

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->AnalogSi gnalInput->G etRawAdValue

GetGroupConvNotification函数定义

函数名称:

GetGroupConv Notification

函数原型:

St d_ReturnType GetGroupConv Notification

(

IoHwA b_SignalType SignalId,

boolean *Conv Notification

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

Conv Notification

值域:FALSE~TRUE

AD转换通知状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 从Analog组件 状态机中读取 转换通知状态

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->AnalogS ignalInput-> GetGroupConv Notification

ClearGroupConvNotification函数定义

函数名称:

Cl earGroupConv Notification

函数原型:

St d_ReturnType Cl earGroupConv Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 从Analog组件 状态机中清除 转换通知状态

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->AnalogSig nalInput->Cl earGroupConv Notification

SetChannelLevel函数定义

函数名称:

Set ChannelLevel

函数原型:

St d_ReturnType Set ChannelLevel

(

IoHwA b_SignalType SignalId,

D io_LevelType output_Level

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

output_Level

值域:enum

STD_LOW = 0

STD_HIGH = 1

引脚电平状态

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中设 置Digital组 件对应通道的 引脚电平状态

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

>DigitalSign alWrite->Set ChannelLevel

GetChannelLevel函数定义

函数名称:

Get ChannelLevel

函数原型:

St d_ReturnType Get ChannelLevel

(

IoHwA b_SignalType SignalId,

D io_LevelType *input_Level

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

input_Level

值域:enum

STD_LOW = 0

STD_HIGH = 1

引脚电平状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中获 取Digital组 件对应通道的 引脚电平状态

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->DigitalSig nalRead->Get ChannelLevel

FlipChannelLevel函数定义

函数名称:

Flip ChannelLevel

函数原型:

St d_ReturnType Flip ChannelLevel

(

IoHwA b_SignalType SignalId,

D io_LevelType *flip_Level

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

flip_Level

值域:enum

STD_LOW = 0

STD_HIGH = 1

引脚电平状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中翻 转Digital组 件对应通道的 引脚电平状态

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

>DigitalSign alRead->Flip ChannelLevel

SetPortLevel函数定义

函数名称:

SetPortLevel

函数原型:

St d_ReturnType SetPortLevel

(

IoHwA b_SignalType SignalId,

Dio_P ortLevelType outp ut_portLevel

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

outp ut_portLevel

值域:enum

STD_LOW = 0

STD_HIGH = 1

端口电平状态

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中设置Digit al组件对应端 口的电平状态

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->DigitalS ignalWrite-> SetPortLevel

GetPortLevel函数定义

函数名称:

GetPortLevel

函数原型:

St d_ReturnType GetPortLevel

(

IoHwA b_SignalType SignalId,

Dio_P ortLevelType *inp ut_portLevel

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

inp ut_portLevel

值域:enum

STD_LOW = 0

STD_HIGH = 1

端口电平状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中获取Digit al组件对应端 口的电平状态

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Digital SignalRead-> GetPortLevel

SetChannelGroupLevel函数定义

函数名称:

SetChann elGroupLevel

函数原型:

St d_ReturnType SetChann elGroupLevel

(

IoHwA b_SignalType SignalId,

Dio_P ortLevelType outp ut_portLevel

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

outp ut_portLevel

值域:enum

STD_LOW = 0

STD_HIGH = 1

端口电平状态

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHw Ab模块中设置 Digital组件 对应通道组的 端口电平状态

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Digi talSignalWri te->SetChann elGroupLevel

GetChannelGroupLevel函数定义

函数名称:

IoHwAb_Digi tal_GetChann elGroupLevel

函数原型:

St d_ReturnType GetChann elGroupLevel

(

IoHwA b_SignalType SignalId,

Dio_P ortLevelType *inp ut_portLevel

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

inp ut_portLevel

值域:enum

STD_LOW = 0

STD_HIGH = 1

端口电平状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHw Ab模块中获取 Digital组件 对应通道组的 端口电平状态

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Digital SignalRead-> GetPortLevel

SetActivationCondition函数定义

函数名称:

SetAct ivationC ondition

函数原型:

Std_Re turnType SetAct ivationC ondition

(

I oHwAb_Si gnalType S ignalId,

Ic u_Activa tionType Ac tivation

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值域:0~4294967295

信号描述标识符

Ac tivation

值域:enum

ICU_RISING_EDGE = 0

ICU_FALLING_EDGE = 1

ICU_BOTH_EDGES = 2

对应通道的激活条件

输入 输出参数:

输出参数:

返回值:

Std_R eturnTyp e:E_OK/ E_NOT_OK

功能概述:

用 于IoHwAb 模块中设 置Captu re组件对 应通道的 激活条件

接口封装

Soft wareArch itecture ->PortIn terfaces ->Client ServerIn terfaces

->Captu rePublic ->SetAct ivationC ondition

GetTimeElapsed函数定义

函数名称:

Ge tTimeElapsed

函数原型:

St d_ReturnType Ge tTimeElapsed

(

IoHwA b_SignalType SignalId,

I cu_ValueType *ElapsedTime

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

ElapsedTime

值 域:0~4294967295

消逝时间

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHw Ab模块中获取 Capture组件 对应通道的消 逝时间计数值

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Captu rePublic->Ge tTimeElapsed

GetInputState函数定义

函数名称:

G etInputState

函数原型:

St d_ReturnType G etInputState

(

IoHwA b_SignalType SignalId,

Icu_In putStateType *InputState

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

InputState

值域:enum

ICU_ACTIVE = 0

ICU_IDLE = 1

输入状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中获取Captu re组件对应通 道的输入状态

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Capt urePublic->G etInputState

EnableNotification函数定义

函数名称:

Enable Notification

函数原型:

St d_ReturnType Enable Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中使 能Capture组 件对应通道的 捕获中断通知

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->CapturePu blic->Enable Notification

DisableNotification函数定义

函数名称:

Disable Notification

函数原型:

St d_ReturnType Disable Notification

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中禁 止Capture组 件对应通道的 捕获中断通知

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->CapturePub lic->Disable Notification

StartTimestamp函数定义

函数名称:

St artTimestamp

函数原型:

St d_ReturnType St artTimestamp

(

IoHwA b_SignalType SignalId,

I cu_ValueType *BufferPtr,

uint16 BufferSize,

uint16 No tifyInterval

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

BufferPtr

值域:0~255

时间戳记录缓冲区

BufferSize

值域:0~65535

缓冲区大小

No tifyInterval

值域:0~65535

通知属性

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 启动Capture 组件对应通道 的时间戳功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->CaptureT imestamp->St artTimestamp

StopTimestamp函数定义

函数名称:

S topTimestamp

函数原型:

St d_ReturnType S topTimestamp

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 停止Capture 组件对应通道 的时间戳功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Capture Timestamp->S topTimestamp

GetTimestampIndex函数定义

函数名称:

GetTi mestampIndex

函数原型:

St d_ReturnType GetTi mestampIndex

(

IoHwA b_SignalType SignalId,

I cu_IndexType *Index

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

Index

值域:0~65535

时间戳索引

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 获取Capture 组件对应通道 的时间戳索引

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

>CaptureTime stamp->GetTi mestampIndex

ResetEdgeCount函数定义

函数名称:

Re setEdgeCount

函数原型:

St d_ReturnType Re setEdgeCount

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中复 位Capture组 件对应通道的 边沿计数功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->CaptureE dgeCount->Re setEdgeCount

EnableEdgeCount函数定义

函数名称:

Ena bleEdgeCount

函数原型:

St d_ReturnType Ena bleEdgeCount

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中使 能Capture组 件对应通道的 边沿计数功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->CaptureEd geCount->Ena bleEdgeCount

DisableEdgeCount函数定义

函数名称:

Disa bleEdgeCount

函数原型:

St d_ReturnType Disa bleEdgeCount

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中禁 止Capture组 件对应通道的 边沿计数功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->CaptureEdg eCount->Disa bleEdgeCount

GetEdgeNumbers函数定义

函数名称:

Ge tEdgeNumbers

函数原型:

St d_ReturnType Ge tEdgeNumbers

(

IoHwA b_SignalType SignalId,

Icu_Ed geNumberType *EdgeCount

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

EdgeCount

值 域:0~4294967295

边沿计数值

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 获取Capture 组件对应通道 的边沿计数值

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->CaptureE dgeCount->Ge tEdgeNumbers

EnableEdgeDetection函数定义

函数名称:

EnableE dgeDetection

函数原型:

St d_ReturnType EnableE dgeDetection

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中使 能Capture组 件对应通道的 边沿检测功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->CaptureS ignalEdgeDet ect->EnableE dgeDetection

DisableEdgeDetection函数定义

函数名称:

DisableE dgeDetection

函数原型:

St d_ReturnType DisableE dgeDetection

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中禁 止Capture组 件对应通道的 边沿检测功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->CaptureSi gnalEdgeDete ct->DisableE dgeDetection

StartSignalMeasurement函数定义

函数名称:

StartSigna lMeasurement

函数原型:

St d_ReturnType StartSigna lMeasurement

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中启 动Capture组 件对应通道的 信号测量功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->CaptureS ignalMeasure ->StartSigna lMeasurement

StopSignalMeasurement函数定义

函数名称:

StopSigna lMeasurement

函数原型:

St d_ReturnType StopSigna lMeasurement

(

IoHwA b_SignalType SignalId

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中停 止Capture组 件对应通道的 信号测量功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Capture SignalMeasur e->StopSigna lMeasurement

GetDutyCycleValues函数定义

函数名称:

GetDut yCycleValues

函数原型:

St d_ReturnType GetDut yCycleValues

(

IoHwA b_SignalType SignalId,

Icu_D utyCycleType *DutyCycle

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

signalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

DutyCycle

值域:

占空比

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwA b模块中获取C apture组件对 应通道的信号 测量占空比值

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Capt ureSignalMea sure->GetDut yCycleValues

EnablePwmNotification函数定义

函数名称:

EnablePwm Notification

函数原型:

St d_ReturnType EnablePwm Notification

(IoHwA b_SignalType SignalId);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

SignalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中使能Pwm组 件对应通道的 中断通知功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Pw mSignalOutpu t->EnablePwm Notification

DisableNotification函数定义

函数名称:

Disable Notification

函数原型:

St d_ReturnType DisablePwm Notification

(IoHwA b_SignalType SignalId);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

SignalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用 于IoHwAb模块 中禁止Pwm组 件对应通道的 中断通知功能

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->Pwm SignalOutput ->DisablePwm Notification

SetPwmOutputToIdle函数定义

函数名称:

SetPwm OutputToIdle

函数原型:

St d_ReturnType SetPwmOutput ToIdle(IoHwA b_SignalType SignalId);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

SignalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于 IoHwAb模块中 设置Pwm组件 对应通道的输 出到IDLE状态

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

>PwmSignalOu tput->SetPwm OutputToIdle

GetPwmOutputState函数定义

函数名称:

GetPw mOutputState

函数原型:

St d_ReturnType GetPw mOutputState

(

IoHwA b_SignalType SignalId,

Pwm_Out putStateType *OutputState

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

SignalId

值 域:0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

OutputState

值域:0~255

输出状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwA b模块中获取P wm组件对应通 道的输出状态

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->PwmSignalO utput->GetPw mOutputState

WritePwmDutycycle函数定义

函数名称:

Write PwmDutycycle

函数原型:

St d_ReturnType Write PwmDutycycle

(

IoHwA b_SignalType SignalId,

IoHwAb_PwmD utycycleType Outp ut_Dutycycle

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

SignalId

值 域:0~4294967295

信号描述标识符

Outp ut_Dutycycle

值 域:0~4294967295

占空比

输入 输出参数:

输出参数:

OutputState

值域:0~255

输出状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于IoHwAb模 块中设置Pwm 组件对应通道 的输出占空比

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->PwmSignalO utput->Write PwmDutycycle

WritePwmPeriodAndDutycycle函数定义

函数名称:

Wr itePwmPeriod AndDutycycle

函数原型:

St d_ReturnType Wr itePwmPeriod AndDutycycle

(

IoHwA b_SignalType SignalId,

Pw m_PeriodType Ou tput_Period,

IoHwAb_PwmD utycycleType Outp ut_Dutycycle

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

SignalId

值 域:0~4294967295

信号描述标识符

O utput_Period

值 域:0~4294967295

周期

Outp ut_Dutycycle

值 域:0~4294967295

占空比

输入 输出参数:

输出参数:

OutputState

值域:0~255

输出状态

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

用于Io HwAb模块中设 置Pwm组件对 应通道的输出 周期和占空比

接口封装

SoftwareArch itecture->Po rtInterfaces ->ClientServ erInterfaces

->PwmSignalO utput->Write PwmDutycycle

GetPwmOutputNotification函数定义

函数名称:

GetPwmOu tputNotification

函数原型:

Std_ReturnType GetPwmOu tputNotification

(

I oHwAb_SignalType SignalId,

boolean *PwmOu tputNotification

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

SignalId

值域 :0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

PwmOu tputNotification

值 域:FALSE~TRUE

通知反馈状态

返回值:

Std_ReturnTyp e:E_OK/E_NOT_OK

功能概述:

用于I oHwAb模块中获取P wm组件对应通道的 中断通知反馈状态

接口封装

SoftwareArch itecture->PortIn terfaces->Client ServerInterfaces

->PwmSignal Output->GetPwmOu tputNotification

ClearPwmOutputNotification函数定义

函数名称:

ClearPwmOu tputNotification

函数原型:

Std_ReturnType ClearPwmOu tputNotification

(

I oHwAb_SignalType SignalId,

);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

SignalId

值域 :0~4294967295

信号描述标识符

输入 输出参数:

输出参数:

返回值:

Std_ReturnTyp e:E_OK/E_NOT_OK

功能概述:

用于I oHwAb模块中清除P wm组件对应通道的 中断通知反馈状态

接口封装

SoftwareArch itecture->PortIn terfaces->Client ServerInterfaces

->PwmSignalOu tput->ClearPwmOu tputNotification

可配置函数定义

Icu_Timestamp_Notification函数定义

函数名称:

Ic u_Timestamp_ Notification

函数原型:

void Icu_Times tamp_Notific ation(void);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

值域:

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

当Capture 组件捕获到时 间戳更新时, 触发定时器中 断服务函数后 ,通知用户做 相应处理的通 知回调函数。

Icu_EdgeDetect_Notification函数定义

函数名称:

Icu _EdgeDetect_ Notification

函数原型:

void Icu_EdgeDe tect_Notific ation(void);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

值域:

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

当Capture 组件捕获到边 沿更新时,触 发边沿检测中 断服务函数后 ,通知用户做 相应处理的通 知回调函数。

Icu_EdgeCounter_Notification函数定义

函数名称:

Icu_ EdgeCounter_ Notification

函数原型:

void Icu_EdgeCou nter_Notific ation(void);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

值域:

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

当Capture 组件捕获到边 沿更新时,触 发边沿计数中 断服务函数后 ,通知用户做 相应处理的通 知回调函数。

Icu_SignalMeasure_Notification函数定义

函数名称:

Icu_Si gnalMeasure_ Notification

函数原型:

void I cu_SignalMea sure_Notific ation(void);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

值域:

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

当Capture 组件捕获到边 沿更新时,触 发信号测量中 断服务函数后 ,通知用户做 相应处理的通 知回调函数。

Group_<Num>_AdcNotification函数定义

函数名称:

Grou p_<Num>_Adc Notification

函数原型:

void Grou p_<Num>_Adc Notification (void);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

值域:

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

当Analog组 件采集到扫描 组AD转换完成 时,触发扫描 组转换完成中 断服务函数后 ,通知用户做 相应处理的通 知回调函数。

Pwm_Sync_Notification函数定义

函数名称:

Pwm_Sync_ Notification

函数原型:

void Pwm_ Sync_Notific ation(void);

服务编号:

同步/异步:

同步

是 否可重入:

可重入

输入参数:

值域:

输入 输出参数:

输出参数:

值域:

返回值:

Std_R eturnType:E _OK/E_NOT_OK

功能概述:

当Pwm组 件输出完成时 ,触发PWM异 步输出完成中 断服务函数后 ,通知用户做 相应处理的通 知回调函数。

IO硬件抽象组件配置

IoHwAb软件产品具备灵活可配置的优点,允许用户根据实际的自身需要,修改配置相关信息,满足复杂多变的自身需求。

image12

图6-1 IoHwAb信号映射配置拓扑图

IoHwAbGeneral通用配置

image13

图6-2 IoHwAbGeneral通用配置图

表6-1 IoHwAbGeneral通用配置属性

UI名称

描述

I oHwAbUseDioDev

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是 否使能对DIO组件的信 号映射和I/O硬件抽象

依赖关系

依赖于DIO模块的支持

I oHwAbUseAdcDev

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是 否使能对Adc组件的信 号映射和I/O硬件抽象

依赖关系

依赖于ADC模块的支持

I oHwAbUsePwmDev

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是 否使能对Pwm组件的信 号映射和I/O硬件抽象

依赖关系

依赖于PWM模块的支持

I oHwAbUseIcuDev

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是 否使能对Icu组件的信 号映射和I/O硬件抽象

依赖关系

依赖于Icu模块的支持

I oHwAbUseOcuDev

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是 否使能对Icu组件的信 号映射和I/O硬件抽象

依赖关系

依赖于Icu模块的支持

I oHwAbUseSpiDev

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是 否使能对Spi组件的信 号映射和I/O硬件抽象

依赖关系

依赖于Spi模块的支持

I oHwAbUseGptDev

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是 否使能对Gpt组件的信 号映射和I/O硬件抽象

依赖关系

依赖于Gpt模块的支持

I oHwAbUseExtDev

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是 否使能对Cdd组件的信 号映射和I/O硬件抽象

依赖关系

依赖于复杂设 备驱动CDD模块的支持

IoHwAb VersionInfoApi

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是否支持模 块软件版本获取接口

依赖关系

IoHwAb DevErrorDetect

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是否 使能DET开发错误检测

依赖关系

依赖于Det模块的支持

McuPlatform AdaptationType

取值范围

UNKNOWN

TRICORE_TC3XX

ARM_S32K144

ARM_S32K146

ARM_S32K148

ARM_S32K324

RES_RH850

RES_RL78

SEM_E3X

默 认取值

UNKNOWN

参数描述

用于从下拉菜单中选 用需要适配的MCU平台

依赖关系

依 赖于具体硬件的选型

AdcConfig配置

image14

图6-3 AdcConfig通用配置图

表6-2 AdcConfig通用配置属性

UI名称

描述

AdcGrp NotifCapablity

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是否使能对ADC组件 的中断通知接口映射

依赖关系

依赖于ADC模块的支持

PwmConfig配置

image15

图6-4 PwmConfig通用配置图

表6-3 PwmConfig通用配置属性

UI名称

描述

PWMEnab leNotification

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是 否使能对PWM组件的中 断通知开启接口映射

依赖关系

依赖于PWM模块的支持

PWMDisab leNotification

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是 否使能对PWM组件的中 断通知关闭接口映射

依赖关系

依赖于PWM模块的支持

PWMS etOutPutToIdle

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是否使能对PWM组件的 设置输出到IDLE状态

依赖关系

依赖于PWM模块的支持

PWM GetOutPutState

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是否使能对PW M组件的获取输出状态

依赖关系

依赖于PWM模块的支持

P WMSetDutycycle

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是否使能对PWM组 件的设置占空比输出

依赖关系

依赖于PWM模块的支持

PWMGe tPeriodAndDuty

取值范围

STD_OFF/STD_ON

默 认取值

STD_OFF

参数描述

是 否使能对PWM组件的设 置周期和占空比输出

依赖关系

依赖于PWM模块的支持

IoHwAbConfigSet配置

image16

图6-5 IoHwAbConfigSet配置图

IoHwAb_AnalogGroupDescriptor配置

image17

图6-6 IoHwAb_AnalogGroupDescriptor配置图

表6-4 IoHwAb_AnalogGroupDescripto配置属性

UI名称

描 述 *

IoHwAb_Sig nalChannelKind

取 值

范 围

IOHWAB_INVALID_SIGNAL = 0U

IOHWAB_DIGITAL_INOUT_SIGNAL

IOHWAB_INPUT_CAPTURE_SIGNAL

IOHWAB_PWM_OUTPUT_SIGNAL

IOHWAB_ANALOG_INPUT_SIGNAL

IOHWAB_OUTPUT_COMPARE_SIGNAL

IOHWAB_TIMER_OUTPUT_SIGNAL

IOHWAB_SPI_SERIAL_BUS_SIGNAL

IOHWAB_EXT_DEV_CONTROL_SIGNAL

默 认

取 值

0 U

参 数

描 述

用于指定I/O信号描述的抽象类型

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_Ad cGroupTriggSrc

取 值

范 围

ADC_TRIGG_SRC_SW = 0U

ADC_TRIGG_SRC_HW = 1U

默 认

取 值

0 U

参 数

描 述

用于指定ADC扫描组的触发源类型

依 赖

关 系

依赖于MCAL模块的支持

I oHwAb_AdcGroup ConversionMode

取 值

范 围

ADC_CONV_MODE_ONESHOT = 0U

ADC_CONV_MODE_CONTINUOUS = 1U

默 认

取 值

0 U

参 数

描 述

用于指定ADC扫描组转换模式的类型

依 赖

关 系

依赖于MCAL模块的支持

AdcConvResu ltHandlingMode

取 值

范 围

INTERRUPT = 0

POLLING = 1

DMA = 2

默 认

取 值

0 U

参 数

描 述

用 于指定ADC扫描组转换结果的处理模式

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_AdcEst imatedConvTime

取 值

范 围

0 .. 4294967296

默 认

取 值

0 U

参 数

描 述

用于指 定ADC扫描组转换过程的评估采样阈值

依 赖

关 系

依赖于MCAL模块的支持

IoH wAb_AdcGroupId

取 值

范 围

0 .. 65535

默 认

取 值

0 U

参 数

描 述

用于指 定当前信号所关联的ADC扫描组的编号

依 赖

关 系

依赖于MCAL模块的支持

IoHwA b_AdcChannelId

取 值

范 围

0 .. 255

默 认

取 值

0 U

参 数

描 述

用于指定当前信 号所关联的ADC扫描组对应通道的编号

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_IcuChannelDescriptor配置

image18

图6-7 IoHwAb_IcuChannelDescriptor配置图

表6-5 IoHwAb_IcuChannelDescriptor配置属性

UI名称

描 述 *

IoHwAb_Sig nalChannelKind

取 值

范 围

IOHWAB_INVALID_SIGNAL = 0U

IOHWAB_DIGITAL_INOUT_SIGNAL

IOHWAB_INPUT_CAPTURE_SIGNAL

IOHWAB_PWM_OUTPUT_SIGNAL

IOHWAB_ANALOG_INPUT_SIGNAL

IOHWAB_OUTPUT_COMPARE_SIGNAL

IOHWAB_TIMER_OUTPUT_SIGNAL

IOHWAB_SPI_SERIAL_BUS_SIGNAL

IOHWAB_EXT_DEV_CONTROL_SIGNAL

默 认

取 值

0 U

参 数

描 述

用于指定I/O信号描述的抽象类型

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_I nputCaptureSam plingFrequency

取 值

范 围

0 .. 4294967296

默 认

取 值

0 U

参 数

描 述

用于 指定ICU信号抽象的输入捕获采样频率

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_M easurementMode

取 值

范 围

ICU_MODE_SIGNAL_EDGE_DETECT = 0

ICU_MODE_SIGNAL_MEASUREMENT

ICU_MODE_TIMESTAMP

ICU_MODE_EDGE_COUNTER

默 认

取 值

0 U

参 数

描 述

用于指定ICU信号抽象的测量模式

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_De faultStartEdge

取 值

范 围

ICU_RISING_EDGE = 0

ICU_FALLING_EDGE

ICU_BOTH_EDGES

ICU_NO_EDGE

默 认

取 值

0 U

参 数

描 述

用于指定ICU信号抽象的默认初始边沿

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_Input CaptureChannel

取 值

范 围

0 .. 4294967296

默 认

取 值

0 U

参 数

描 述

用于指定ICU信号抽象的通道索引

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_DioChannelDescriptor配置

image19

图6-8 IoHwAb_DioChannelDescriptor配置图

表6-6 IoHwAb_DioChannelDescriptor配置属性

UI名称

描 述 *

IoHwAb_Sig nalChannelKind

取 值

范 围

IOHWAB_INVALID_SIGNAL = 0U

IOHWAB_DIGITAL_INOUT_SIGNAL

IOHWAB_INPUT_CAPTURE_SIGNAL

IOHWAB_PWM_OUTPUT_SIGNAL

IOHWAB_ANALOG_INPUT_SIGNAL

IOHWAB_OUTPUT_COMPARE_SIGNAL

IOHWAB_TIMER_OUTPUT_SIGNAL

IOHWAB_SPI_SERIAL_BUS_SIGNAL

IOHWAB_EXT_DEV_CONTROL_SIGNAL

默 认

取 值

0 U

参 数

描 述

用于指定I/O信号描述的抽象类型

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_PinCo ntrolDirection

取 值

范 围

IOHWAB_INPUT = 0U

IOHWAB_OUTPUT = 1U

默 认

取 值

0 U

参 数

描 述

用于指定DIO信号抽象的引脚控制方向

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_Defa ultLevelOutput

取 值

范 围

IOHWAB_LOW = 0U

IOHWAB_HIGH = 1U

默 认

取 值

0 U

参 数

描 述

用于指定 Digital信号抽象的默认输出引脚电平

依 赖

关 系

依赖于MCAL模块的支持

I oHwAb_DioGroup OffsetPosition

取 值

范 围

0 .. 65535

默 认

取 值

0 U

参 数

描 述

用于指 定Digital信号抽象的端口组偏移位置

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb _DioChannelGro upPositionMask

取 值

范 围

0 .. 4294967296

默 认

取 值

0 U

参 数

描 述

用于指定Di gital信号抽象的端口组偏移位置掩码

依 赖

关 系

依赖于MCAL模块的支持

IoHw Ab_DigitalChan nelGroupPortId

取 值

范 围

0 .. 4294967296

默 认

取 值

0 U

参 数

描 述

用于指定 Digital信号抽象的通道组端口标识符

依 赖

关 系

依赖于MCAL模块的支持

IoHw Ab_DigitalInpu tOutputChannel

取 值

范 围

0 .. 4294967296

默 认

取 值

0 U

参 数

描 述

用于指定Di gital信号抽象的输入输出信号通道ID

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_PwmChannelDescriptor配置

image20

图6-9 IoHwAb_PwmChannelDescriptor配置图

表6-7 IoHwAb_PwmChannelDescriptor配置属性

UI名称

描 述 *

IoHwAb_Sig nalChannelKind

取 值

范 围

IOHWAB_INVALID_SIGNAL = 0U

IOHWAB_DIGITAL_INOUT_SIGNAL

IOHWAB_INPUT_CAPTURE_SIGNAL

IOHWAB_PWM_OUTPUT_SIGNAL

IOHWAB_ANALOG_INPUT_SIGNAL

IOHWAB_OUTPUT_COMPARE_SIGNAL

IOHWAB_TIMER_OUTPUT_SIGNAL

IOHWAB_SPI_SERIAL_BUS_SIGNAL

IOHWAB_EXT_DEV_CONTROL_SIGNAL

默 认

取 值

0 U

参 数

描 述

用于指定I/O信号描述的抽象类型

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_PwmOutp utPeriodPolicy

取 值

范 围

PWM_FIXED_PERIOD = 0U

PWM_FIXED_PERIOD_SHIFTED = 1U

PWM_VARIABLE_PERIOD = 2U

默 认

取 值

0 U

参 数

描 述

用于指定PWM信号抽象的输出控制类型

依 赖

关 系

依赖于MCAL模块的支持

IoHwAb_PwmOu tputEdgeNotify

取 值

范 围

PWM_RISING_EDGE = 1U

PWM_FALLING_EDGE = 2U

PWM_BOTH_EDGES = 3U

默 认

取 值

0 U

参 数

描 述

用于指定 PWM信号抽象的PWM输出边沿通知类型

依 赖

关 系

依赖于MCAL模块的支持

IoH wAb_PwmChannel

取 值

范 围

0 .. 4294967296

默 认

取 值

0 U

参 数

描 述

用于指定PWM信号抽象的信号通道ID

依 赖

关 系

依赖于MCAL模块的支持

应用程序集成

IoHwAbConfigSet底层设备驱动程序MCAL集成

首先,通过第三方开发工具EB或Vector Config软件,对IoHwAb模块信号映射所需的设备资源驱动程序进行配置,生成相应的代码文件和arxml配置文件;然后,从EB安装目录下拷贝MCAL静态代码到应用工程,同时将生成的配置文件也拷贝进工程;最后导出arxml配置文件并导入到BSW配置工具。

导入EB生成的arxml文件到BSW配置工具

image21

图7-1 从EB/arxml文件中导入I/O相关的模块信息

image22

图7-2 从EB/arxml文件中导入I/O相关的模块信息

IoHwAbGeneral通用配置

image23

图7-3 根据实际应用选择需要做硬件抽象的模块和平台适配

当前版本的IoHwAb模块支持DIO、ICU、ADC和PWM四个组件的硬件抽象,并可选择性配置是否创建服务提供给SWC进行使用。平台适配是可选的,比如S32K14X系列,TC3XX系列等平台。

image24

图7-4 根据MCAL的实现情况配置ADC的中断通知接口

在实现ADC采集完成的中断通知时,有些平台不需要调用使能或禁止API接口,只要触发了中断服务函数就会强制调用中断通知回调函数,有些平台实现不一样只有调用了使能或禁止API接口,才能调用面向用户的中断通知回调函数。在实际配置过程中根据MCAL来选择性勾选这个配置项。

image25

图7-5 根据MCAL的实现情况配置PWM的API接口

在通过CCU或GTM模块实现PWM输出时,有些平台的MCAL驱动程序支持这些API接口,有些平台的MCAL实现不一样不支持这些API接口。在做I/O硬件抽象实际配置过程中根据MCAL来选择性勾选这些配置项。

IoHwAbConfigSet配置

当完成了平台适配的选择以后,就可以针对具体的I/O硬件抽象组件进行配置,配置项中有些灰色的不可更改项完全依赖于MCAL的配置,不需要关注。

image26

图7-6 根据MCAL的实现情况配置IoHwAbConfigSet的I/O属性

image27

图7-7 根据MCAL的实现情况配置Analog组件的属性

如图所示,通道信号描述的类型、扫描组的触发源类型、扫描组的转换模式等配置都是依赖于MCAL的配置不可更改。根据用户的实际应用需求可选择性地配置转换结果处理方式,如INTERRUPT、DMA和POLLING等方式;当用户选择了Polling方式时评估转换时间配置参数才有效,其他方式是不用关注这个配置的。因为MCAL在配置过程中关联了若干个扫描组,并且每个组关联了若干个模拟量输入通道信号,用户可以选择性地裁剪这些信号,并把这些信号映射到I/O硬件抽象组件中,以标准化的I/O服务接口提供给上层使用。当配置完ADC组件硬件抽象以及生成代码时,也会依赖于IoHwAbUseAdcDev的配置,如果其配置选择为STD_OFF时,ADC组件硬件抽象的所有配置项都是无效的,不会生成任何代码,反之正常生成ADC组件硬件抽象的配置代码。

image28

图7-8 根据MCAL的实现情况配置Capture组件的属性

如图所示,通道信号描述的类型、输入捕获采样频率、测量模式和默认启动边沿等配置都是依赖于MCAL的配置不可更改。因为MCAL在配置过程中关联了若干个输入捕获通道信号,用户可以选择性地裁剪这些信号,并把这些信号映射到I/O硬件抽象组件中,以标准化的I/O服务接口提供给上层使用。当配置完ICU组件硬件抽象以及生成代码时,也会依赖于IoHwAbUseIcuDev的配置,如果其配置选择为STD_OFF时,ICU组件硬件抽象的所有配置项都是无效的,不会生成任何代码,反之正常生成ICU组件硬件抽象的配置代码。

image29

图7-9 根据MCAL的实现情况配置Digital组件的属性

如图所示,通道信号描述的类型、通道组偏移位置、和通道组位置掩码等配置都是依赖于MCAL的配置不可更改。因为MCAL在配置过程中关联了若干个数字输入输出通道信号,用户可以选择性地裁剪这些信号,并把这些信号映射到I/O硬件抽象组件中,以标准化的I/O服务接口提供给上层使用。当配置完DIO组件硬件抽象以及生成代码时,也会依赖于IoHwAbUseDioDev的配置,如果其配置选择为STD_OFF时,DIO组件硬件抽象的所有配置项都是无效的,不会生成任何代码,反之正常生成DIO组件硬件抽象的配置代码。

image30

图7-10 根据MCAL的实现情况配置Pwm组件的属性

如图所示,通道信号描述的类型和PWM输出周期属性等配置都是依赖于MCAL的配置不可更改。因为MCAL在配置过程中关联了若干个PWM输出通道信号,用户可以选择性地裁剪这些信号,并把这些信号映射到I/O硬件抽象组件中,以标准化的I/O服务接口提供给上层使用。当配置完PWM组件硬件抽象以及生成代码时,也会依赖于IoHwAbUsePwmDev的配置,如果其配置选择为STD_OFF时,PWM组件硬件抽象的所有配置项都是无效的,不会生成任何代码,反之正常生成PWM组件硬件抽象的配置代码。

IO服务组件封装配置

捕获2

图7-11 根据IoHwAb的实现配置情况生成硬件抽象服务API接口

image31

图7-12 根据IoHwAb的实现配置情况生成硬件抽象服务API接口

当完成所有的硬件抽象I/O属性配置时,点击Generate System model for this module这个按钮,执行I/O硬件抽象模块的API接口封装,用于提供给上层SWC使用,点击以后生成相应的serviceComponent.arxml文件。

image32

图7-13 根据IoHwAb的实现配置情况生成配置文件和归档文件

ECU抽象SWC服务组件配置

image33

图7-14 拷贝IoHwAb服务组件到SWC配置工具

当配置完IO硬件抽象和API接口封装以后,将生成的服务组件封装归档serviceComponent.arxml文件和数据类型AUTOSAR_StdTypes.arxml文件一起拷贝到SWC配置工具的workspace中,然后打开查看SWC配置工具的所有参数属性的配置是否都提取出来并可以在SWC工具界面上显示。

在做I/O硬件抽象的时候不建议在SWC配置工具中更改IoHwAb服务组件的任何配置,需要做API接口的需求更新升级时,一定要向工具链的开发人员进行做相应的工具链升级,然后通过服务组件封装的机制同步到SWC工具,这样的话BSW层的IoHwAb与SWC才能保持一致,避免产生信号通道的错位,导致IO控制和硬件通道不匹配的现象。

image34

图7-15 IoHwAb服务组件的实现数据类型配置

image35

图7-16 IoHwAb服务组件的AnalogSignalInput接口配置

image36

图7-17 IoHwAb服务组件的CapturePublic接口配置

image37

图7-18 IoHwAb服务组件的CaptureEdgeCount接口配置

image38

图7-19 IoHwAb服务组件的CaptureSignalEdgeDetect接口配置

image39

图7-20 IoHwAb服务组件的CaptureSignalMeasure接口配置

image40

图7-21 IoHwAb服务组件的CaptureTimestamp接口配置

image41

图7-22 IoHwAb服务组件的DigitalSignalRead接口配置

image42

图7-23 IoHwAb服务组件的DigitalSignalWrite接口配置

image43

图7-24 IoHwAb服务组件的PwmSignalOutput接口配置

image44

图7-25 服务组件的EcuAbstractionSwc-IoHwAb配置

image45

图7-26 服务组件的EcuAbstractionSwc-IoHwAb-PPort配置

image46

图7-27 服务组件的EcuAbstractionSwc-IoHwAb-PPort配置

备注:这个参数的配置与硬件抽象应用组件SWC进行连接,IoHwAb通过端口映射实现Server-Client的模型来创建SWC,实现信号抽象的连接。

image47

图7-28 服务组件的EcuAbstractionSwc-IoHwAb-PPort配置

image48

图7-29 服务组件的EcuAbstractionSwc-IoHwAb-PPort配置

image49

图7-30 服务组件的EcuAbstractionSwc-IoHwAb-PPort配置

image50

图7-31 服务组件的EcuAbstractionSwc-IoHwAb-PPort配置

image51

图7-32 服务组件的EcuAbstractionSwc-IoHwAb-PPort配置

image52

图7-33 服务组件的EcuAbstractionSwc-IoHwAb-PPort配置

image53

图7-34 服务组件的EcuAbstractionSwc-IoHwAb-Behavior配置

image54

图7-35 服务组件的EcuAbstractionSwc-IoHwAb-Behavior-Event配置

image55

图7-36 服务组件的EcuAbstractionSwc-IoHwAb-Behavior-Event-OP配置

image56

图7-37 服务组件的EcuAbstractionSwc-IoHwAb-Behavior-Event-OP配置

image57

图7-38 服务组件的EcuAbstractionSwc-IoHwAb-Behavior-Event-API配置

image58

图7-39 服务组件的EcuAbstractionSwc-IoHwAb-Behavior-Event-API配置

image59

图7-40 服务组件的EcuAbstractionSwc-IoHwAb-Behavior-Event-API配置

image60

图7-41 服务组件的EcuAbstractionSwc-IoHwAb-Behavior-Event-API配置

备注:这个参数的配置与I/O硬件抽象的信号描述是一对一进行映射的,并且从0开始排序,按照信号类型的以此类推进行生成代码。

image61

图7-42 服务组件的EcuAbstractionSwc-IoHwAb-Behavior-Event-Runnable配置

image62

图7-43 服务组件的EcuAbstractionSwc-IoHwAb-Behavior-Event-Runnable配置

image63

图7-44 服务组件的EcuAbstractionSwc-IoHwAb-Behavior-Event-Runnable配置

IO硬件抽象应用组件配置

根据加载的IO硬件抽象服务组件的配置情况来实现面向用户层的SWC组件,并且以Server-Client的方式搭建应用组件IoHwAb_SignalAnalysis。并于服务组件建立连接,完成一整套流程,最终实现IO硬件抽象的完整工具链。

image64

图7-45 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis配置

image65

图7-46 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-RPort配置

image66

图7-47 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-RPort配置

image67

图7-48 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-RPort配置

image68

图7-49 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-RPort配置

image69

图7-50 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-RPort配置

image70

图7-51 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-RPort配置

image71

图7-52 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-RPort配置

image72

图7-53 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-RPort配置

image73

图7-54 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-Behavior配置

image74

图7-55 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-Behavior-InitEvent配置

image75

图7-56 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-Behavior-TimingEvent配置

image76

图7-57 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-Behavior-Runnable配置

image77

图7-58 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-Behavior-Runnable配置

image78

图7-59 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-Behavior-Runnable配置

image79

图7-60 应用组件的ApplicationSwc-IoHwAb_SignalAnalysis-Behavior-Runnable配置

其他关联组件配置

image80

图7-61 其他组件的BottomSwc配置

image81

图7-62 其他组件的BottomSwc-配置

image82

图7-63 其他组件的BottomSwc-配置

image83

图7-64 其他组件的BottomSwc-配置

image84

图7-65 其他组件的BottomSwc-配置

image85

图7-66 其他组件的TopSwc-配置

image86

图7-67 其他组件的TopSwc-配置

Infrastructures配置

image87

图7-68 Infrastructures-配置

Ecu Network关联配置

image88

图7-69 Ecu Network配置

硬件抽象IoHwAb与RTE关联配置

image89

图7-70 打开系统应映射编辑框

image90

图7-71 创建ECU萃取生成SWC到ECU实例的arxml文件

image91

图7-72 将SWC萃取arxml文件导入到BSW配置工具

image92

图7-73 打开BSW配置工具的RTE编辑界面

image93

图7-74 BSW配置工具的RTE编辑界面中选择ECU萃取的目标系统

当IoHwAb与RTE全部关联好以后,点击同步ECU萃取Synchronize ECU Extract按钮,然后点击保存按钮。

image94

图7-75 在BSW配置工具的RTE编辑界面中生成RTE的配置项

image95

图7-76 在BSW配置工具的RTE编辑界面中生成RTE的配置项

硬件抽象IoHwAb代码集成

当所有的配置项都完成以后,将所有工具链生成的代码全部拷贝到指定的工程中,包括MCAL底层设备驱动程序的静态代码和配置文件,IoHwAb硬件抽象模块的静态代码和配置文件,IoHwAb和RTE关联生成的配置文件等操作。