FMF-ART / mbed-dev-lib

Fork of mbed-dev by mbed official

Committer:
bogdanm
Date:
Thu Oct 01 15:25:22 2015 +0300
Revision:
0:9b334a45a8ff
Child:
144:ef7eb2e8f9f7
Initial commit on mbed-dev

Replaces mbed-src (now inactive)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bogdanm 0:9b334a45a8ff 1 /**
bogdanm 0:9b334a45a8ff 2 ******************************************************************************
bogdanm 0:9b334a45a8ff 3 * @file W7500x_stdPeriph_Driver/inc/W7500x_dualtimer.h
bogdanm 0:9b334a45a8ff 4 * @author IOP Team
bogdanm 0:9b334a45a8ff 5 * @version V1.0.0
bogdanm 0:9b334a45a8ff 6 * @date 01-May-2015
bogdanm 0:9b334a45a8ff 7 * @brief This file contains all the functions prototypes for the dualtimer
bogdanm 0:9b334a45a8ff 8 * firmware library.
bogdanm 0:9b334a45a8ff 9 ******************************************************************************
bogdanm 0:9b334a45a8ff 10 *
bogdanm 0:9b334a45a8ff 11 ******************************************************************************
bogdanm 0:9b334a45a8ff 12 */
bogdanm 0:9b334a45a8ff 13
bogdanm 0:9b334a45a8ff 14 /* Define to prevent recursive inclusion -------------------------------------*/
bogdanm 0:9b334a45a8ff 15 #ifndef __W7500X_DUALTIMER_H
bogdanm 0:9b334a45a8ff 16 #define __W7500X_DUALTIMER_H
bogdanm 0:9b334a45a8ff 17
bogdanm 0:9b334a45a8ff 18 #ifdef __cplusplus
bogdanm 0:9b334a45a8ff 19 extern "C" {
bogdanm 0:9b334a45a8ff 20 #endif
bogdanm 0:9b334a45a8ff 21
bogdanm 0:9b334a45a8ff 22 /* Includes ------------------------------------------------------------------*/
bogdanm 0:9b334a45a8ff 23 #include "W7500x.h"
bogdanm 0:9b334a45a8ff 24
bogdanm 0:9b334a45a8ff 25 /**********************************************************************************************/
bogdanm 0:9b334a45a8ff 26 /**********************************************************************************************/
bogdanm 0:9b334a45a8ff 27 // This structure and define must be in W7500x.h
bogdanm 0:9b334a45a8ff 28 /**********************************************************************************************/
bogdanm 0:9b334a45a8ff 29 /**********************************************************************************************/
bogdanm 0:9b334a45a8ff 30
bogdanm 0:9b334a45a8ff 31 typedef struct
bogdanm 0:9b334a45a8ff 32 {
bogdanm 0:9b334a45a8ff 33 uint32_t TimerLoad;
bogdanm 0:9b334a45a8ff 34 uint32_t TimerControl_Mode;
bogdanm 0:9b334a45a8ff 35 uint32_t TimerControl_Pre;
bogdanm 0:9b334a45a8ff 36 uint32_t TimerControl_Size;
bogdanm 0:9b334a45a8ff 37 uint32_t TimerControl_OneShot;
bogdanm 0:9b334a45a8ff 38 }DUALTIMER_InitTypDef;
bogdanm 0:9b334a45a8ff 39
bogdanm 0:9b334a45a8ff 40
bogdanm 0:9b334a45a8ff 41 #define IS_DUALTIMER_TimerMode(MODE) (MODE <= 1)
bogdanm 0:9b334a45a8ff 42 #define IS_DUALTIMER_TimerPre(PREE) (PRE <= 2)
bogdanm 0:9b334a45a8ff 43 #define IS_DUALTIMER_TimerSize(SIZE) (SIZE <= 1)
bogdanm 0:9b334a45a8ff 44 #define IS_DUALTIMER_OneShot(ONESHOT) (ONESHOT <= 1)
bogdanm 0:9b334a45a8ff 45
bogdanm 0:9b334a45a8ff 46
bogdanm 0:9b334a45a8ff 47
bogdanm 0:9b334a45a8ff 48
bogdanm 0:9b334a45a8ff 49
bogdanm 0:9b334a45a8ff 50
bogdanm 0:9b334a45a8ff 51 #define DUALTIMER_Int_Clear 0x1ul
bogdanm 0:9b334a45a8ff 52
bogdanm 0:9b334a45a8ff 53 #define DUALTIMER_Clock_Enable 0x1ul
bogdanm 0:9b334a45a8ff 54 #define DUALTIMER_Clock_Disable ~DUALTIMER_Clock_Enable
bogdanm 0:9b334a45a8ff 55
bogdanm 0:9b334a45a8ff 56
bogdanm 0:9b334a45a8ff 57 #define IS_DUALTIMER_ALL_CH(CH) ((CH == DUALTIMER0_0) || \
bogdanm 0:9b334a45a8ff 58 (CH == DUALTIMER0_1) || \
bogdanm 0:9b334a45a8ff 59 (CH == DUALTIMER1_0) || \
bogdanm 0:9b334a45a8ff 60 (CH == DUALTIMER1_1))
bogdanm 0:9b334a45a8ff 61
bogdanm 0:9b334a45a8ff 62
bogdanm 0:9b334a45a8ff 63
bogdanm 0:9b334a45a8ff 64 void DUALTIMER_ClockEnable(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 65 void DUALTIMER_ClockDisable(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 66 void DUALTIMER_DeInit(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 67 void DUALTIMER_Init(DUALTIMER_TypeDef* DUALTIMERn, DUALTIMER_InitTypDef* DUALTIMER_InitStruct);
bogdanm 0:9b334a45a8ff 68 void DUALTIMER_IntConfig(DUALTIMER_TypeDef* DUALTIMERn, FunctionalState state);
bogdanm 0:9b334a45a8ff 69 void DUALTIMER_IntClear(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 70 ITStatus DUALTIMER_GetIntStatus(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 71 FlagStatus DUALTIMER_GetIntEnableStatus(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 72 void DUALTIMER_Start(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 73 void DUALTIMER_Stop(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 74 uint32_t DUALTIMER_GetTimerLoad(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 75 void DUALTIMER_SetTimerLoad(DUALTIMER_TypeDef* DUALTIMERn, uint32_t TimerLoad);
bogdanm 0:9b334a45a8ff 76 uint32_t DUALTIMER_GetTimerValue(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 77 uint32_t DUALTIMER_GetTimerControl(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 78 void DUALTIMER_SetTimerControl(DUALTIMER_TypeDef* DUALTIMERn, uint32_t TimerControl);
bogdanm 0:9b334a45a8ff 79 uint32_t DUALTIMER_GetTimerRIS(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 80 uint32_t DUALTIMER_GetTimerMIS(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 81 uint32_t DUALTIMER_GetTimerBGLoad(DUALTIMER_TypeDef* DUALTIMERn);
bogdanm 0:9b334a45a8ff 82 void DUALTIMER_SetTimerBGLoad(DUALTIMER_TypeDef* DUALTIMERn, uint32_t TimerBGLoad);
bogdanm 0:9b334a45a8ff 83
bogdanm 0:9b334a45a8ff 84
bogdanm 0:9b334a45a8ff 85
bogdanm 0:9b334a45a8ff 86 //======================= Interrupt handler ==============================
bogdanm 0:9b334a45a8ff 87 //void DUALTIMER0_Handler();
bogdanm 0:9b334a45a8ff 88 //void DUALTIMER1_Handler();
bogdanm 0:9b334a45a8ff 89
bogdanm 0:9b334a45a8ff 90
bogdanm 0:9b334a45a8ff 91 #ifdef __cplusplus
bogdanm 0:9b334a45a8ff 92 }
bogdanm 0:9b334a45a8ff 93 #endif
bogdanm 0:9b334a45a8ff 94
bogdanm 0:9b334a45a8ff 95
bogdanm 0:9b334a45a8ff 96 #endif //__W7500X_DUALTIMER_H