/*************************************************************************************/ /** * @file : Dio_Cfg.h * @brief : AUTOSAR Dio configuration header file * - Platform: Z20K14xM * - Autosar Version: 4.6.0 * @version : 1.2.0 * @author : Zhixin Semiconductor * @note : None * * @copyright : Copyright (c) 2021-2023 Zhixin Semiconductor Ltd. All rights reserved. *************************************************************************************/ /** @addtogroup DIO_CFG * @{ */ #ifndef DIO_CFG_H #define DIO_CFG_H #ifdef __cplusplus extern "C" { #endif /** @defgroup Public_MacroDefinition * @{ */ #define DIO_CFG_H_VENDOR_ID 0x00B3U #define DIO_CFG_H_AR_RELEASE_MAJOR_VERSION 4U #define DIO_CFG_H_AR_RELEASE_MINOR_VERSION 6U #define DIO_CFG_H_AR_RELEASE_REVISION_VERSION 0U #define DIO_CFG_H_SW_MAJOR_VERSION 1U #define DIO_CFG_H_SW_MINOR_VERSION 2U #define DIO_CFG_H_SW_PATCH_VERSION 0U #ifdef MCAL_INTER_MODULE_ASR_CHECK_ENABLE /* Check if header file and Std_Types.h file are of the same Autosar version */ #if ((DIO_CFG_H_AR_RELEASE_MAJOR_VERSION != STD_AR_RELEASE_MAJOR_VERSION) || \ (DIO_CFG_H_AR_RELEASE_MINOR_VERSION != STD_AR_RELEASE_MINOR_VERSION)) #error "AUTOSAR Version of Dio_Cfg.h and Std_Types.h are different" #endif #endif /** * @brief Enable or Disable Development Error Detection. */ #define DIO_DEV_ERROR_DETECT (STD_ON) #if (DIO_DEV_ERROR_DETECT == STD_ON) #endif /** * @brief Enable or Disable Dio module verion acquisition. */ #define DIO_VERSION_INFO_API (STD_ON) /** * @brief Enable or Disable function for flipping channel. * */ #define DIO_FLIP_CHANNEL_API (STD_ON) /** * @brief Enable or Disable function for mask channel. * */ #define DIO_MASKED_WRITE_PORT_API (STD_ON) /** * @brief Number of implemented ports. * */ #define DIO_PORT_NUM ((uint16)0x5U) /** * @brief The number of partition on the port */ #define DIO_PORT_PARTITION_NUM ((uint16)5U) /** * @brief Number of channels available on the implemented ports. */ #if (STD_ON == DIO_DEV_ERROR_DETECT) #define DIO_CHANNEL_NUM ((uint32)159U) #endif /** * @brief The number of partition on the channel. */ #define DIO_CHANNEL_PARTITION_NUM ((uint16)160U) /** * @brief Mask representing no available channels on a port. */ #if (STD_ON == DIO_DEV_ERROR_DETECT) #define DIO_NO_AVAILABLE_CHANNEL_NUM ((Dio_PortLevelType)0x0U) #endif /** * @brief Mask representing the maximum valid offset for a channel group. */ #if (STD_ON == DIO_DEV_ERROR_DETECT) #define DIO_VALID_OFFSET_MAX ((uint8)0x1FU) #endif /** * @brief Dio driver Pre-Compile configuration switch. */ #define DIO_PRECOMPILE_SUPPORT /* ========== DioCfg ========== */ /* ---------- DIO_PA ---------- */ /** * @brief Symbolic name for the port DIO_PA. * */ #define DIO_PA ((uint8)0x00U) /** * @brief Symbolic name for the channel PTA08_HSS_DEN. * */ #define PTA08_HSS_DEN ((uint16)0x0008U) /** * @brief Symbolic name for the channel PTA09_HSS_IN3. * */ #define PTA09_HSS_IN3 ((uint16)0x0009U) /** * @brief Symbolic name for the channel PTA10_HSS_IN2. * */ #define PTA10_HSS_IN2 ((uint16)0x000aU) /** * @brief Symbolic name for the channel PTA11_HSS_IN1. * */ #define PTA11_HSS_IN1 ((uint16)0x000bU) /** * @brief Symbolic name for the channel PTA17_BOOST_EN. * */ #define PTA17_BOOST_EN ((uint16)0x0011U) /* ---------- DIO_PB ---------- */ /** * @brief Symbolic name for the port DIO_PB. * */ #define DIO_PB ((uint8)0x01U) /** * @brief Symbolic name for the channel PTB09_STP_EN. * */ #define PTB09_STP_EN ((uint16)0x0029U) /** * @brief Symbolic name for the channel PTB04. * */ #define PTB04 ((uint16)0x0024U) /** * @brief Symbolic name for the channel PTB05. * */ #define PTB05 ((uint16)0x0025U) /** * @brief Symbolic name for the channel PTB17. * */ #define PTB17 ((uint16)0x0031U) /* ---------- DIO_PC ---------- */ /** * @brief Symbolic name for the port DIO_PC. * */ #define DIO_PC ((uint8)0x02U) /** * @brief Symbolic name for the channel PTC05_HSS_DSEL. * */ #define PTC05_HSS_DSEL ((uint16)0x0045U) /** * @brief Symbolic name for the channel PTC09. * */ #define PTC09 ((uint16)0x0049U) /* ---------- DIO_PD ---------- */ /** * @brief Symbolic name for the port DIO_PD. * */ #define DIO_PD ((uint8)0x03U) /** * @brief Symbolic name for the channel PTD05_MOTOR_S2. * */ #define PTD05_MOTOR_S2 ((uint16)0x0065U) /** * @brief Symbolic name for the channel PTD06_MOTOR_S1. * */ #define PTD06_MOTOR_S1 ((uint16)0x0066U) /** * @brief Symbolic name for the channel PTD07_MOTOR_S0. * */ #define PTD07_MOTOR_S0 ((uint16)0x0067U) /** * @brief Symbolic name for the channel PTD11_MOTOR_S3. * */ #define PTD11_MOTOR_S3 ((uint16)0x006bU) /** * @brief Symbolic name for the channel PTD16. * */ #define PTD16 ((uint16)0x0070U) /* ---------- DIO_PE ---------- */ /** * @brief Symbolic name for the port DIO_PE. * */ #define DIO_PE ((uint8)0x04U) /** * @brief Symbolic name for the channel PTE03_VCCX3_EN. * */ #define PTE03_VCCX3_EN ((uint16)0x0083U) /** * @brief Symbolic name for the channel PTE07_BOOST_FUT. * */ #define PTE07_BOOST_FUT ((uint16)0x0087U) /** @} end of group Public_MacroDefinition */ /** @defgroup Global_VariableDefinition * @{ */ /** * @brief Array: the available pins in each port. */ #define DIO_CONFIG_AVAILABLE_PIN \ extern const Dio_PortLevelType Dio_AvailablePinsForWrite[DIO_PORT_NUM];\ extern const Dio_PortLevelType Dio_AvailablePinsForRead[DIO_PORT_NUM]; #define DIO_CONFIG_GROUP_LIST #define DIO_CONFIG_GROUP_PARTITION /** @} end of group Global_VariableDefinition */ #ifdef __cplusplus } #endif #endif /* DIO_CFG_H */ /** @} end of group DIO_CFG */