1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
.. _gpio:
======
GPIO
======
The Maple features 38 ready-to-use general purpose input/output (GPIO)
pins for digital input/output, numbered D0 through D37. These numbers
correspond to the numeric values next to each header on the Maple
silkscreen.
Many of these pins may additionally be used for special features or
peripheral functions. This page documents those capabilities, by pin.
The current and voltage limitations have not been copied over from the
STM32 datasheet (see the :ref:`Recommended Reading
<gpio-recommended-reading>` for a link). In particular, a number of
GPIO pins are 5v tolerant (which means that applying 5v to a pin and
reading it as input or allowing it to drain to ground will not damage
that pin), while some are not.
.. contents:: Contents
:local:
Pin Mapping Mega Table
----------------------
This huge reference table shows the available functionality on every
GPIO pin, by peripheral type. The "STM32" column refers to the port
and number that the header is connected to on the microcontroller.
The "5v?" column documents whether or not the pin is 5v tolerant (see
above).
.. csv-table::
:header: "Pin", "STM32", ":ref:`ADC <adc>`", ":ref:`Timer <timers>`", ":ref:`I2C <i2c>`", ":ref:`UART <usart>`", ":ref:`SPI <spi>`", "5v?"
"D0", "PA3", "ADC3", "TIM2_CH4", "-", "USART2_RX", "-", "No"
"D1", "PA2", "ADC2", "TIM2_CH3", "-", "USART2_TX", "-", "No"
"D2", "PA0", "ADC0", "TIM2_CH1_ETR", "-", "USART2_CTS", "-", "No"
"D3", "PA1", "ADC1", "TIM2_CH2", "-", "USART2_RTS", "-", "No"
"D4", "PB5", "-", "-", "ISC1_SMBA", "-", "-", "No"
"D5", "PB6", "-", "TIM4_CH1", "I2C1_SCL", "-", "-", "Yes"
"D6", "PA8", "-", "TIM1_CH1", "-", "USART1_CK", "-", "Yes"
"D7", "PA9", "-", "TIM1_CH2", "-", "USART1_TX", "-", "Yes"
"D8", "PA10", "-", "TIM1_CH3", "-", "USART1_RX", "-", "Yes"
"D9", "PB7", "-", "TIM4_CH2", "I2C1_SDA", "-", "-", "Yes"
"D10", "PA4", "ADC4", "-", "-", "USART2_CK", "SPI1_NSS", "No"
"D11", "PA7", "ADC7", "TIM3_CH2", "-", "-", "SPI1_MOSI", "No"
"D12", "PA6", "ADC6", "TIM3_CH1", - - SPI1_MISO No
D13 PA5 ADC5 - - - SPI1_SCK No
D14 PB8 - TIM4_CH3 - - - Yes
Analog header
D15 PC0 ADC10 - - - - No
D16 PC1 ADC11 - - - - No
D17 PC2 ADC12 - - - - No
D18 PC3 ADC13 - - - - No
D19 PC4 ADC14 - - - - No
D20 PC5 ADC15 - - - - No
External header
D21 PC13 - - - - - No
D22 PC14 - - - - - No
D23 PC15 - - - - - No
D24 PB9 - TIM4_CH4 - - - Yes
D25 PD2 - TIM3_ETR - - - Yes
D26 PC10 - - - - - Yes
D27 PB0 ADC8 TIM3_CH3 - - - No
D28 PB1 ADC9 TIM3_CH4 - - - No
D29 PB10 - - I2C2_SCL USART3_TX - Yes
D30 PB11 - - I2C2_SDA USART3_RX - Yes
D31 PB12 - TIM1_BKIN I2C2_SMBAL USART3_CK SPI2_NSS Yes
D32 PB13 - TIM1_CH1N - USART3_CTS SPI2_SCK Yes
D33 PB14 - TIM1_CH2N - USART3_RTS SPI2_MISO Yes
D34 PB15 - TIM1_CH3N - - SPI2_MOSI Yes
D35 PC6 - - - - - Yes
D36 PC7 - - - - - Yes
D37 PC8 - - - - -
Stub (unfinished).
.. _gpio-recommended-reading:
Recommended Reading
-------------------
STMicro documentation for STM32F103RB microcontroller:
* `All <http://www.st.com/mcu/devicedocs-STM32F103RB-110.html>`_
* `Datasheet (pdf) <http://www.st.com/stonline/products/literature/ds/13587.pdf>`_
* `Reference Manual (pdf) <http://www.st.com/stonline/products/literature/rm/13902.pdf>`_
|