added prescaler for 16 bit pwm in LPC1347 target
Fork of mbed-dev by
Diff: targets/hal/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG_STK3401/device_peripherals.h
- Revision:
- 54:2a2065e67ef6
- Parent:
- 50:a417edff4437
- Child:
- 144:ef7eb2e8f9f7
--- a/targets/hal/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG_STK3401/device_peripherals.h Wed Jan 20 08:15:10 2016 +0000 +++ b/targets/hal/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG_STK3401/device_peripherals.h Thu Jan 28 18:15:10 2016 +0000 @@ -32,7 +32,7 @@ /* us ticker */ #define US_TICKER_TIMER TIMER0 -#define US_TICKER_TIMER_CLOCK cmuClock_TIMER0 +#define US_TICKER_TIMER_CLOCK cmuClock_TIMER0 #define US_TICKER_TIMER_IRQ TIMER0_IRQn /* PWM */ @@ -52,31 +52,48 @@ /* Low Energy peripheral clock source. * Options: - * * LFXO: external crystal, please define frequency. - * * LFRCO: internal RC oscillator (32.768kHz) - * * ULFRCO: internal ultra-low power RC oscillator (available down to EM3) (1kHz) + * * LFXO: external crystal, please define frequency. + * * LFRCO: internal RC oscillator (32.768kHz) + * * ULFRCO: internal ultra-low power RC oscillator (available down to EM3) (1kHz) */ -#define LOW_ENERGY_CLOCK_SOURCE LFXO +#define LOW_ENERGY_CLOCK_SOURCE LFXO /** Core clock source. * Options: - * * HFXO: external crystal, please define frequency. - * * HFRCO: High-frequency internal RC oscillator. Please select frequency as well. + * * HFXO: external crystal, please define frequency. + * * HFRCO: High-frequency internal RC oscillator. Please select frequency as well. */ -#define CORE_CLOCK_SOURCE HFXO +#define CORE_CLOCK_SOURCE HFXO -#define HFRCO_FREQUENCY_ENUM cmuHFRCOFreq_19M0Hz -#define HFRCO_FREQUENCY 19000000 +/** HFRCO frequency selection + * Options: + * ** HFRCO_FREQUENCY_ENUM ** HFRCO_FREQUENCY ** + * * cmuHFRCOFreq_1M0Hz == 1000000 * + * * cmuHFRCOFreq_2M0Hz == 2000000 * + * * cmuHFRCOFreq_4M0Hz == 4000000 * + * * cmuHFRCOFreq_7M0Hz == 7000000 * + * * cmuHFRCOFreq_13M0Hz == 13000000 * + * * cmuHFRCOFreq_16M0Hz == 16000000 * + * * cmuHFRCOFreq_19M0Hz == 19000000 * + * * cmuHFRCOFreq_26M0Hz == 26000000 * + * * cmuHFRCOFreq_32M0Hz == 32000000 * + * * cmuHFRCOFreq_38M0Hz == 38000000 * + * ********************************************* + */ + +/* Make sure the settings of HFRCO_FREQUENCY and HFRCO_FREQUENCY_ENUM match, or timings will be faulty! */ +#define HFRCO_FREQUENCY_ENUM cmuHFRCOFreq_19M0Hz +#define HFRCO_FREQUENCY 19000000 -#define LFXO_FREQUENCY 32768 -#define HFXO_FREQUENCY 40000000 +#define LFXO_FREQUENCY 32768 +#define HFXO_FREQUENCY 40000000 #if (LOW_ENERGY_CLOCK_SOURCE == LFXO) -#define LOW_ENERGY_CLOCK_FREQUENCY LFXO_FREQUENCY +#define LOW_ENERGY_CLOCK_FREQUENCY LFXO_FREQUENCY #elif (LOW_ENERGY_CLOCK_SOURCE == LFRCO) -#define LOW_ENERGY_CLOCK_FREQUENCY 32768 +#define LOW_ENERGY_CLOCK_FREQUENCY 32768 #elif (LOW_ENERGY_CLOCK_SOURCE == ULFRCO) -#define LOW_ENERGY_CLOCK_FREQUENCY 1000 +#define LOW_ENERGY_CLOCK_FREQUENCY 1000 #else #error "Unknown Low Energy Clock selection" #endif