#ifndef __SN32F800_CT16B5_H
#define __SN32F800_CT16B5_H

/*_____ I N C L U D E S ____________________________________________________*/
#include <stdint.h>
#include <SN32F800_Def.h>

/*_____ D E F I N I T I O N S ______________________________________________*/
#define	CT16B5_IRQ	INTERRUPT_METHOD		//INTERRUPT_METHOD:	Enable CT16B5 timer and interrupt
																				//POLLING_METHOD: 	Enable CT16B5 timer ONLY

/*_____ M A C R O S ________________________________________________________*/
#define __CT16B5_ENABLE			SN_SYS1->AHBCLKEN_b.CT16B5CLKEN = ENABLE		
#define __CT16B5_DISABLE		SN_SYS1->AHBCLKEN_b.CT16B5CLKEN = DISABLE

/*_____ D E C L A R A T I O N S ____________________________________________*/
extern volatile uint32_t iwCT16B5_IrqEvent; //The bitmask usage of iwCT16Bn_IrqEvent is the same with CT16Bn_RIS

void CT16B5_Init(void);
void CT16B5_NvicEnable(void);
void CT16B5_NvicDisable(void);

#endif	/*__SN32F800_CT16B5_H*/
