mbed library sources. Supersedes mbed-src.

Dependents:   Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more

Revision:
181:57724642e740
Parent:
153:fa9ff456f731
Child:
187:0387e8f68319
--- a/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/PeripheralPins.c	Wed Jan 17 15:23:54 2018 +0000
+++ b/targets/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFR32MG1/PeripheralPins.c	Fri Feb 16 16:09:33 2018 +0000
@@ -26,6 +26,7 @@
 /************ADC***************/
 /* The third "function" value is used to select the correct ADC channel */
 const PinMap PinMap_ADC[] = {
+#ifdef ADC0_BASE
     {PA0,  ADC_0, adcPosSelAPORT3XCH8},
     {PA1,  ADC_0, adcPosSelAPORT4XCH9},
     {PA2,  ADC_0, adcPosSelAPORT3XCH10},
@@ -61,11 +62,13 @@
     {PF5,  ADC_0, adcPosSelAPORT2XCH21},
     {PF6,  ADC_0, adcPosSelAPORT1XCH22},
     {PF7,  ADC_0, adcPosSelAPORT2XCH23},
+#endif
     {NC ,  NC   , NC}
 };
 
 /************I2C SCL***********/
 const PinMap PinMap_I2C_SCL[] = {
+#ifdef I2C0_BASE
     /* I2C0 */
     {PA1,  I2C_0,  0},
     {PA2,  I2C_0,  1},
@@ -99,12 +102,13 @@
     {PF6,  I2C_0, 29},
     {PF7,  I2C_0, 30},
     {PA0,  I2C_0, 31},
-
+#endif
     {NC  , NC   , NC}
 };
 
 /************I2C SDA***********/
 const PinMap PinMap_I2C_SDA[] = {
+#ifdef I2C0_BASE
     /* I2C0 */
     {PA0,  I2C_0,  0},
     {PA1,  I2C_0,  1},
@@ -138,52 +142,63 @@
     {PF5,  I2C_0, 29},
     {PF6,  I2C_0, 30},
     {PF7,  I2C_0, 31},
-
+#endif
     /* Not connected */
     {NC  , NC   , NC}
 };
 
 /************PWM***************/
 const PinMap PinMap_PWM[] = {
+#if defined(TIMER_ROUTE_CC0PEN) || defined(TIMER_ROUTEPEN_CC0PEN)
+    /* PWM0 */
     {PA0,  PWM_CH0,  0},
-    {PA1,  PWM_CH1,  0},
-    {PA2,  PWM_CH2,  0},
-    {PA3,  PWM_CH3,  0},
-    {PA4,  PWM_CH2,  2},
-    {PA5,  PWM_CH3,  2},
-    {PB11, PWM_CH1,  5},
-    {PB12, PWM_CH2,  5},
-    {PB13, PWM_CH3,  5},
     {PB14, PWM_CH0,  9},
     {PB15, PWM_CH0, 10},
     {PC6,  PWM_CH0, 11},
+    {PD10, PWM_CH0, 18},
+    {PD14, PWM_CH0, 22},
+    {PF0,  PWM_CH0, 24},
+    {PF4,  PWM_CH0, 28},
+#endif
+#if defined(TIMER_ROUTE_CC1PEN) || defined(TIMER_ROUTEPEN_CC1PEN)
+    /* PWM1 */
+    {PA1,  PWM_CH1,  0},
+    {PB11, PWM_CH1,  5},
     {PC7,  PWM_CH1, 11},
+    {PD11, PWM_CH1, 18},
+    {PD15, PWM_CH1, 22},
+    {PF1,  PWM_CH1, 24},
+    {PF5,  PWM_CH1, 28},
+#endif
+#if defined(TIMER_ROUTE_CC2PEN) || defined(TIMER_ROUTEPEN_CC2PEN)
+    /* PWM2 */
+    {PA2,  PWM_CH2,  0},
+    {PA4,  PWM_CH2,  2},
+    {PB12, PWM_CH2,  5},
     {PC8,  PWM_CH2, 11},
+    {PC10, PWM_CH2, 13},
+    {PD12, PWM_CH2, 18},
+    {PF2,  PWM_CH2, 24},
+    {PF6,  PWM_CH2, 28},
+#endif
+#if defined(TIMER_ROUTE_CC3PEN) || defined(TIMER_ROUTEPEN_CC3PEN)
+    /* PWM3 */
+    {PA3,  PWM_CH3,  0},
+    {PA5,  PWM_CH3,  2},
+    {PB13, PWM_CH3,  5},
     {PC9,  PWM_CH3, 11},
-    {PC10, PWM_CH2, 13},
     {PC11, PWM_CH3, 13},
     {PD9,  PWM_CH3, 14},
-    {PD10, PWM_CH0, 18},
-    {PD11, PWM_CH1, 18},
-    {PD12, PWM_CH2, 18},
     {PD13, PWM_CH3, 18},
-    {PD14, PWM_CH0, 22},
-    {PD15, PWM_CH1, 22},
-    {PF0,  PWM_CH0, 24},
-    {PF1,  PWM_CH1, 24},
-    {PF2,  PWM_CH2, 24},
     {PF3,  PWM_CH3, 24},
-    {PF4,  PWM_CH0, 28},
-    {PF5,  PWM_CH1, 28},
-    {PF6,  PWM_CH2, 28},
     {PF7,  PWM_CH3, 28},
-
+#endif
     {NC  , NC     , NC}
 };
 
 /*************SPI**************/
 const PinMap PinMap_SPI_MOSI[] = {
-
+#ifdef USART0_BASE
     /* USART0 */
     {PA0,  SPI_0,  0},
     {PA1,  SPI_0,  1},
@@ -203,7 +218,8 @@
     {PD13, SPI_0, 21},
     {PD14, SPI_0, 22},
     {PD15, SPI_0, 23},
-
+#endif
+#ifdef USART1_BASE
     /* USART1 */
     {PC6,  SPI_1, 11},
     {PC7,  SPI_1, 12},
@@ -219,12 +235,12 @@
     {PF5,  SPI_1, 29},
     {PF6,  SPI_1, 30},
     {PF7,  SPI_1, 31},
-
+#endif
     {NC  , NC   , NC}
 };
 
 const PinMap PinMap_SPI_MISO[] = {
-
+#ifdef USART0_BASE
     /* USART0 */
     {PA0,  SPI_0, 31},
     {PA1,  SPI_0,  0},
@@ -244,7 +260,8 @@
     {PD13, SPI_0, 20},
     {PD14, SPI_0, 21},
     {PD15, SPI_0, 22},
-
+#endif
+#ifdef USART1_BASE
     /* USART1 */
     {PC6,  SPI_1, 10},
     {PC7,  SPI_1, 11},
@@ -261,12 +278,12 @@
     {PF6,  SPI_1, 29},
     {PF7,  SPI_1, 30},
     {PA0,  SPI_1, 31},
-
+#endif
     {NC  , NC   , NC}
 };
 
 const PinMap PinMap_SPI_CLK[] = {
-
+#ifdef USART0_BASE
     /* USART0 */
     {PA0,  SPI_0, 30},
     {PA1,  SPI_0, 31},
@@ -286,7 +303,8 @@
     {PD13, SPI_0, 19},
     {PD14, SPI_0, 20},
     {PD15, SPI_0, 21},
-
+#endif
+#ifdef USART1_BASE
     /* USART1 */
     {PC6,  SPI_1,  9},
     {PC7,  SPI_1, 10},
@@ -304,12 +322,12 @@
     {PF7,  SPI_1, 29},
     {PA0,  SPI_1, 30},
     {PA1,  SPI_1, 31},
-
+#endif
     {NC  , NC   , NC}
 };
 
 const PinMap PinMap_SPI_CS[] = {
-
+#ifdef USART0_BASE
     /* USART0 */
     {PA0,  SPI_0,  29},
     {PA1,  SPI_0,  30},
@@ -329,7 +347,8 @@
     {PD13, SPI_0, 18},
     {PD14, SPI_0, 19},
     {PD15, SPI_0, 20},
-
+#endif
+#ifdef USART1_BASE
     /* USART1 */
     {PC6,  SPI_1,  8},
     {PC7,  SPI_1,  9},
@@ -345,12 +364,14 @@
     {PF5,  SPI_1, 26},
     {PF6,  SPI_1, 27},
     {PF7,  SPI_1, 28},
-
+#endif
     {NC  , NC   , NC}
 };
 
 /************UART**************/
 const PinMap PinMap_UART_TX[] = {
+#ifdef USART0_BASE
+    /* USART0 */
     {PA0,  USART_0,  0},
     {PA1,  USART_0,  1},
     {PA2,  USART_0,  2},
@@ -362,6 +383,9 @@
     {PB13, USART_0,  8},
     {PB14, USART_0,  9},
     {PB15, USART_0, 10},
+#endif
+#ifdef LEUART0_BASE
+    /* LEUART0 */
     {PD9,  LEUART_0, 17},
     {PD10, LEUART_0, 18},
     {PD11, LEUART_0, 19},
@@ -369,7 +393,9 @@
     {PD13, LEUART_0, 21},
     {PD14, LEUART_0, 22},
     {PD15, LEUART_0, 23},
-
+#endif
+#ifdef USART1_BASE
+    /* USART1 */
     {PC6,  USART_1, 11},
     {PC7,  USART_1, 12},
     {PC8,  USART_1, 13},
@@ -384,11 +410,13 @@
     {PF5,  USART_1, 29},
     {PF6,  USART_1, 30},
     {PF7,  USART_1, 31},
-
+#endif
     {NC  , NC   , NC}
 };
 
 const PinMap PinMap_UART_RX[] = {
+#ifdef USART0_BASE
+    /* USART0 */
     {PA0,  USART_0, 31},
     {PA1,  USART_0,  0},
     {PA2,  USART_0,  1},
@@ -400,6 +428,9 @@
     {PB13, USART_0,  7},
     {PB14, USART_0,  8},
     {PB15, USART_0,  9},
+#endif
+#ifdef LEUART0_BASE
+    /* LEUART0 */
     {PD9,  LEUART_0, 16},
     {PD10, LEUART_0, 17},
     {PD11, LEUART_0, 18},
@@ -407,7 +438,9 @@
     {PD13, LEUART_0, 20},
     {PD14, LEUART_0, 21},
     {PD15, LEUART_0, 22},
-
+#endif
+#ifdef USART1_BASE
+    /* USART1 */
     {PC6,  USART_1, 10},
     {PC7,  USART_1, 11},
     {PC8,  USART_1, 12},
@@ -422,6 +455,6 @@
     {PF5,  USART_1, 28},
     {PF6,  USART_1, 29},
     {PF7,  USART_1, 30},
-
+#endif
     {NC  , NC   , NC}
 };