Skip to content

Commit 085dd09

Browse files
authored
Merge pull request #2921 from bcostm/serialFC_F0
STM32F0xx - Add missing UART_RTS/CTS pins for Serial Flow Control
2 parents 8f492a2 + c1485fe commit 085dd09

File tree

9 files changed

+113
-7
lines changed

9 files changed

+113
-7
lines changed

targets/TARGET_STM/TARGET_STM32F0/PeripheralPins.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@ extern const PinMap PinMap_PWM[];
5555

5656
extern const PinMap PinMap_UART_TX[];
5757
extern const PinMap PinMap_UART_RX[];
58+
extern const PinMap PinMap_UART_RTS[];
59+
extern const PinMap PinMap_UART_CTS[];
5860

5961
//*** SPI ***
6062

targets/TARGET_STM/TARGET_STM32F0/TARGET_DISCO_F051R8/PeripheralPins.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,18 @@ const PinMap PinMap_UART_RX[] = {
123123
{NC, NC, 0}
124124
};
125125

126+
const PinMap PinMap_UART_RTS[] = {
127+
{PA_1, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)},
128+
{PA_12, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
129+
{NC, NC, 0}
130+
};
131+
132+
const PinMap PinMap_UART_CTS[] = {
133+
{PA_0, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)},
134+
{PA_11, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
135+
{NC, NC, 0}
136+
};
137+
126138
//*** SPI ***
127139

128140
const PinMap PinMap_SPI_MOSI[] = {

targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F030R8/PeripheralPins.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,16 @@ const PinMap PinMap_UART_RX[] = {
123123
{NC, NC, 0}
124124
};
125125

126+
const PinMap PinMap_UART_RTS[] = {
127+
{PA_12, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
128+
{NC, NC, 0}
129+
};
130+
131+
const PinMap PinMap_UART_CTS[] = {
132+
{PA_11, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
133+
{NC, NC, 0}
134+
};
135+
126136
//*** SPI ***
127137

128138
const PinMap PinMap_SPI_MOSI[] = {

targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F031K6/PeripheralPins.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,18 @@ const PinMap PinMap_UART_RX[] = {
119119
{NC, NC, 0}
120120
};
121121

122+
const PinMap PinMap_UART_RTS[] = {
123+
{PA_1, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
124+
{PA_12, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
125+
{NC, NC, 0}
126+
};
127+
128+
const PinMap PinMap_UART_CTS[] = {
129+
{PA_0, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
130+
{PA_11, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
131+
{NC, NC, 0}
132+
};
133+
122134
//*** SPI ***
123135

124136
const PinMap PinMap_SPI_MOSI[] = {

targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F042K6/PeripheralPins.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,18 @@ const PinMap PinMap_UART_RX[] = {
124124
{NC, NC, 0}
125125
};
126126

127+
const PinMap PinMap_UART_RTS[] = {
128+
{PA_1, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)},
129+
{PA_12, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
130+
{NC, NC, 0}
131+
};
132+
133+
const PinMap PinMap_UART_CTS[] = {
134+
{PA_0, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)},
135+
{PA_11, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
136+
{NC, NC, 0}
137+
};
138+
127139
//*** SPI ***
128140

129141
const PinMap PinMap_SPI_MOSI[] = {

targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F070RB/PeripheralPins.c

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -152,6 +152,25 @@ const PinMap PinMap_UART_RX[] = {
152152
{NC, NC, 0}
153153
};
154154

155+
const PinMap PinMap_UART_RTS[] = {
156+
{PA_1, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)},
157+
{PA_12, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
158+
{PA_15, UART_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART4)},
159+
{PB_1, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)},
160+
{PB_14, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)},
161+
{PD_2, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART3)},
162+
{NC, NC, 0}
163+
};
164+
165+
const PinMap PinMap_UART_CTS[] = {
166+
{PA_0, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)},
167+
{PA_6, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)},
168+
{PA_11, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
169+
{PB_7, UART_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART4)},
170+
{PB_13, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)},
171+
{NC, NC, 0}
172+
};
173+
155174
//*** SPI ***
156175

157176
const PinMap PinMap_SPI_MOSI[] = {

targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F072RB/PeripheralPins.c

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,25 @@ const PinMap PinMap_UART_RX[] = {
166166
{NC, NC, 0}
167167
};
168168

169+
const PinMap PinMap_UART_RTS[] = {
170+
{PA_1, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)},
171+
{PA_12, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
172+
{PA_15, UART_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART4)},
173+
{PB_1, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)},
174+
{PB_14, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)},
175+
{PD_2, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART3)},
176+
{NC, NC, 0}
177+
};
178+
179+
const PinMap PinMap_UART_CTS[] = {
180+
{PA_0, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)},
181+
{PA_6, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)},
182+
{PA_11, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
183+
{PB_7, UART_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART4)},
184+
{PB_13, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)},
185+
{NC, NC, 0}
186+
};
187+
169188
//*** SPI ***
170189

171190
const PinMap PinMap_SPI_MOSI[] = {

targets/TARGET_STM/TARGET_STM32F0/TARGET_NUCLEO_F091RC/PeripheralPins.c

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,6 +188,26 @@ const PinMap PinMap_UART_RX[] = {
188188
{NC, NC, 0}
189189
};
190190

191+
const PinMap PinMap_UART_RTS[] = {
192+
{PA_1, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)},
193+
{PA_12, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
194+
{PA_15, UART_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART4)},
195+
{PB_1, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)},
196+
{PB_5, UART_5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART5)},
197+
{PB_14, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)},
198+
{PD_2, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART3)},
199+
{NC, NC, 0}
200+
};
201+
202+
const PinMap PinMap_UART_CTS[] = {
203+
{PA_0, UART_2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART2)},
204+
{PA_6, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)},
205+
{PA_11, UART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_USART1)},
206+
{PB_7, UART_4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART4)},
207+
{PB_13, UART_3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART3)},
208+
{NC, NC, 0}
209+
};
210+
191211
//*** SPI ***
192212

193213
const PinMap PinMap_SPI_MOSI[] = {

targets/targets.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -582,7 +582,7 @@
582582
"supported_toolchains": ["ARM", "uARM", "IAR", "GCC_ARM"],
583583
"inherits": ["Target"],
584584
"detect_code": ["0725"],
585-
"device_has": ["ANALOGIN", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
585+
"device_has": ["ANALOGIN", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
586586
"default_lib": "small",
587587
"release_versions": ["2"],
588588
"device_name": "STM32F030R8"
@@ -596,7 +596,7 @@
596596
"supported_toolchains": ["ARM", "uARM", "IAR", "GCC_ARM"],
597597
"inherits": ["Target"],
598598
"detect_code": ["0791"],
599-
"device_has": ["ANALOGIN", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
599+
"device_has": ["ANALOGIN", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
600600
"default_lib": "small",
601601
"release_versions": ["2"],
602602
"device_name": "STM32F031K6"
@@ -610,7 +610,7 @@
610610
"supported_toolchains": ["ARM", "uARM", "IAR", "GCC_ARM"],
611611
"inherits": ["Target"],
612612
"detect_code": ["0785"],
613-
"device_has": ["ANALOGIN", "CAN", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
613+
"device_has": ["ANALOGIN", "CAN", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
614614
"default_lib": "small",
615615
"release_versions": ["2"],
616616
"device_name": "STM32F042K6"
@@ -623,7 +623,7 @@
623623
"supported_toolchains": ["ARM", "uARM", "IAR", "GCC_ARM"],
624624
"inherits": ["Target"],
625625
"detect_code": ["0755"],
626-
"device_has": ["ANALOGIN", "I2C", "I2CSLAVE", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_ASYNCH", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
626+
"device_has": ["ANALOGIN", "I2C", "I2CSLAVE", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SERIAL_ASYNCH", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
627627
"release_versions": ["2", "5"],
628628
"device_name": "STM32F070RB"
629629
},
@@ -635,7 +635,7 @@
635635
"supported_toolchains": ["ARM", "uARM", "IAR", "GCC_ARM"],
636636
"inherits": ["Target"],
637637
"detect_code": ["0730"],
638-
"device_has": ["ANALOGIN", "ANALOGOUT", "CAN", "I2C", "I2CSLAVE", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_ASYNCH", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
638+
"device_has": ["ANALOGIN", "ANALOGOUT", "CAN", "I2C", "I2CSLAVE", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SERIAL_ASYNCH", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
639639
"release_versions": ["2", "5"],
640640
"device_name": "STM32F072RB"
641641
},
@@ -647,7 +647,7 @@
647647
"supported_toolchains": ["ARM", "uARM", "IAR", "GCC_ARM"],
648648
"inherits": ["Target"],
649649
"detect_code": ["0750"],
650-
"device_has": ["ANALOGIN", "ANALOGOUT", "CAN", "I2C", "I2CSLAVE", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_ASYNCH", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
650+
"device_has": ["ANALOGIN", "ANALOGOUT", "CAN", "I2C", "I2CSLAVE", "INTERRUPTIN", "LOWPOWERTIMER", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SERIAL_ASYNCH", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
651651
"release_versions": ["2", "5"],
652652
"device_name": "STM32F091RC"
653653
},
@@ -990,7 +990,7 @@
990990
"default_toolchain": "ARM",
991991
"extra_labels": ["STM", "STM32F0", "STM32F051", "STM32F051R8"],
992992
"supported_toolchains": ["GCC_ARM"],
993-
"device_has": ["ANALOGIN", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
993+
"device_has": ["ANALOGIN", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SERIAL_FC", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"],
994994
"device_name": "STM32F051R8"
995995
},
996996
"DISCO_F100RB": {

0 commit comments

Comments
 (0)