MCUSW
Dio.h File Reference

Introduction

This file contains interface header for DIO MCAL driver to be used by other AUTOSAR MCAL Layers.

Go to the source code of this file.

Data Structures

struct  Dio_ChannelGroupType
 Type definition for identifying channel groups (meaning a set of pins in one port) More...
 

Macros

#define DIO_HW_UNIT_CNT   (10U)
 Total HW units or Instances. More...
 
#define DIO_PORT_WIDTH   (32U)
 Width of GPIO register in this platform not to be modified. More...
 
#define DIO_MCAL_2139_FIXED   (0U)
 Read back issue in Maxwell is resolved or not. More...
 
DIO Driver Module SW Version Info

Defines for DIO Driver version used for compatibility checks

#define DIO_SW_MAJOR_VERSION   (1U)
 Driver Implementation Major Version. More...
 
#define DIO_SW_MINOR_VERSION   (3U)
 Driver Implementation Minor Version. More...
 
#define DIO_SW_PATCH_VERSION   (2U)
 Driver Implementation Patch Version. More...
 
DIO Driver Module AUTOSAR Version Info

Defines for DIO Driver AUTOSAR version used for compatibility checks

#define DIO_AR_RELEASE_MAJOR_VERSION   (4U)
 AUTOSAR Major version specification implemented by DIO Driver. More...
 
#define DIO_AR_RELEASE_MINOR_VERSION   (3U)
 AUTOSAR Minor version specification implemented by DIO Driver. More...
 
#define DIO_AR_RELEASE_REVISION_VERSION   (1U)
 AUTOSAR Patch version specification implemented by DIO Driver. More...
 
DIO Driver ID Info
#define DIO_VENDOR_ID   ((uint16) 44U)
 Texas Instruments Vendor ID. More...
 
#define DIO_MODULE_ID   ((uint16) 120U)
 DIO Driver Module ID. More...
 
Dio Error Codes

Error codes returned by Driver functions

#define DIO_E_PARAM_INVALID_CHANNEL_ID   (0x0AU)
 ERROR:API service called with invalid channel ID. More...
 
#define DIO_E_PARAM_INVALID_PORT_ID   (0x14U)
 ERROR:API service called with invalid port ID. More...
 
#define DIO_E_PARAM_INVALID_GROUP   (0x1FU)
 ERROR:API service called with invalid channel group ID. More...
 
#define DIO_E_PARAM_POINTER   (0x20U)
 ERROR:Dio_GetVersionInfo() called with NULL_PTR as parameter. More...
 
Dio Service Ids

The Service Id is one of the argument to Det_ReportError function and is used to identify the source of the error

#define DIO_SID_READ_CHANNEL   (0U)
 Dio_ReadChannel() More...
 
#define DIO_SID_WRITE_CHANNEL   (1U)
 Dio_WriteChannel() More...
 
#define DIO_SID_READ_PORT   (2U)
 Dio_ReadPort() More...
 
#define DIO_SID_WRITE_PORT   (3U)
 Dio_WritePort() More...
 
#define DIO_SID_READ_CHL_GROUP   (4U)
 Dio_ReadChannelGroup() More...
 
#define DIO_SID_WRITE_CHL_GROUP   (5U)
 Dio_WriteChannelGroup() More...
 
#define DIO_SID_FLIP_CHANNEL   (7U)
 Dio_FlipChannel() More...
 
#define DIO_SID_GET_VERSION_INFO   (18U)
 Dio_GetVersionInfo() More...
 

Typedefs

typedef uint32 Dio_ChannelType
 type definition for identifying DIO channels (meaning single port pins) More...
 
typedef uint32 Dio_PortType
 type definition for identifying ports More...
 
typedef uint32 Dio_PortLevelType
 type definition for setting port level values More...
 
typedef uint8 Dio_LevelType
 type definition for setting DIO channnel level values (allowed values: STD_HIGH and STD_LOW) More...
 

Functions

Dio_LevelType Dio_ReadChannel (Dio_ChannelType ChannelId)
 Returns the value of the specified DIO channel. More...
 
void Dio_WriteChannel (Dio_ChannelType ChannelId, Dio_LevelType Level)
 Service to set a level of a channel. More...
 
Dio_PortLevelType Dio_ReadPort (Dio_PortType PortId)
 Returns the level of all channels of that port. More...
 
void Dio_WritePort (Dio_PortType PortId, Dio_PortLevelType Level)
 Service to set a value of the port. More...
 
Dio_PortLevelType Dio_ReadChannelGroup (const Dio_ChannelGroupType *ChannelGroupIdPtr)
 This Service reads a subset of the adjoining bits of a port. More...
 
void Dio_WriteChannelGroup (const Dio_ChannelGroupType *ChannelGroupIdPtr, Dio_PortLevelType Level)
 Service to set a subset of the adjoining bits of a port to a specified level. More...
 
void Dio_GetVersionInfo (Std_VersionInfoType *versioninfo)
 Service to get the version information of this module. More...
 
Dio_LevelType Dio_FlipChannel (Dio_ChannelType ChannelId)
 Service to flip (change from 1 to 0 or from 0 to 1) the level of a channel and return the level of the channel. More...
 
uint32 Dio_RegisterReadback (Dio_ChannelType ChannelId)
 This function reads the important registers of the hardware unit and returns the value in the structure. More...