iLLD_TC29x
1.0
iLLD_TC29x
IFX Low Level Drivers
Modules
Data Structures
Files
File List
Assert.c
Assert.h
Bsp.c
Bsp.h
CompilerDcc.c
CompilerDcc.h
CompilerGnuc.c
CompilerGnuc.h
Compilers.h
CompilerTasking.c
CompilerTasking.h
Icu.h
Ifx_Assert.h
Ifx_CircularBuffer.asm.c
Ifx_CircularBuffer.c
Ifx_CircularBuffer.h
Ifx_Console.c
Ifx_Console.h
Ifx_DateTime.c
Ifx_DateTime.h
Ifx_Fifo.c
Ifx_Fifo.h
Ifx_GlobalResources.c
Ifx_GlobalResources.h
Ifx_InternalMux.c
Ifx_InternalMux.h
Ifx_LowPassPt1.c
Ifx_LowPassPt1.h
Ifx_Shell.c
Ifx_Shell.h
Ifx_Types.h
Ifx_TypesDcc.h
Ifx_TypesGnuc.h
Ifx_TypesTasking.h
IfxAsclin.c
IfxAsclin.h
IfxAsclin_Asc.c
IfxAsclin_Asc.h
IfxAsclin_cfg.h
IfxAsclin_Lin.c
IfxAsclin_Lin.h
IfxAsclin_PinMap.c
IfxAsclin_PinMap.h
IfxAsclin_Spi.c
IfxAsclin_Spi.h
IfxCcu6.c
IfxCcu6.h
IfxCcu6_cfg.c
IfxCcu6_cfg.h
IfxCcu6_Icu.c
IfxCcu6_Icu.h
IfxCcu6_PinMap.c
IfxCcu6_PinMap.h
IfxCcu6_PwmBc.c
IfxCcu6_PwmBc.h
IfxCcu6_PwmHl.c
IfxCcu6_PwmHl.h
IfxCcu6_Timer.c
IfxCcu6_Timer.h
IfxCcu6_TimerWithTrigger.c
IfxCcu6_TimerWithTrigger.h
IfxCcu6_TPwm.c
IfxCcu6_TPwm.h
IfxCif.c
IfxCif.h
IfxCif_Cam.c
IfxCif_Cam.h
IfxCif_cfg.c
IfxCif_cfg.h
IfxCif_PinMap.c
IfxCif_PinMap.h
IfxCpu.c
IfxCpu.h
IfxCpu_cfg.c
IfxCpu_cfg.h
IfxCpu_CStart.h
IfxCpu_CStart0.c
IfxCpu_CStart1.c
IfxCpu_CStart2.c
IfxCpu_Intrinsics.h
IfxCpu_IntrinsicsDcc.h
IfxCpu_IntrinsicsGnuc.h
IfxCpu_IntrinsicsTasking.h
IfxCpu_Irq.c
IfxCpu_Irq.h
IfxCpu_Trap.c
IfxCpu_Trap.h
IfxDma.c
IfxDma.h
IfxDma_cfg.c
IfxDma_cfg.h
IfxDma_Dma.c
IfxDma_Dma.h
IfxDsadc.c
IfxDsadc.h
IfxDsadc_cfg.h
IfxDsadc_Dsadc.c
IfxDsadc_Dsadc.h
IfxDsadc_PinMap.c
IfxDsadc_PinMap.h
IfxDts.c
IfxDts.h
IfxDts_cfg.h
IfxDts_Dts.c
IfxDts_Dts.h
IfxEbu.c
IfxEbu.h
IfxEbu_BFlashSpansion.c
IfxEbu_BFlashSpansion.h
IfxEbu_BFlashSt.c
IfxEbu_BFlashSt.h
IfxEbu_cfg.h
IfxEbu_Dram.c
IfxEbu_Dram.h
IfxEbu_Sram.c
IfxEbu_Sram.h
IfxEmem.c
IfxEmem.h
IfxEmem_cfg.h
IfxEray.c
IfxEray.h
IfxEray_cfg.h
IfxEray_Eray.c
IfxEray_Eray.h
IfxEray_PinMap.c
IfxEray_PinMap.h
IfxEth.c
IfxEth.h
IfxEth_cfg.h
IfxEth_Phy_Pef7071.c
IfxEth_Phy_Pef7071.h
IfxEth_PinMap.c
IfxEth_PinMap.h
IfxFce.c
IfxFce.h
IfxFce_cfg.h
IfxFce_Crc.c
IfxFce_Crc.h
IfxFft.c
IfxFft.h
IfxFft_cfg.h
IfxFft_Fft.c
IfxFft_Fft.h
IfxFlash.c
IfxFlash.h
IfxFlash_cfg.c
IfxFlash_cfg.h
IfxGlobal_cfg.h
IfxGpt12.c
IfxGpt12.h
IfxGpt12_cfg.h
IfxGpt12_IncrEnc.c
IfxGpt12_IncrEnc.h
IfxGpt12_PinMap.c
IfxGpt12_PinMap.h
IfxGtm.c
IfxGtm.h
IfxGtm_Atom.c
IfxGtm_Atom.h
IfxGtm_Atom_Pwm.c
IfxGtm_Atom_Pwm.h
IfxGtm_Atom_PwmHl.c
IfxGtm_Atom_PwmHl.h
IfxGtm_Atom_Timer.c
IfxGtm_Atom_Timer.h
IfxGtm_cfg.h
IfxGtm_Cmu.c
IfxGtm_Cmu.h
IfxGtm_Dpll.c
IfxGtm_Dpll.h
IfxGtm_PinMap.c
IfxGtm_PinMap.h
IfxGtm_Tbu.c
IfxGtm_Tbu.h
IfxGtm_Tim.c
IfxGtm_Tim.h
IfxGtm_Tom.c
IfxGtm_Tom.h
IfxGtm_Tom_Pwm.c
IfxGtm_Tom_Pwm.h
IfxGtm_Tom_PwmHl.c
IfxGtm_Tom_PwmHl.h
IfxGtm_Tom_Timer.c
IfxGtm_Tom_Timer.h
IfxGtm_Trig.c
IfxGtm_Trig.h
IfxHssl.c
IfxHssl.h
IfxHssl_cfg.h
IfxHssl_Hssl.c
IfxHssl_Hssl.h
IfxI2c.c
IfxI2c.h
IfxI2c_cfg.h
IfxI2c_I2c.c
IfxI2c_I2c.h
IfxI2c_PinMap.c
IfxI2c_PinMap.h
IfxIom.c
IfxIom.h
IfxIom_cfg.h
IfxIom_Iom.c
IfxIom_Iom.h
IfxLldVersion.h
IfxMsc.c
IfxMsc.h
IfxMsc_cfg.c
IfxMsc_cfg.h
IfxMsc_Msc.c
IfxMsc_Msc.h
IfxMsc_PinMap.c
IfxMsc_PinMap.h
IfxMtu.c
IfxMtu.h
IfxMtu_cfg.c
IfxMtu_cfg.h
IfxMultican.c
IfxMultican.h
IfxMultican_Can.c
IfxMultican_Can.h
IfxMultican_cfg.c
IfxMultican_cfg.h
IfxMultican_PinMap.c
IfxMultican_PinMap.h
IfxPort.c
IfxPort.h
IfxPort_cfg.c
IfxPort_cfg.h
IfxPort_Io.c
IfxPort_Io.h
IfxPort_PinMap.c
IfxPort_PinMap.h
IfxPsi5.c
IfxPsi5.h
IfxPsi5_cfg.c
IfxPsi5_cfg.h
IfxPsi5_PinMap.c
IfxPsi5_PinMap.h
IfxPsi5_Psi5.c
IfxPsi5_Psi5.h
IfxPsi5s.c
IfxPsi5s.h
IfxPsi5s_cfg.h
IfxPsi5s_PinMap.c
IfxPsi5s_PinMap.h
IfxPsi5s_Psi5s.c
IfxPsi5s_Psi5s.h
IfxQspi.c
IfxQspi.h
IfxQspi_cfg.h
IfxQspi_PinMap.c
IfxQspi_PinMap.h
IfxQspi_SpiMaster.c
IfxQspi_SpiMaster.h
IfxQspi_SpiSlave.c
IfxQspi_SpiSlave.h
IfxScu_cfg.c
IfxScu_cfg.h
IfxScu_PinMap.c
IfxScu_PinMap.h
IfxScuCcu.c
IfxScuCcu.h
IfxScuEru.c
IfxScuEru.h
IfxScuWdt.asm.h
IfxScuWdt.c
IfxScuWdt.h
IfxSent.c
IfxSent.h
IfxSent_cfg.c
IfxSent_cfg.h
IfxSent_PinMap.c
IfxSent_PinMap.h
IfxSent_Sent.c
IfxSent_Sent.h
IfxSmu_PinMap.c
IfxSmu_PinMap.h
IfxSrc.c
IfxSrc.h
IfxSrc_cfg.c
IfxSrc_cfg.h
IfxStdIf.h
IfxStdIf_DPipe.c
IfxStdIf_DPipe.h
IfxStdIf_Pos.c
IfxStdIf_Pos.h
IfxStdIf_PwmHl.c
IfxStdIf_PwmHl.h
IfxStdIf_Timer.c
IfxStdIf_Timer.h
IfxStm.c
IfxStm.h
IfxStm_cfg.c
IfxStm_cfg.h
IfxVadc.c
IfxVadc.h
IfxVadc_Adc.c
IfxVadc_Adc.h
IfxVadc_cfg.c
IfxVadc_cfg.h
IfxVadc_PinMap.c
IfxVadc_PinMap.h
lld_api.c
lld_codingRules.c
lld_codingRules_codeFormating.c
lld_codingRules_commonApis.c
lld_codingRules_if.c
lld_conventions.c
lld_conventionsDoxygen.c
lld_dosanddont.c
lld_dosanddont_enumUsage.c
lld_dosanddont_namingConvention.c
lld_dosanddont_optimisation.c
lld_filesAndConfig.c
lld_structure.c
lld_versioning.c
mainpage.c
Platform_Types.h
PwmHl.h
SpiIf.c
SpiIf.h
Timer.h
TPwm.h
Globals
Timer.h
Go to the documentation of this file.
1
/**
2
* \file Timer.h
3
* \brief Timer interface
4
*
5
* \version iLLD_1_0_0_11_0
6
* \copyright Copyright (c) 2013 Infineon Technologies AG. All rights reserved.
7
*
8
*
9
* IMPORTANT NOTICE
10
*
11
*
12
* Infineon Technologies AG (Infineon) is supplying this file for use
13
* exclusively with Infineon's microcontroller products. This file can be freely
14
* distributed within development tools that are supporting such microcontroller
15
* products.
16
*
17
* THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
18
* OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
19
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
20
* INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL,
21
* OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
22
*
23
* \defgroup library_srvsw_if_timer Timer interface
24
* \ingroup library_srvsw_if
25
*
26
*/
27
28
#ifndef TIMER_H_
29
#define TIMER_H_ 1
30
31
#include "
Cpu/Std/Ifx_Types.h
"
32
33
typedef
struct
Timer_s
Timer
;
34
typedef
void (*
Timer_Start
)(
Timer
*handle);
35
typedef
void (*
Timer_Stop
)(
Timer
*handle);
36
typedef
void (*
Timer_SynchronousStart
)(
Timer
*handle);
37
typedef
void (*
Timer_SynchronousStop
)(
Timer
*handle);
38
typedef
void (*
Timer_CountOneStep
)(
Timer
*handle);
39
typedef
void (*
Timer_StartSingleShotMode
)(
Timer
*handle);
40
41
typedef
struct
42
{
43
Timer_Start
start
;
44
Timer_Stop
stop
;
45
Timer_SynchronousStart
synchronousStart
;
46
Timer_SynchronousStop
synchronousStop
;
47
Timer_CountOneStep
countOneStep
;
48
Timer_StartSingleShotMode
startSingleShotMode
;
49
}
Timer_Functions
;
50
51
/** \brief Structure of the Timer interface */
52
struct
Timer_s
53
{
54
float32
t12Frequency
;
/**< \brief Actual timer12 frequency */
55
Ifx_TimerValue
t12Period
;
/**< \brief Actual timer 12 period */
56
float32
t13Frequency
;
/**< \brief Actual timer13 frequency */
57
Ifx_TimerValue
t13Period
;
/**< \brief Actual timer 13 period */
58
#if IFX_CFG_USE_STANDARD_INTERFACE
59
Timer_Functions
functions;
/**< \brief timer functions */
60
#endif
61
};
62
63
/** \brief Configuration structure of the Timer interface */
64
typedef
struct
65
{
66
float32
t12Frequency
;
/**< \brief Specify expected T12 PWM frequency in Hertz */
67
Ifx_TimerValue
t12Period
;
/**< \brief Specify expected T12 PWM period in ticks. */
68
float32
t13Frequency
;
/**< \brief Specify expected T13 PWM frequency in Hertz */
69
Ifx_TimerValue
t13Period
;
/**< \brief Specify expected T13 PWM period in ticks. */
70
Ifx_TimerValue
waitingTime
;
/**< \brief Specify the expected ticks before timer starts (TWAIT) */
71
Ifx_TimerValue
activeCount
;
/**< \brief Specify active PWM period (TCOUNT) */
72
}
Timer_Config
;
73
74
#if IFX_CFG_USE_STANDARD_INTERFACE
75
IFX_INLINE
void
Timer_start(
Timer
*handle) {handle->functions.start(handle); }
76
IFX_INLINE
void
Timer_stop(
Timer
*handle) {handle->functions.stop(handle); }
77
IFX_INLINE
void
Timer_synchronousStart(
Timer
*handle) {handle->functions.synchronousStart(handle); }
78
IFX_INLINE
void
Timer_synchronousStop(
Timer
*handle) {handle->functions.synchronousStop(handle); }
79
IFX_INLINE
void
Timer_countOneStep(
Timer
*handle) {handle->functions.countOneStep(handle); }
80
IFX_INLINE
void
Timer_startSingleShotMode(
Timer
*handle) {handle->functions.startSingleShotMode(handle); }
81
#endif
82
83
#endif
/* TIMER_H_ */
home
mclld
Libraries
release
iLLD_1_0_0_11_0
src
ifx
SrvSw
If
Ccu6If
Timer.h
Generated by
1.8.4