mbed library sources. Supersedes mbed-src.
Dependents: Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more
Diff: targets/TARGET_NXP/TARGET_LPC176X/us_ticker.c
- Revision:
- 188:bcfe06ba3d64
- Parent:
- 186:707f6e361f3e
- Child:
- 189:f392fc9709a3
--- a/targets/TARGET_NXP/TARGET_LPC176X/us_ticker.c Thu Sep 06 13:40:20 2018 +0100 +++ b/targets/TARGET_NXP/TARGET_LPC176X/us_ticker.c Thu Nov 08 11:46:34 2018 +0000 @@ -28,8 +28,19 @@ static bool us_ticker_inited = false; +#if MBED_CONF_TARGET_US_TICKER_TIMER == 0 +#define US_TICKER_TIMER ((LPC_TIM_TypeDef *)LPC_TIM0_BASE) +#define US_TICKER_TIMER_IRQn TIMER0_IRQn +#elif MBED_CONF_TARGET_US_TICKER_TIMER == 1 +#define US_TICKER_TIMER ((LPC_TIM_TypeDef *)LPC_TIM1_BASE) +#define US_TICKER_TIMER_IRQn TIMER1_IRQn +#elif MBED_CONF_TARGET_US_TICKER_TIMER == 1 +#define US_TICKER_TIMER ((LPC_TIM_TypeDef *)LPC_TIM2_BASE) +#define US_TICKER_TIMER_IRQn TIMER2_IRQn +#else #define US_TICKER_TIMER ((LPC_TIM_TypeDef *)LPC_TIM3_BASE) #define US_TICKER_TIMER_IRQn TIMER3_IRQn +#endif void us_ticker_init(void) { if (us_ticker_inited) { @@ -77,3 +88,11 @@ void us_ticker_clear_interrupt(void) { US_TICKER_TIMER->IR = 1; } + +void us_ticker_free(void) +{ + US_TICKER_TIMER->TCR = 0; + + US_TICKER_TIMER->MCR &= ~1; + NVIC_DisableIRQ(US_TICKER_TIMER_IRQn); +}