From 15ed788fe7812249ff5ced28761d294aff8ef01f Mon Sep 17 00:00:00 2001 From: Mikko Polojarvi Date: Fri, 9 Oct 2015 15:30:49 +0300 Subject: [PATCH] SiLabs Pearl: Pin mappings for PWM PWM pin mappings. Since the pins can be freely chosen (unlike in previous HW), there should be no need to use the other channels. Also corrected frequency for HFXO in ref devices. --- .../TARGET_EFM32PG_STKXXXX/PeripheralPins.c | 41 +++++++++++++++++-- .../device_peripherals.h | 2 +- 2 files changed, 38 insertions(+), 5 deletions(-) diff --git a/libraries/mbed/targets/hal/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG_STKXXXX/PeripheralPins.c b/libraries/mbed/targets/hal/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG_STKXXXX/PeripheralPins.c index f501f01c0c..f8f6f328a6 100644 --- a/libraries/mbed/targets/hal/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG_STKXXXX/PeripheralPins.c +++ b/libraries/mbed/targets/hal/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG_STKXXXX/PeripheralPins.c @@ -137,10 +137,43 @@ const PinMap PinMap_I2C_SDA[] = { /************PWM***************/ const PinMap PinMap_PWM[] = { - {PA12, PWM_CH0, 0}, - {PA13, PWM_CH1, 0}, - {PA14, PWM_CH2, 0}, - {NC , NC , 0} + + // Pearl ok + + {PA0, PWM_CH0, 0}, + {PA1, PWM_CH0, 1}, + {PA2, PWM_CH0, 2}, + {PA3, PWM_CH0, 3}, + {PA4, PWM_CH0, 4}, + {PA5, PWM_CH0, 5}, + {PB11, PWM_CH0, 6}, + {PB12, PWM_CH0, 7}, + {PB13, PWM_CH0, 8}, + {PB14, PWM_CH0, 9}, + {PB15, PWM_CH0, 10}, + {PC6, PWM_CH0, 11}, + {PC7, PWM_CH0, 12}, + {PC8, PWM_CH0, 13}, + {PC9, PWM_CH0, 14}, + {PC10, PWM_CH0, 15}, + {PC11, PWM_CH0, 16}, + + {PD10, PWM_CH0, 18}, + {PD11, PWM_CH0, 19}, + {PD12, PWM_CH0, 20}, + {PD13, PWM_CH0, 21}, + {PD14, PWM_CH0, 22}, + {PD15, PWM_CH0, 23}, + {PF0, PWM_CH0, 24}, + {PF1, PWM_CH0, 25}, + {PF2, PWM_CH0, 26}, + {PF3, PWM_CH0, 27}, + {PF4, PWM_CH0, 28}, + {PF5, PWM_CH0, 29}, + {PF6, PWM_CH0, 30}, + {PF7, PWM_CH0, 31}, + + {NC , NC , NC} }; /*************SPI**************/ diff --git a/libraries/mbed/targets/hal/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG_STKXXXX/device_peripherals.h b/libraries/mbed/targets/hal/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG_STKXXXX/device_peripherals.h index 49ddc55bd9..5e51560bc5 100644 --- a/libraries/mbed/targets/hal/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG_STKXXXX/device_peripherals.h +++ b/libraries/mbed/targets/hal/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32PG_STKXXXX/device_peripherals.h @@ -77,7 +77,7 @@ #define HFRCO_FREQUENCY CMU_HFRCOCTRL_BAND_14MHZ #define LFXO_FREQUENCY 32768 -#define HFXO_FREQUENCY 38500000 +#define HFXO_FREQUENCY 38400000 #if (LOW_ENERGY_CLOCK_SOURCE == LFXO) #define LOW_ENERGY_CLOCK_FREQUENCY LFXO_FREQUENCY