added prescaler for 16 bit pwm in LPC1347 target

Fork of mbed-dev by mbed official

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