mirror of https://github.com/ARMmbed/mbed-os.git
LPC1768: Enable usticker
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>pull/7009/head
parent
c18763bb41
commit
870600400d
|
@ -17,14 +17,27 @@
|
||||||
#include "us_ticker_api.h"
|
#include "us_ticker_api.h"
|
||||||
#include "PeripheralNames.h"
|
#include "PeripheralNames.h"
|
||||||
|
|
||||||
|
const ticker_info_t* us_ticker_get_info()
|
||||||
|
{
|
||||||
|
static const ticker_info_t info = {
|
||||||
|
1000000, // 1 MHz
|
||||||
|
32 // 32 bit counter
|
||||||
|
};
|
||||||
|
return &info;
|
||||||
|
}
|
||||||
|
|
||||||
|
static bool us_ticker_inited = false;
|
||||||
|
|
||||||
#define US_TICKER_TIMER ((LPC_TIM_TypeDef *)LPC_TIM3_BASE)
|
#define US_TICKER_TIMER ((LPC_TIM_TypeDef *)LPC_TIM3_BASE)
|
||||||
#define US_TICKER_TIMER_IRQn TIMER3_IRQn
|
#define US_TICKER_TIMER_IRQn TIMER3_IRQn
|
||||||
|
|
||||||
int us_ticker_inited = 0;
|
|
||||||
|
|
||||||
void us_ticker_init(void) {
|
void us_ticker_init(void) {
|
||||||
if (us_ticker_inited) return;
|
if (us_ticker_inited) {
|
||||||
us_ticker_inited = 1;
|
/* calling init again should cancel current interrupt */
|
||||||
|
us_ticker_disable_interrupt();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
us_ticker_inited = true;
|
||||||
|
|
||||||
LPC_SC->PCONP |= 1 << 23; // Clock TIMER_3
|
LPC_SC->PCONP |= 1 << 23; // Clock TIMER_3
|
||||||
|
|
||||||
|
@ -42,9 +55,6 @@ void us_ticker_init(void) {
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32_t us_ticker_read() {
|
uint32_t us_ticker_read() {
|
||||||
if (!us_ticker_inited)
|
|
||||||
us_ticker_init();
|
|
||||||
|
|
||||||
return US_TICKER_TIMER->TC;
|
return US_TICKER_TIMER->TC;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue