64 #define PWM_GEN_BADDR(_mod_, _gen_) \
66 #define PWM_GEN_EXT_BADDR(_mod_, _gen_) \
67 ((_mod_) + PWM_GEN_EXT_0 + \
68 ((_gen_) - PWM_GEN_0) * 2)
69 #define PWM_OUT_BADDR(_mod_, _out_) \
70 ((_mod_) + ((_out_) & 0xFFFFFFC0))
71 #define PWM_IS_OUTPUT_ODD(_out_) \
72 ((_out_) & 0x00000001)
89 _PWMGenValid(uint32_t ui32Gen)
111 _PWMOutValid(uint32_t ui32PWMOut)
207 ASSERT(_PWMGenValid(ui32Gen));
285 ASSERT(_PWMGenValid(ui32Gen));
301 ASSERT((ui32Period / 2) < 65536);
310 ASSERT((ui32Period <= 65536) && (ui32Period != 0));
342 ASSERT(_PWMGenValid(ui32Gen));
389 ASSERT(_PWMGenValid(ui32Gen));
418 ASSERT(_PWMGenValid(ui32Gen));
450 uint32_t ui32GenBase, ui32Reg;
456 ASSERT(_PWMOutValid(ui32PWMOut));
479 ASSERT(ui32Width < ui32Reg);
484 ui32Reg = ui32Reg - ui32Width;
520 uint32_t ui32GenBase, ui32Reg, ui32Load;
526 ASSERT(_PWMOutValid(ui32PWMOut));
546 ui32Reg = ui32Load - ui32Reg;
553 ui32Reg = ui32Reg * 2;
582 uint16_t ui16Rise, uint16_t ui16Fall)
588 ASSERT(_PWMGenValid(ui32Gen));
630 ASSERT(_PWMGenValid(ui32Gen));
845 if(bDriveHigh ==
true)
898 if(bFaultSuppress ==
true)
928 switch(ui32Base + ui32Gen)
1089 void (*pfnIntHandler)(
void))
1097 ASSERT(_PWMGenValid(ui32Gen));
1146 ASSERT(_PWMGenValid(ui32Gen));
1316 uint32_t ui32IntTrig)
1322 ASSERT(_PWMGenValid(ui32Gen));
1358 uint32_t ui32IntTrig)
1364 ASSERT(_PWMGenValid(ui32Gen));
1402 ASSERT(_PWMGenValid(ui32Gen));
1457 ASSERT(_PWMGenValid(ui32Gen));
1692 uint32_t ui32MinFaultPeriod,
1693 uint32_t ui32FaultSenses)
1699 ASSERT(_PWMGenValid(ui32Gen));
1760 uint32_t ui32Group, uint32_t ui32FaultTriggers)
1766 ASSERT(_PWMGenValid(ui32Gen));
1829 ASSERT(_PWMGenValid(ui32Gen));
1888 ASSERT(_PWMGenValid(ui32Gen));
1931 uint32_t ui32Group, uint32_t ui32FaultTriggers)
1937 ASSERT(_PWMGenValid(ui32Gen));
2091 uint_fast8_t ui8Index;
2092 uint32_t ui32PWMOutputMask;
2093 uint32_t ui32UpdateValueMask;
2094 uint32_t ui32UpdateValue;
2112 ui32PWMOutputMask = 1;
2113 ui32UpdateValue = 0;
2114 ui32UpdateValueMask = 0;
2124 if(ui32PWMOutputMask & ui32PWMOutBits)
2130 ui32UpdateValue |= ui32Mode << (ui8Index * 2);
2135 ui32UpdateValueMask |= 3 << (ui8Index * 2);
2141 ui32PWMOutputMask = ui32PWMOutputMask << 1;
#define PWM_X_CTL_LOADUPD
uint32_t PWMPulseWidthGet(uint32_t ui32Base, uint32_t ui32PWMOut)
#define INT_PWM0_FAULT_TM4C123
#define INT_PWM0_2_TM4C129
#define PWM_X_CTL_DBCTLUPD_M
#define PWM_GEN_BADDR(_mod_, _gen_)
void PWMGenFaultClear(uint32_t ui32Base, uint32_t ui32Gen, uint32_t ui32Group, uint32_t ui32FaultTriggers)
void PWMGenIntUnregister(uint32_t ui32Base, uint32_t ui32Gen)
void PWMDeadBandDisable(uint32_t ui32Base, uint32_t ui32Gen)
#define PWM_X_GENA_ACTCMPAU_ONE
void PWMOutputState(uint32_t ui32Base, uint32_t ui32PWMOutBits, bool bEnable)
void PWMFaultIntClearExt(uint32_t ui32Base, uint32_t ui32FaultInts)
#define PWM_GEN_EXT_BADDR(_mod_, _gen_)
#define PWM_FAULT_GROUP_1
#define PWM_O_X_MINFLTPER
#define PWM_X_GENB_ACTLOAD_ONE
static uint32_t _PWMGenIntNumberGet(uint32_t ui32Base, uint32_t ui32Gen)
#define PWM_FAULT3_SENSE_LOW
void PWMIntEnable(uint32_t ui32Base, uint32_t ui32GenFault)
void PWMDeadBandEnable(uint32_t ui32Base, uint32_t ui32Gen, uint16_t ui16Rise, uint16_t ui16Fall)
#define PWM_X_CTL_MINFLTPER
void PWMFaultIntUnregister(uint32_t ui32Base)
#define PWM_FAULT0_SENSE_HIGH
void PWMGenIntRegister(uint32_t ui32Base, uint32_t ui32Gen, void(*pfnIntHandler)(void))
uint32_t PWMGenFaultStatus(uint32_t ui32Base, uint32_t ui32Gen, uint32_t ui32Group)
#define PWM_SYSCLK_DIV_64
void PWMIntDisable(uint32_t ui32Base, uint32_t ui32GenFault)
#define INT_PWM0_1_TM4C129
#define INT_PWM1_FAULT_TM4C123
uint32_t PWMGenFaultTriggerGet(uint32_t ui32Base, uint32_t ui32Gen, uint32_t ui32Group)
#define PWM_OUT_BADDR(_mod_, _out_)
void PWMClockSet(uint32_t ui32Base, uint32_t ui32Config)
#define PWM_SYSCLK_DIV_32
void PWMGenFaultTriggerSet(uint32_t ui32Base, uint32_t ui32Gen, uint32_t ui32Group, uint32_t ui32FaultTriggers)
void PWMGenFaultConfigure(uint32_t ui32Base, uint32_t ui32Gen, uint32_t ui32MinFaultPeriod, uint32_t ui32FaultSenses)
uint32_t PWMIntStatus(uint32_t ui32Base, bool bMasked)
uint32_t PWMClockGet(uint32_t ui32Base)
#define PWM_X_CTL_GENBUPD_M
#define PWM_ISC_INTFAULT0
#define PWM_X_DBCTL_ENABLE
#define PWM_SYSCLK_DIV_16
#define PWM_FAULT2_SENSE_LOW
#define INT_PWM1_0_TM4C123
#define PWM_IS_OUTPUT_ODD(_out_)
#define PWM_X_CTL_DBRISEUPD_M
#define PWM_OUTPUT_MODE_NO_SYNC
#define PWM_X_CTL_CMPAUPD
#define PWM_OUTPUT_MODE_SYNC_GLOBAL
#define PWM_FAULT1_SENSE_LOW
#define PWM_X_CTL_DBFALLUPD_M
#define PWM_X_GENA_ACTCMPAD_ZERO
void PWMGenPeriodSet(uint32_t ui32Base, uint32_t ui32Gen, uint32_t ui32Period)
void PWMGenIntTrigEnable(uint32_t ui32Base, uint32_t ui32Gen, uint32_t ui32IntTrig)
void PWMOutputInvert(uint32_t ui32Base, uint32_t ui32PWMOutBits, bool bInvert)
void PWMOutputFault(uint32_t ui32Base, uint32_t ui32PWMOutBits, bool bFaultSuppress)
void PWMFaultIntRegister(uint32_t ui32Base, void(*pfnIntHandler)(void))
void PWMSyncUpdate(uint32_t ui32Base, uint32_t ui32GenBits)
#define INT_PWM1_3_TM4C123
uint32_t PWMGenIntStatus(uint32_t ui32Base, uint32_t ui32Gen, bool bMasked)
static uint32_t _PWMFaultIntNumberGet(uint32_t ui32Base)
void PWMGenDisable(uint32_t ui32Base, uint32_t ui32Gen)
#define INT_PWM0_FAULT_TM4C129
void PWMPulseWidthSet(uint32_t ui32Base, uint32_t ui32PWMOut, uint32_t ui32Width)
#define PWM_OUTPUT_MODE_SYNC_LOCAL
#define PWM_X_GENB_ACTCMPBU_ONE
#define INT_PWM1_1_TM4C123
void IntUnregister(uint32_t ui32Interrupt)
#define PWM_FAULT_GROUP_0
#define INT_PWM1_2_TM4C123
#define PWM_X_MINFLTPER_M
#define PWM_FAULT2_SENSE_HIGH
#define INT_PWM0_0_TM4C129
void PWMSyncTimeBase(uint32_t ui32Base, uint32_t ui32GenBits)
#define PWM_X_CTL_GENAUPD_M
void PWMOutputFaultLevel(uint32_t ui32Base, uint32_t ui32PWMOutBits, bool bDriveHigh)
#define INT_PWM0_0_TM4C123
#define PWM_X_CTL_CMPBUPD
#define PWM_X_GENA_ACTLOAD_ONE
void PWMGenIntTrigDisable(uint32_t ui32Base, uint32_t ui32Gen, uint32_t ui32IntTrig)
void PWMGenEnable(uint32_t ui32Base, uint32_t ui32Gen)
#define PWM_FAULT1_SENSE_HIGH
#define INT_PWM0_3_TM4C129
#define PWM_FAULT3_SENSE_HIGH
void PWMGenConfigure(uint32_t ui32Base, uint32_t ui32Gen, uint32_t ui32Config)
#define PWM_FAULT0_SENSE_LOW
#define PWM_X_GENB_ACTCMPBD_ZERO
uint32_t PWMGenPeriodGet(uint32_t ui32Base, uint32_t ui32Gen)
void PWMGenIntClear(uint32_t ui32Base, uint32_t ui32Gen, uint32_t ui32Ints)
void PWMFaultIntClear(uint32_t ui32Base)
void IntDisable(uint32_t ui32Interrupt)
void IntRegister(uint32_t ui32Interrupt, void(*pfnHandler)(void))
void IntEnable(uint32_t ui32Interrupt)
void PWMOutputUpdateMode(uint32_t ui32Base, uint32_t ui32PWMOutBits, uint32_t ui32Mode)