iLLD_TC29x  1.0
IfxCcu6.h File Reference

CCU6 basic functionality. More...

Go to the source code of this file.

Enumerations

enum  IfxCcu6_CaptureCompareInput {
  IfxCcu6_CaptureCompareInput_cC60 = IFX_CCU6_PISEL0_ISCC60_OFF,
  IfxCcu6_CaptureCompareInput_cC61 = IFX_CCU6_PISEL0_ISCC61_OFF,
  IfxCcu6_CaptureCompareInput_cC62 = IFX_CCU6_PISEL0_ISCC62_OFF,
  IfxCcu6_CaptureCompareInput_cTRAP = IFX_CCU6_PISEL0_ISTRP_OFF,
  IfxCcu6_CaptureCompareInput_cCPOS0 = IFX_CCU6_PISEL0_ISPOS0_OFF,
  IfxCcu6_CaptureCompareInput_cCPOS1 = IFX_CCU6_PISEL0_ISPOS1_OFF,
  IfxCcu6_CaptureCompareInput_cCPOS2 = IFX_CCU6_PISEL0_ISPOS2_OFF
}
 Input selection, ( CC6x capture input / CTRAP input / CCPOSx input )
Definition in Ifx_CCU.PISEL0. More...
 
enum  IfxCcu6_CaptureCompareInputSignal {
  IfxCcu6_CaptureCompareInputSignal_a = 0,
  IfxCcu6_CaptureCompareInputSignal_b = 1,
  IfxCcu6_CaptureCompareInputSignal_c = 2,
  IfxCcu6_CaptureCompareInputSignal_d = 3
}
 Selection of actual input signal for the capture compare inputs. More...
 
enum  IfxCcu6_CaptureCompareState {
  IfxCcu6_CaptureCompareState_set = 0,
  IfxCcu6_CaptureCompareState_clear = 1,
  IfxCcu6_CaptureCompareState_toggle = 2
}
 capture/compare state to set / clear the CC6xST-bits More...
 
enum  IfxCcu6_ChannelOut {
  IfxCcu6_ChannelOut_cc0 = 0,
  IfxCcu6_ChannelOut_cout0 = 1,
  IfxCcu6_ChannelOut_cc1 = 2,
  IfxCcu6_ChannelOut_cout1 = 3,
  IfxCcu6_ChannelOut_cc2 = 4,
  IfxCcu6_ChannelOut_cout2 = 5,
  IfxCcu6_ChannelOut_cout3 = 6
}
 Capture compare output pins. More...
 
enum  IfxCcu6_CountingInputMode {
  IfxCcu6_CountingInputMode_internal = 0,
  IfxCcu6_CountingInputMode_manual = 1,
  IfxCcu6_CountingInputMode_externalRising = 2,
  IfxCcu6_CountingInputMode_externalFalling = 3
}
 Defines the input event leading to a counting action of the timer (T12 / T13)
Definition in Ifx_CCU.PISEL2.B.ISCNT12 / Ifx_CCU.PISEL2.B.ISCNT13. More...
 
enum  IfxCcu6_DelayBypass {
  IfxCcu6_DelayBypass_notActive = 0,
  IfxCcu6_DelayBypass_active = 1
}
 Controls whether the source signal for the sampling of the Hall input pattern (selected by HSYNC) is delayed by the Dead-Time Counter 0
Definition in Ifx_CCU.T12MSEL.B.DBYP. More...
 
enum  IfxCcu6_ExternalTriggerMode {
  IfxCcu6_ExternalTriggerMode_disable = 0,
  IfxCcu6_ExternalTriggerMode_risingEdge = 1,
  IfxCcu6_ExternalTriggerMode_fallingEdge = 2,
  IfxCcu6_ExternalTriggerMode_anyEdge = 3
}
 Defines the event of signal T1xHR that can set the run bit T1xR by HW
Definition in Ifx_CCU.TCTR2.B.T12RSEL / IIfx_CCU.TCTR2.B.T13RSEL. More...
 
enum  IfxCcu6_HallSensorTriggerMode {
  IfxCcu6_HallSensorTriggerMode_permanentCheck = 0,
  IfxCcu6_HallSensorTriggerMode_cM63 = 1,
  IfxCcu6_HallSensorTriggerMode_t13PM = 2,
  IfxCcu6_HallSensorTriggerMode_off = 3,
  IfxCcu6_HallSensorTriggerMode_t12PMCountingUp = 4,
  IfxCcu6_HallSensorTriggerMode_t12OMCountingDown = 5,
  IfxCcu6_HallSensorTriggerMode_cM61CountingUp = 6,
  IfxCcu6_HallSensorTriggerMode_cM61CountingDown = 7
}
 Defines the source for the sampling of the Hall input pattern and the comparison to the current and the expected Hall pattern bit fields
Definition in Ifx_CCU.T12MSEL.HSYNC. More...
 
enum  IfxCcu6_InterruptSource {
  IfxCcu6_InterruptSource_cc60RisingEdge = IFX_CCU6_IS_ICC60R_OFF,
  IfxCcu6_InterruptSource_cc60FallingEdge = IFX_CCU6_IS_ICC60F_OFF,
  IfxCcu6_InterruptSource_cc61RisingEdge = IFX_CCU6_IS_ICC61R_OFF,
  IfxCcu6_InterruptSource_cc61FallingEdge = IFX_CCU6_IS_ICC61F_OFF,
  IfxCcu6_InterruptSource_cc62RisingEdge = IFX_CCU6_IS_ICC62R_OFF,
  IfxCcu6_InterruptSource_cc62FallingEdge = IFX_CCU6_IS_ICC62F_OFF,
  IfxCcu6_InterruptSource_t12OneMatch = IFX_CCU6_IS_T12OM_OFF,
  IfxCcu6_InterruptSource_t12PeriodMatch = IFX_CCU6_IS_T12PM_OFF,
  IfxCcu6_InterruptSource_t13CompareMatch = IFX_CCU6_IS_T13CM_OFF,
  IfxCcu6_InterruptSource_t13PeriodMatch = IFX_CCU6_IS_T13PM_OFF,
  IfxCcu6_InterruptSource_trap = IFX_CCU6_IS_TRPF_OFF,
  IfxCcu6_InterruptSource_correctHallEvent = IFX_CCU6_IS_CHE_OFF,
  IfxCcu6_InterruptSource_wrongHallEvent = IFX_CCU6_IS_WHE_OFF
}
 Interrupt source selection Description in Ifx_CCU.IEN. More...
 
enum  IfxCcu6_MultiChannelSwitchingSelect {
  IfxCcu6_MultiChannelSwitchingSelect_noEvent = 0,
  IfxCcu6_MultiChannelSwitchingSelect_correctHallEvent = 1,
  IfxCcu6_MultiChannelSwitchingSelect_t13PeriodMatch = 2,
  IfxCcu6_MultiChannelSwitchingSelect_t12OneMatch = 3,
  IfxCcu6_MultiChannelSwitchingSelect_t12Channel1CompareMatch = 4,
  IfxCcu6_MultiChannelSwitchingSelect_t12PeriodMatch = 5
}
 Selection of the trigger request source (next multi-channel event) for the shadow transfer MCM_ST from MCMPS to MCMP
Definition in Ifx_CCU.MCMCTR.B.SWSEL. More...
 
enum  IfxCcu6_MultiChannelSwitchingSync {
  IfxCcu6_MultiChannelSwitchingSync_direct = 0,
  IfxCcu6_MultiChannelSwitchingSync_t13ZeroMatch = 1,
  IfxCcu6_MultiChannelSwitchingSync_t12ZeroMatch = 2
}
 Selection of the synchronization mechanism for the shadow transfer event MCM_ST
Definition in Ifx_CCU.MCMCTR.B.SWSYN. More...
 
enum  IfxCcu6_ServiceRequest {
  IfxCcu6_ServiceRequest_0 = 0,
  IfxCcu6_ServiceRequest_1,
  IfxCcu6_ServiceRequest_2,
  IfxCcu6_ServiceRequest_3
}
 Selection of service request outputs. More...
 
enum  IfxCcu6_SleepMode {
  IfxCcu6_SleepMode_enable = 0,
  IfxCcu6_SleepMode_disable = 1
}
 Enable/disable the sensitivity of the module to sleep signal
Definition in Ifx_CCU6.CLC.B.EDIS. More...
 
enum  IfxCcu6_T12Channel {
  IfxCcu6_T12Channel_0 = 0,
  IfxCcu6_T12Channel_1,
  IfxCcu6_T12Channel_2
}
 Capture compare channel of Timer12. More...
 
enum  IfxCcu6_T12ChannelMode {
  IfxCcu6_T12ChannelMode_off = 0,
  IfxCcu6_T12ChannelMode_compareMode = 1,
  IfxCcu6_T12ChannelMode_doubleRegisterCaptureRisingAndFalling = 4,
  IfxCcu6_T12ChannelMode_doubleRegisterCaptureRising = 5,
  IfxCcu6_T12ChannelMode_doubleRegisterCaptureFalling = 6,
  IfxCcu6_T12ChannelMode_doubleRegisterCaptureAny = 7,
  IfxCcu6_T12ChannelMode_hallSensor = 8,
  IfxCcu6_T12ChannelMode_hysteresisLikecompare = 9,
  IfxCcu6_T12ChannelMode_multiInputCaptureRisingAndFalling = 10,
  IfxCcu6_T12ChannelMode_multiInputCaptureFallingAndRising = 11,
  IfxCcu6_T12ChannelMode_multiInputCaptureBothRising = 12,
  IfxCcu6_T12ChannelMode_multiInputCaptureBothFalling = 13,
  IfxCcu6_T12ChannelMode_multiInputCaptureAny = 14
}
 The operating mode for the T12 channels are defined by the bit fields Ifx_CCU.T12MSEL.MSEL6x. More...
 
enum  IfxCcu6_T12CountDirection {
  IfxCcu6_T12CountDirection_up = 0,
  IfxCcu6_T12CountDirection_down = 1
}
 Counting direction of Timer12
Definition in Ifx_CCU.TCTR0.B.CDIR. More...
 
enum  IfxCcu6_T12CountMode {
  IfxCcu6_T12CountMode_edgeAligned = 0,
  IfxCcu6_T12CountMode_centerAligned = 1
}
 Operating mode of Timer 12
Definition in Ifx_CCU.TCTR0.B.CTM. More...
 
enum  IfxCcu6_T13TriggerDirection {
  IfxCcu6_T13TriggerDirection_noAction = 0,
  IfxCcu6_T13TriggerDirection_onT12CountingUp = 1,
  IfxCcu6_T13TriggerDirection_onT12CountingDown = 2,
  IfxCcu6_T13TriggerDirection_anyT12 = 3
}
 Delivers additional information to control the automatic set of bit T13R in the case that the trigger action defined by T13 trigger event control (T13TEC) is detected.
Definition in Ifx_CCU.TCTR2.B.T13TED. More...
 
enum  IfxCcu6_T13TriggerEvent {
  IfxCcu6_T13TriggerEvent_noAction = 0,
  IfxCcu6_T13TriggerEvent_onCC60RCompare = 1,
  IfxCcu6_T13TriggerEvent_onCC61RCompare = 2,
  IfxCcu6_T13TriggerEvent_onCC62RCompare = 3,
  IfxCcu6_T13TriggerEvent_onAnyT12Compare = 4,
  IfxCcu6_T13TriggerEvent_onT12Period = 5,
  IfxCcu6_T13TriggerEvent_onT12Zero = 6,
  IfxCcu6_T13TriggerEvent_onCCPOSxEdge = 7
}
 Selects the trigger event to start T13 (automatic set of T13R for synchronization to T12 compare signals)
Definition in Ifx_CCU.TCTR2.B.T13TEC. More...
 
enum  IfxCcu6_TimerId {
  IfxCcu6_TimerId_t12 = 0,
  IfxCcu6_TimerId_t13 = 1
}
 Timer number ( T12 / T13 ) More...
 
enum  IfxCcu6_TimerInputClock {
  IfxCcu6_TimerInputClock_fcc6 = 0,
  IfxCcu6_TimerInputClock_fcc6By2 = 1,
  IfxCcu6_TimerInputClock_fcc6By4 = 2,
  IfxCcu6_TimerInputClock_fcc6By8 = 3,
  IfxCcu6_TimerInputClock_fcc6By16 = 4,
  IfxCcu6_TimerInputClock_fcc6By32 = 5,
  IfxCcu6_TimerInputClock_fcc6By64 = 6,
  IfxCcu6_TimerInputClock_fcc6By128 = 7
}
 Selects the input clock for timers (T12 or T13) that is derived from the peripheral clock according to the equation
Definition in Ifx_CCU.TCTR0.B.T12CLK / Ifx_CCU.TCTR0.B.T13CLK. More...
 
enum  IfxCcu6_TimerInputSignal {
  IfxCcu6_TimerInputSignal_a = 0,
  IfxCcu6_TimerInputSignal_b = 1,
  IfxCcu6_TimerInputSignal_c = 2,
  IfxCcu6_TimerInputSignal_d = 3,
  IfxCcu6_TimerInputSignal_e = 0,
  IfxCcu6_TimerInputSignal_f = 1,
  IfxCcu6_TimerInputSignal_g = 2,
  IfxCcu6_TimerInputSignal_h = 3
}
 Selection of actual input signal for the timer inputs. More...
 
enum  IfxCcu6_TimerRunStatus {
  IfxCcu6_TimerRunStatus_stopped = 0,
  IfxCcu6_TimerRunStatus_running = 1
}
 Timer (T12 / T13) run status
Definition in Ifx_CCU.TCTR0.B.T12R and Ifx_CCU.TCTR0.B.T13R. More...
 
enum  IfxCcu6_TrapMode {
  IfxCcu6_TrapMode_automatic = 0,
  IfxCcu6_TrapMode_manual = 1
}
 Defines how the trap flag TRPF can be cleared after the trap input condition is no longer valid (either by CTRAP = 1 or by TRPPEN = 0)
Definition in Ifx_CCU.TRPCTR.B.TRPM2. More...
 
enum  IfxCcu6_TrapState {
  IfxCcu6_TrapState_t12Sync = 0,
  IfxCcu6_TrapState_t13Sync = 1,
  IfxCcu6_TrapState_immediate = 3
}
 Defines the behavior of the selected outputs when leaving the trap state, after the trap condition has become inactive again
Definition in Ifx_CCU.TRPCTR.B.TRPMx (x = 0, 1) More...
 

Functions

IFX_INLINE void IfxCcu6_clearCounter (Ifx_CCU6 *ccu6, boolean t12, boolean t13)
 Clears the counters of the Timers (T12, T13 individually or together based on the selection) More...
 
IFX_INLINE void IfxCcu6_clearDeadTimeCounters (Ifx_CCU6 *ccu6)
 Clears all the three dead-time counter channels to zero. More...
 
IFX_INLINE void IfxCcu6_clearInterruptStatusFlag (Ifx_CCU6 *ccu6, IfxCcu6_InterruptSource source)
 Clears the selected interrupt flag. More...
 
IFX_INLINE void IfxCcu6_clearT12OneNotification (Ifx_CCU6 *ccu6)
 Clears the T12 One notification. More...
 
IFX_INLINE void IfxCcu6_clearT12PeriodNotification (Ifx_CCU6 *ccu6)
 Clears the T12 period notification. More...
 
IFX_INLINE void IfxCcu6_clearT13CompareNotification (Ifx_CCU6 *ccu6)
 Clears the T13 compare notification. More...
 
IFX_INLINE volatile uint32IfxCcu6_getT12TimerPointer (Ifx_CCU6 *ccu6)
 Returns the Timer pointer. More...
 
IFX_INLINE boolean IfxCcu6_isModuleEnabled (Ifx_CCU6 *ccu6)
 Returns the status of module enabled or disabled. More...
 
IFX_INLINE boolean IfxCcu6_isT12OneNotification (Ifx_CCU6 *ccu6)
 Returns the status of T12 one notification. More...
 
IFX_INLINE boolean IfxCcu6_isT12PeriodNotification (Ifx_CCU6 *ccu6)
 Returns the status of T12 period notification. More...
 
IFX_INLINE boolean IfxCcu6_isT13CompareNotification (Ifx_CCU6 *ccu6)
 Returns the status of T13 compare notification. More...
 
IFX_INLINE void IfxCcu6_setCountingInputMode (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer, IfxCcu6_CountingInputMode mode)
 Sets the input event leading to a counting action of Timers (T12 / T13). More...
 
IFX_INLINE void IfxCcu6_setCurrentHallPattern (Ifx_CCU6 *ccu6, uint8 pattern)
 Sets the current hall pattern for the multichannel mode (writes into shadow register) More...
 
IFX_INLINE void IfxCcu6_setDeadTimeValue (Ifx_CCU6 *ccu6, uint8 value)
 Sets the delay between switching from the passive state to the active state of the selected outputs (dead time) More...
 
IFX_INLINE void IfxCcu6_setExpectedHallPattern (Ifx_CCU6 *ccu6, uint8 pattern)
 Sets the expected hall pattern for the multichannel mode (writes into shadow register) More...
 
IFX_INLINE void IfxCcu6_setExternalRunMode (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer, IfxCcu6_ExternalTriggerMode mode)
 Sets the event of signal T1xHR that can set the run bit T1xR by HW. More...
 
IFX_INLINE void IfxCcu6_setHallSensorTriggerMode (Ifx_CCU6 *ccu6, IfxCcu6_HallSensorTriggerMode mode)
 Sets source for the sampling of the Hall input pattern and the comparison to the current and the expected Hall pattern bit fields. More...
 
IFX_INLINE void IfxCcu6_setInputClockFrequency (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer, IfxCcu6_TimerInputClock frequency)
 Sets the input clock for timers (T12 or T13) More...
 
IFX_INLINE void IfxCcu6_setInterruptStatusFlag (Ifx_CCU6 *ccu6, IfxCcu6_InterruptSource source)
 Sets the selected interrupt flag. More...
 
IFX_INLINE void IfxCcu6_setMultiChannelPwmPattern (Ifx_CCU6 *ccu6, uint8 pattern)
 Sets the output pattern for the multichannel mode (writes into shadow register) More...
 
IFX_INLINE void IfxCcu6_setMultiChannelSwitchingMode (Ifx_CCU6 *ccu6, IfxCcu6_MultiChannelSwitchingSelect mode)
 Sets the trigger request source (next multi-channel event) for the shadow transfer MCM_ST from MCMPS to MCMP. More...
 
IFX_INLINE void IfxCcu6_setMultiChannelSwitchingSync (Ifx_CCU6 *ccu6, IfxCcu6_MultiChannelSwitchingSync sync)
 Sets the synchronization mechanism of the shadow transfer event MCM_ST
if it has been requested before (flag R set by an event selected by SWSEL) and if MCMEN = 1. More...
 
IFX_INLINE void IfxCcu6_setOutputPassiveState (Ifx_CCU6 *ccu6, IfxCcu6_ChannelOut channelOut, boolean state)
 Sets the state of the corresponding compare channel, that is considered to be the passive state. More...
 
IFX_INLINE void IfxCcu6_setSingleShotModeEnable (Ifx_CCU6 *ccu6, boolean t12, boolean t13)
 Enables / Disables the single shot mode of Timers (T12, T13 individually or together based on the selection) More...
 
IFX_INLINE void IfxCcu6_setT12ChannelMode (Ifx_CCU6 *ccu6, IfxCcu6_T12Channel channel, IfxCcu6_T12ChannelMode mode)
 Sets the operating mode of the Timer12 capture/compare channels. More...
 
IFX_INLINE void IfxCcu6_setT12CountMode (Ifx_CCU6 *ccu6, IfxCcu6_T12CountMode mode)
 
IFX_INLINE void IfxCcu6_setT12CounterValue (Ifx_CCU6 *ccu6, uint16 value)
 Sets the 16-bit counter value of Timer12. More...
 
IFX_INLINE void IfxCcu6_setT12PeriodValue (Ifx_CCU6 *ccu6, uint16 value)
 Sets the period value that leads Timer12 counter value to a period-match. More...
 
IFX_INLINE void IfxCcu6_setT13CompareValue (Ifx_CCU6 *ccu6, uint16 value)
 Sets the 16-bit compare value of Timer13 (writes into shadow register) More...
 
IFX_INLINE void IfxCcu6_setT13CounterValue (Ifx_CCU6 *ccu6, uint16 value)
 Sets the 16-bit counter value of Timer13. More...
 
IFX_INLINE void IfxCcu6_setT13PeriodValue (Ifx_CCU6 *ccu6, uint16 value)
 Sets the period value that leads Timer13 counter value to a period-match. More...
 
IFX_INLINE void IfxCcu6_setT13TriggerEventDirection (Ifx_CCU6 *ccu6, IfxCcu6_T13TriggerDirection direction)
 Sets the Timer13 trigger event direction. More...
 
IFX_INLINE void IfxCcu6_setT13TriggerEventMode (Ifx_CCU6 *ccu6, IfxCcu6_T13TriggerEvent mode)
 Sets the trigger event to start Timer13 (automatic set of T13R for synchronization to Timer12 compare signals) More...
 
IFX_INLINE void IfxCcu6_setTrapMode (Ifx_CCU6 *ccu6, IfxCcu6_TrapMode mode)
 Sets the mode of clearing the trap flag TRPF after the trap input condition is no longer valid. More...
 
IFX_INLINE void IfxCcu6_setTrapState (Ifx_CCU6 *ccu6, IfxCcu6_TrapState state)
 Sets behaviour of the selected outputs when leaving the trap state after the trap condition has become inactive again. More...
 
IFX_INLINE void IfxCcu6_startTimer (Ifx_CCU6 *ccu6, boolean t12, boolean t13)
 starts the timers (T12, T13 individually or together based on the selection) More...
 
IFX_INLINE void IfxCcu6_stopTimer (Ifx_CCU6 *ccu6, boolean t12, boolean t13)
 starts the timers (T12, T13 individually or together based on the selection) More...
 
IFX_INLINE void IfxCcu6_updateHallPattern (Ifx_CCU6 *ccu6, uint8 currentHall, uint8 expectedHall, uint8 output)
 Updates the hall pattern (current hall, expected hall, moduleation output), in a single write. More...
 
IFX_EXTERN void IfxCcu6_connectTrigger (Ifx_CCU6 *ccu6, IfxCcu6_TrigOut outputLine, IfxCcu6_TrigSel selectedTrigger)
 
IFX_EXTERN void IfxCcu6_routeInterruptNode (Ifx_CCU6 *ccu6, IfxCcu6_InterruptSource source, IfxCcu6_ServiceRequest serviceRequest)
 Routes the interrupt node pointer to the selected service requests. More...
 
IFX_EXTERN void IfxCcu6_setOutputPassiveLevel (Ifx_CCU6 *ccu6, IfxCcu6_ChannelOut channelOut, boolean state)
 Sets the passive state level of the PWM outputs of the module. More...
 
IFX_EXTERN void IfxCcu6_setT12CaptureCompareState (Ifx_CCU6 *ccu6, IfxCcu6_T12Channel channel, IfxCcu6_CaptureCompareState state)
 Sets software-control (independent set and clear conditions) for the Timer12 channel state bits CC6xST (x=0,1,2) More...
 
IFX_EXTERN void IfxCcu6_setT12CompareValue (Ifx_CCU6 *ccu6, IfxCcu6_T12Channel channel, uint16 value)
 Sets the 16-bit compare value of Timer12 (writes into shadow registers) More...
 
IFX_EXTERN float32 IfxCcu6_setT12Frequency (Ifx_CCU6 *ccu6, float32 frequency, Ifx_TimerValue resolution, IfxCcu6_T12CountMode countMode)
 Sets the frequency and clock input of the Timer 12. More...
 
IFX_EXTERN void IfxCcu6_setT12InputSignal (Ifx_CCU6 *ccu6, IfxCcu6_T12hr_In *extInput)
 selects the actual input signal for the timer inputs. More...
 
IFX_EXTERN void IfxCcu6_setT13CaptureCompareState (Ifx_CCU6 *ccu6, IfxCcu6_CaptureCompareState state)
 Sets software-control (independent set and clear conditions) for the Timer13 channel state bits CC63ST. More...
 
IFX_EXTERN float32 IfxCcu6_setT13Frequency (Ifx_CCU6 *ccu6, float32 frequency, Ifx_TimerValue resolution)
 Sets the frequency and clock input of the Timer 13. More...
 
IFX_EXTERN void IfxCcu6_setT13InputSignal (Ifx_CCU6 *ccu6, IfxCcu6_T13hr_In *extInput)
 selects the actual input signal for the timer inputs. More...
 
IFX_INLINE boolean IfxCcu6_getDeadTimeStatus (Ifx_CCU6 *ccu6, IfxCcu6_T12Channel channel)
 Indicate the status of the dead time generation for each compare channel (0, 1, 2) of timer T12. More...
 
IFX_INLINE boolean IfxCcu6_getHallPatternSampleState (Ifx_CCU6 *ccu6, IfxCcu6_T12Channel channel)
 Returns the value of the input Hall pattern of the Timer12 capture/compare channels CC6POS6x (x = 0, 1, 2)
that has been compared to the current and expected value. More...
 
IFX_INLINE boolean IfxCcu6_getInterruptStatusFlag (Ifx_CCU6 *ccu6, IfxCcu6_InterruptSource source)
 Gets the status of the selected interrupt flag. More...
 
IFX_INLINE boolean IfxCcu6_getMultiChannelModeAvailabilityStatus (Ifx_CCU6 *ccu6)
 indicates if the multi-channel mode functionality is available More...
 
IFX_INLINE boolean IfxCcu6_getMultiChannelPWMPatternShadowTransferStatus (Ifx_CCU6 *ccu6)
 Gets the status of the shadow transfer request from MCMPS to MCMP. More...
 
IFX_INLINE boolean IfxCcu6_getShadowTransferStatus (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer)
 Returns the Timer (T12 / T13) shadow transfer enable status. More...
 
IFX_INLINE boolean IfxCcu6_getT12CaptureCompareState (Ifx_CCU6 *ccu6, IfxCcu6_T12Channel channel)
 Returns the state of the Timer12 capture/compare channels CC6xST (x = 0, 1, 2) More...
 
IFX_INLINE
IfxCcu6_T12CountDirection 
IfxCcu6_getT12CountDirection (Ifx_CCU6 *ccu6)
 Returns the current counting direction of Timer12. More...
 
IFX_INLINE boolean IfxCcu6_getT13CaptureCompareState (Ifx_CCU6 *ccu6)
 Returns the state of the Timer13 capture/compare channel CC63ST. More...
 
IFX_INLINE boolean IfxCcu6_getTimerAvailabilityStatus (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer)
 indicates the Timer blocks (T12 / T13) availability More...
 
IFX_INLINE IfxCcu6_TimerRunStatus IfxCcu6_getTimerRunStatus (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer)
 Returns the Timer (T12 / T13) run status. More...
 
IFX_EXTERN uint32 IfxCcu6_getCaptureRegisterValue (Ifx_CCU6 *ccu6, IfxCcu6_T12Channel channel)
 Returns the capture register value of the selected channel. More...
 
IFX_EXTERN uint32 IfxCcu6_getCaptureShadowRegisterValue (Ifx_CCU6 *ccu6, IfxCcu6_T12Channel channel)
 Returns the capture shadow register value of the selected channel. More...
 
IFX_EXTERN sint32 IfxCcu6_getIndex (Ifx_CCU6 *ccu6)
 Returns CCU6 index. More...
 
IFX_EXTERN volatile Ifx_SRC_SRCR * IfxCcu6_getSrcAddress (Ifx_CCU6 *ccu6, IfxCcu6_ServiceRequest serviceRequest)
 Returns the service request register. More...
 
IFX_EXTERN uint32 IfxCcu6_readTimer (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer)
 Returns the current value of the timer register. More...
 
IFX_INLINE void IfxCcu6_disableAdditionalPrescaler (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer)
 Disables the additional prescaler of 1/256 can be enabled for the prescaler of T12 or T13 to support higher clock frequencies. More...
 
IFX_INLINE void IfxCcu6_disableDeadTime (Ifx_CCU6 *ccu6, IfxCcu6_T12Channel channel)
 Disables the dead time generation for each compare channel (0, 1, 2) of Timer12. More...
 
IFX_INLINE void IfxCcu6_disableDelayBypass (Ifx_CCU6 *ccu6)
 Disables the delay of the source signal for the sampling of the Hall input pattern (selected by HSYNC) More...
 
IFX_INLINE void IfxCcu6_disableInterrupt (Ifx_CCU6 *ccu6, IfxCcu6_InterruptSource source)
 Disables the selected interrupt. More...
 
IFX_INLINE void IfxCcu6_disableMultiChannelMode (Ifx_CCU6 *ccu6)
 Sets multi channel mode unavailable, A write access to MCMOUTS is ignored. More...
 
IFX_INLINE void IfxCcu6_disableShadowTransfer (Ifx_CCU6 *ccu6, boolean t12, boolean t13)
 Disables shadow transfers of the timers (T12, T13 individually or together based on the selection) More...
 
IFX_INLINE void IfxCcu6_disableSingleShotMode (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer)
 Disables the single shot-mode of Timers (T12 T13). More...
 
IFX_INLINE void IfxCcu6_disableT13InvertedModulation (Ifx_CCU6 *ccu6)
 Disables the Inversion of T13 signal for the modulation of the CC6x and COUT6x (x = 0, 1, 2) signals
T13 output CC63_O is equal to CC63ST. More...
 
IFX_INLINE void IfxCcu6_disableTimer (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer)
 Sets Timer12 block unavailable, A write access to T12PR is ignored. More...
 
IFX_INLINE void IfxCcu6_disableTrap (Ifx_CCU6 *ccu6, IfxCcu6_ChannelOut channelOut)
 Disables the trap functionality for the corresponding output signals. More...
 
IFX_INLINE void IfxCcu6_disableTrapPin (Ifx_CCU6 *ccu6)
 Disables the input (pin) function for the trap generation. More...
 
IFX_INLINE void IfxCcu6_enableAdditionalPrescaler (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer)
 Enables the additional prescaler of 1/256 can be enabled for the prescaler of T12 or T13 to support higher clock frequencies. More...
 
IFX_INLINE void IfxCcu6_enableCountEvent (Ifx_CCU6 *ccu6, boolean t12, boolean t13)
 Sets the single shot-mode of Timers (T12, T13). More...
 
IFX_INLINE void IfxCcu6_enableDeadTime (Ifx_CCU6 *ccu6, IfxCcu6_T12Channel channel)
 Enables the dead time generation for each compare channel (0, 1, 2) of Timer12. More...
 
IFX_INLINE void IfxCcu6_enableDelayBypass (Ifx_CCU6 *ccu6)
 Enables the delay of the source signal for the sampling of the Hall input pattern (selected by HSYNC) by the Dead-Time Counter 0. More...
 
IFX_INLINE void IfxCcu6_enableHallPatternShadowTransfer (Ifx_CCU6 *ccu6)
 Sets HP_ST immediately to update bit fields EXPH and CURH by EXPHS and CURHS. More...
 
IFX_INLINE void IfxCcu6_enableInterrupt (Ifx_CCU6 *ccu6, IfxCcu6_InterruptSource source)
 Enables the selected interrupt. More...
 
IFX_INLINE void IfxCcu6_enableMultiChannelMode (Ifx_CCU6 *ccu6)
 Sets multi channel mode available, A write access to MCMOUTS is executed. More...
 
IFX_INLINE void IfxCcu6_enableMultiChannelPwmPatternShadowTransfer (Ifx_CCU6 *ccu6)
 Sets MCM_ST immediately to update bit field MCMP by the value of MCMPS. More...
 
IFX_INLINE void IfxCcu6_enableMultiChannelT12DowncountingShadowTransfer (Ifx_CCU6 *ccu6)
 Enables the shadow transfer T12_ST if flag MCMOUT.R is set or
becomes set while a T12 one match is detected while counting down. More...
 
IFX_INLINE void IfxCcu6_enableMultiChannelT12UpcountingShadowTransfer (Ifx_CCU6 *ccu6)
 Enables the shadow transfer T12_ST if flag MCMOUT.R is set or
becomes set while a T12 period match is detected while counting up. More...
 
IFX_INLINE void IfxCcu6_enableMultiChannelT13UpcountingShadowTransfer (Ifx_CCU6 *ccu6)
 Enables the shadow transfer T13_ST if flag MCMOUT.R is set or
becomes set while a T13 period match is detected. More...
 
IFX_INLINE void IfxCcu6_enableShadowTransfer (Ifx_CCU6 *ccu6, boolean t12, boolean t13)
 Enables shadow transfers of the timers (T12, T13 individually or together based on the selection) More...
 
IFX_INLINE void IfxCcu6_enableSingleShotMode (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer)
 Enables the single shot-mode of Timers (T12 T13). More...
 
IFX_INLINE void IfxCcu6_enableT13InvertedModulation (Ifx_CCU6 *ccu6)
 Enables the Inversion of T13 signal for the modulation of the CC6x and COUT6x (x = 0, 1, 2) signals
T13 output CC63_O is equal to CC63ST. More...
 
IFX_INLINE void IfxCcu6_enableTimer (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer)
 Sets Timer12 block available, A write access to T12PR is executed. More...
 
IFX_INLINE void IfxCcu6_enableTrap (Ifx_CCU6 *ccu6, IfxCcu6_ChannelOut channelOut)
 Enables the trap functionality for the corresponding output signals. More...
 
IFX_INLINE void IfxCcu6_enableTrapPin (Ifx_CCU6 *ccu6)
 Enables the input (pin) function for the trap generation. More...
 
IFX_INLINE void IfxCcu6_setCaptureCompareInputSignal (Ifx_CCU6 *ccu6, IfxCcu6_CaptureCompareInput input, IfxCcu6_CaptureCompareInputSignal signal)
 selects the actual input signal for the capture compare inputs. More...
 
IFX_EXTERN void IfxCcu6_disableModulationOutput (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer, IfxCcu6_ChannelOut channelOut)
 Disables the modulation of the corresponding output signal by PWM pattern generated by the timers T12 and T13. More...
 
IFX_EXTERN void IfxCcu6_enableModulationOutput (Ifx_CCU6 *ccu6, IfxCcu6_TimerId timer, IfxCcu6_ChannelOut channelOut)
 Enables the modulation of the corresponding output signal by PWM pattern generated by the timers T12 and T13. More...
 
IFX_EXTERN void IfxCcu6_enableModule (Ifx_CCU6 *ccu6)
 Enables the selected CCU6 kernel. More...
 
IFX_INLINE void IfxCcu6_initCc60InPin (const IfxCcu6_Cc60in_In *cc60In, IfxPort_InputMode inputMode)
 Initialises a CC60 input pin. More...
 
IFX_INLINE void IfxCcu6_initCc60OutPin (const IfxCcu6_Cc60_Out *cc60Out, IfxPort_OutputMode outputMode, IfxPort_PadDriver padDriver)
 Initialises a CC60 output pin. More...
 
IFX_INLINE void IfxCcu6_initCc61InPin (const IfxCcu6_Cc61in_In *cc61In, IfxPort_InputMode inputMode)
 Initialises a CC61 input pin. More...
 
IFX_INLINE void IfxCcu6_initCc61OutPin (const IfxCcu6_Cc61_Out *cc61Out, IfxPort_OutputMode outputMode, IfxPort_PadDriver padDriver)
 Initialises a CC61 output pin. More...
 
IFX_INLINE void IfxCcu6_initCc62InPin (const IfxCcu6_Cc62in_In *cc62In, IfxPort_InputMode inputMode)
 Initialises a CC62 input pin. More...
 
IFX_INLINE void IfxCcu6_initCc62OutPin (const IfxCcu6_Cc62_Out *cc62Out, IfxPort_OutputMode outputMode, IfxPort_PadDriver padDriver)
 Initialises a CC62 output pin. More...
 
IFX_INLINE void IfxCcu6_initCcpos0Pin (const IfxCcu6_Ccpos0_In *ccpos0, IfxPort_InputMode inputMode)
 Initialises a CCPOS0 input pin. More...
 
IFX_INLINE void IfxCcu6_initCcpos1Pin (const IfxCcu6_Ccpos1_In *ccpos1, IfxPort_InputMode inputMode)
 Initialises a CCPOS1 input pin. More...
 
IFX_INLINE void IfxCcu6_initCcpos2Pin (const IfxCcu6_Ccpos2_In *ccpos2, IfxPort_InputMode inputMode)
 Initialises a CCPOS0 input pin. More...
 
IFX_INLINE void IfxCcu6_initCout60Pin (const IfxCcu6_Cout60_Out *cout60, IfxPort_OutputMode outputMode, IfxPort_PadDriver padDriver)
 Initialises a COUT60 output pin. More...
 
IFX_INLINE void IfxCcu6_initCout61Pin (const IfxCcu6_Cout61_Out *cout61, IfxPort_OutputMode outputMode, IfxPort_PadDriver padDriver)
 Initialises a COUT61 output pin. More...
 
IFX_INLINE void IfxCcu6_initCout62Pin (const IfxCcu6_Cout62_Out *cout62, IfxPort_OutputMode outputMode, IfxPort_PadDriver padDriver)
 Initialises a COUT62 output pin. More...
 
IFX_INLINE void IfxCcu6_initCout63Pin (const IfxCcu6_Cout63_Out *cout63, IfxPort_OutputMode outputMode, IfxPort_PadDriver padDriver)
 Initialises a COUT63 output pin. More...
 
IFX_INLINE void IfxCcu6_initCtrapPin (const IfxCcu6_Ctrap_In *ctrap, IfxPort_InputMode inputMode)
 Initialises a CTRAP input pin. More...
 
IFX_INLINE void IfxCcu6_initT12hrPin (const IfxCcu6_T12hr_In *t12hrIn, IfxPort_InputMode inputMode)
 Initialises a T12HR input pin. More...
 
IFX_INLINE void IfxCcu6_initT13hrPin (const IfxCcu6_T13hr_In *t13hrIn, IfxPort_InputMode inputMode)
 Initialises a T13HR input pin. More...
 
IFX_INLINE void IfxCcu6_setSleepMode (Ifx_CCU6 *ccu6, IfxCcu6_SleepMode mode)
 Sets the sensitivity of the module to sleep signal. More...
 
IFX_EXTERN void IfxCcu6_resetModule (Ifx_CCU6 *ccu6)
 

Detailed Description

CCU6 basic functionality.

Version
iLLD_1_0_0_11_0
                            IMPORTANT NOTICE

Infineon Technologies AG (Infineon) is supplying this file for use exclusively with Infineon's microcontroller products. This file can be freely distributed within development tools that are supporting such microcontroller products.

THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.

Definition in file IfxCcu6.h.

Function Documentation

IFX_EXTERN void IfxCcu6_resetModule ( Ifx_CCU6 *  ccu6)
Parameters
ccu6pointer to ccu6 registers
Returns
None

Definition at line 225 of file IfxCcu6.c.

IFX_INLINE void IfxCcu6_setSleepMode ( Ifx_CCU6 *  ccu6,
IfxCcu6_SleepMode  mode 
)

Sets the sensitivity of the module to sleep signal.

Parameters
ccu6pointer to CCU6 registers
modemode selection (enable/disable)
Returns
None

Definition at line 1811 of file IfxCcu6.h.