/** * @copyright 2022 indie Semiconductor * * This file is proprietary to indie Semiconductor. * All rights reserved. Reproduction or distribution, in whole * or in part, is forbidden except by express written permission * of indie Semiconductor. * * @file pwm_aux_sfr.h */ #ifndef PWM_AUX_SFR_H__ #define PWM_AUX_SFR_H__ #include /* ------- Start of section using anonymous unions and disabling warnings ------- */ #if defined (__CC_ARM) #pragma push #pragma anon_unions #elif defined (__ICCARM__) #pragma language=extended #elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wc11-extensions" #pragma clang diagnostic ignored "-Wreserved-id-macro" #elif defined (__GNUC__) /* anonymous unions are enabled by default */ #elif defined (__TMS470__) /* anonymous unions are enabled by default */ #elif defined (__TASKING__) #pragma warning 586 #elif defined (__CSMC__) /* anonymous unions are enabled by default */ #else #warning Not supported compiler type #endif /** * @brief A structure to represent Special Function Registers for PWM_AUX. */ typedef struct { struct { uint8_t : 8; /* (reserved) */ uint8_t PRESCALESEL : 8; /*!< Prescaler select */ uint16_t PERIOD : 16; /*!< Period */ }BASE; /* +0x000 */ uint16_t PWMCNT; /* +0x004 */ uint8_t _RESERVED[2]; /* +0x006 */ }PWM_AUX_t; typedef union { struct { uint16_t PFALL : 16; /*!< Pulse Fall */ uint16_t PRISE : 16; /*!< Pulse Rise */ }; uint32_t WORD; }PWM_AUX_PULSE_t; /* +0x028 */ typedef struct { PWM_AUX_t PWM_AUX[2]; uint8_t BASE_SEL; /* +0x010 */ uint8_t _RESERVED_11[3]; /* +0x011 */ union { struct { uint8_t ENAREQ : 8; uint8_t : 8; /* (reserved) */ uint8_t : 8; /* (reserved) */ uint8_t ENAREQALL : 1; uint8_t CLRREQALL : 1; uint8_t FORCEINACTIVE : 1; uint8_t : 5; /* (reserved) */ }; uint32_t WORD; } ENAREQ; /* +0x014 */ uint8_t ENASTS; /* +0x018 */ uint8_t _RESERVED_19[3]; /* +0x019 */ uint8_t INIT; /* +0x01C */ uint8_t _RESERVED_1D[3]; /* +0x01D */ uint8_t INVERT; /* +0x020 */ uint8_t _RESERVED_21[3]; /* +0x021 */ uint8_t UPDATE; /* +0x024 */ uint8_t _RESERVED_25[3]; /* +0x025 */ PWM_AUX_PULSE_t PULSE[6]; uint8_t INTPOSEDGENA; /*= 6010050) #pragma clang diagnostic pop #elif defined (__GNUC__) /* anonymous unions are enabled by default */ #elif defined (__TMS470__) /* anonymous unions are enabled by default */ #elif defined (__TASKING__) #pragma warning restore #elif defined (__CSMC__) /* anonymous unions are enabled by default */ #else #warning Not supported compiler type #endif /** * @brief The starting address of PWM_AUX SFRS. */ #define PWM_AUX_SFRS ((__IO PWM_AUX_SFRS_t *)0x40010800) #endif /* end of __PWM_AUX_SFR_H__ section */