Toyomasa Watarai / mbed-src

Fork of mbed-src by mbed official

Revision:
403:91a4bea587f4
Parent:
157:90e3acc479a2
diff -r 09075a3b15e3 -r 91a4bea587f4 targets/hal/TARGET_STM/TARGET_DISCO_F303VC/PinNames.h
--- a/targets/hal/TARGET_STM/TARGET_DISCO_F303VC/PinNames.h	Fri Nov 14 09:00:07 2014 +0000
+++ b/targets/hal/TARGET_STM/TARGET_DISCO_F303VC/PinNames.h	Fri Nov 14 09:15:08 2014 +0000
@@ -36,21 +36,30 @@
 extern "C" {
 #endif
 
-// MODE (see GPIOMode_TypeDef structure)
-// OTYPE (see GPIOOType_TypeDef structure)
-// PUPD (see GPIOPuPd_TypeDef structure)
-// AFNUM (see AF_mapping constant table, 0xFF is not used)
-#define STM_PIN_DATA(MODE, OTYPE, PUPD, AFNUM)  (((AFNUM)<<8)|((PUPD)<<4)|((OTYPE)<<2)|((MODE)<<0))
-#define STM_PIN_MODE(X)   (((X)>>0) & 0x3)
-#define STM_PIN_OTYPE(X)  (((X)>>2) & 0x1)
-#define STM_PIN_PUPD(X)   (((X)>>4) & 0x3)
-#define STM_PIN_AFNUM(X)  (((X)>>8) & 0xF)
+// See stm32f3xx_hal_gpio.h and stm32f3xx_hal_gpio_ex.h for values of MODE, PUPD and AFNUM
+#define STM_PIN_DATA(MODE, PUPD, AFNUM)  ((int)(((AFNUM) << 7) | ((PUPD) << 4) | ((MODE) << 0)))
+#define STM_PIN_MODE(X)   (((X) >> 0) & 0x0F)
+#define STM_PIN_PUPD(X)   (((X) >> 4) & 0x07)
+#define STM_PIN_AFNUM(X)  (((X) >> 7) & 0x0F)
+#define STM_MODE_INPUT              (0)
+#define STM_MODE_OUTPUT_PP          (1)
+#define STM_MODE_OUTPUT_OD          (2)
+#define STM_MODE_AF_PP              (3)
+#define STM_MODE_AF_OD              (4)
+#define STM_MODE_ANALOG             (5)
+#define STM_MODE_IT_RISING          (6)
+#define STM_MODE_IT_FALLING         (7)
+#define STM_MODE_IT_RISING_FALLING  (8)
+#define STM_MODE_EVT_RISING         (9)
+#define STM_MODE_EVT_FALLING        (10)
+#define STM_MODE_EVT_RISING_FALLING (11)
+#define STM_MODE_IT_EVT_RESET       (12)
 
 // High nibble = port number (0=A, 1=B, 2=C, 3=D, 4=E, 5=F, 6=G, 7=H)
 // Low nibble  = pin number
 #define STM_PORT(X) (((uint32_t)(X) >> 4) & 0xF)
 #define STM_PIN(X)  ((uint32_t)(X) & 0xF)
-    
+
 typedef enum {
     PIN_INPUT,
     PIN_OUTPUT
@@ -159,56 +168,56 @@
   PF_14 = 0x5E,
   PF_15 = 0x5F,
 
-  // Arduino connector namings
-  A0          = PA_0,
-  A1          = PA_1,
-  A2          = PA_4,
-  A3          = PB_0,
-  A4          = PC_1,
-  A5          = PC_0,
-  D0          = PA_3,
-  D1          = PA_2,
-  D2          = PA_10,
-  D3          = PB_3,
-  D4          = PB_5,
-  D5          = PB_4,
-  D6          = PB_10,
-  D7          = PA_8,
-  D8          = PA_9,
-  D9          = PC_7,
-  D10         = PB_6,
-  D11         = PA_7,
-  D12         = PA_6,
-  D13         = PA_5,
-  D14         = PB_9,
-  D15         = PB_8,
+    // Arduino connector namings
+    A0          = PA_0,
+    A1          = PA_1,
+    A2          = PA_4,
+    A3          = PB_0,
+    A4          = PC_1,
+    A5          = PC_0,
+    D0          = PA_3,
+    D1          = PA_2,
+    D2          = PA_10,
+    D3          = PB_3,
+    D4          = PB_5,
+    D5          = PB_4,
+    D6          = PB_10,
+    D7          = PA_8,
+    D8          = PA_9,
+    D9          = PC_7,
+    D10         = PB_6,
+    D11         = PB_15,
+    D12         = PB_14,
+    D13         = PB_13,
+    D14         = PB_9,
+    D15         = PB_8,
 
-  // Generic signals namings
-  LED1        = PE_9,
-  LED2        = PE_8,
-  LED3        = PE_9,  
-  LED4        = PE_8,  
-  LED5        = PE_10,  
-  LED6        = PE_15,  
-  LED7        = PE_11,  
-  LED8        = PE_14,  
-  LED9        = PE_12,  
-  LED10		  = PE_13,  
-  USER_BUTTON = PA_0,
-  SERIAL_TX   = PA_2,	/* USART2 */
-  SERIAL_RX   = PA_3,
-  USBTX       = PA_2,	/* USART2 */
-  USBRX       = PA_3,
-  I2C_SCL     = PB_8,	/* I2C1 */
-  I2C_SDA     = PB_9,
-  SPI_MOSI    = PB_5,	/* SPI1 */
-  SPI_MISO    = PB_4,
-  SPI_SCK     = PB_3,
-  SPI_CS      = PA_15,
-  PWM_OUT     = PB_1,
-  
-  // Not connected
-  NC = (int)0xFFFFFFFF
+    // Generic signals namings
+    LED1        = PE_9,
+    LED2        = PE_8,
+    LED3        = PE_9,
+    LED4        = PE_8,
+    LED5        = PE_10,
+    LED6        = PE_15,
+    LED7        = PE_11,
+    LED8        = PE_14,
+    LED9        = PE_12,
+    LED10       = PE_13,
+    USER_BUTTON = PA_0,
+    SERIAL_TX   = PA_2,
+    SERIAL_RX   = PA_3,
+    USBTX       = PA_2,
+    USBRX       = PA_3,
+    I2C_SCL     = PB_8,
+    I2C_SDA     = PB_9,
+    SPI_MOSI    = PB_15,
+    SPI_MISO    = PB_14,
+    SPI_SCK     = PB_13,
+    SPI_CS      = PB_6,
+    PWM_OUT     = PB_4,
+
+    // Not connected
+    NC = (int)0xFFFFFFFF
 } PinName;
 
 typedef enum {