24
24
* THE SOFTWARE.
25
25
*/
26
26
27
- /* GPIO PIN REFERENCE
28
- #define DATA_Ready_Pin GPIO_PIN_2
29
- #define DATA_Ready_GPIO_Port GPIOE
30
- #define CS_I2C_SPI_Pin GPIO_PIN_3
31
- #define CS_I2C_SPI_GPIO_Port GPIOE
32
- #define INT1_Pin GPIO_PIN_4
33
- #define INT1_GPIO_Port GPIOE
34
- #define INT2_Pin GPIO_PIN_5
35
- #define INT2_GPIO_Port GPIOE
36
- #define PC14_OSC32_IN_Pin GPIO_PIN_14
37
- #define PC14_OSC32_IN_GPIO_Port GPIOC
38
- #define PC15_OSC32_OUT_Pin GPIO_PIN_15
39
- #define PC15_OSC32_OUT_GPIO_Port GPIOC
40
- #define PH0_OSC_IN_Pin GPIO_PIN_0
41
- #define PH0_OSC_IN_GPIO_Port GPIOH
42
- #define PH1_OSC_OUT_Pin GPIO_PIN_1
43
- #define PH1_OSC_OUT_GPIO_Port GPIOH
44
- #define OTG_FS_PowerSwitchOn_Pin GPIO_PIN_0
45
- #define OTG_FS_PowerSwitchOn_GPIO_Port GPIOC
46
- #define PDM_OUT_Pin GPIO_PIN_3
47
- #define PDM_OUT_GPIO_Port GPIOC
48
- #define I2S3_WS_Pin GPIO_PIN_4
49
- #define I2S3_WS_GPIO_Port GPIOA
50
- #define SPI1_SCK_Pin GPIO_PIN_5
51
- #define SPI1_SCK_GPIO_Port GPIOA
52
- #define SPI1_MISO_Pin GPIO_PIN_6
53
- #define SPI1_MISO_GPIO_Port GPIOA
54
- #define SPI1_MOSI_Pin GPIO_PIN_7
55
- #define SPI1_MOSI_GPIO_Port GPIOA
56
- #define CLK_IN_Pin GPIO_PIN_10
57
- #define CLK_IN_GPIO_Port GPIOB
58
- #define LD4_Pin GPIO_PIN_12
59
- #define LD4_GPIO_Port GPIOD
60
- #define LD3_Pin GPIO_PIN_13
61
- #define LD3_GPIO_Port GPIOD
62
- #define LD5_Pin GPIO_PIN_14
63
- #define LD5_GPIO_Port GPIOD
64
- #define LD6_Pin GPIO_PIN_15
65
- #define LD6_GPIO_Port GPIOD
66
- #define I2S3_MCK_Pin GPIO_PIN_7
67
- #define I2S3_MCK_GPIO_Port GPIOC
68
- #define VBUS_FS_Pin GPIO_PIN_9
69
- #define VBUS_FS_GPIO_Port GPIOA
70
- #define OTG_FS_ID_Pin GPIO_PIN_10
71
- #define OTG_FS_ID_GPIO_Port GPIOA
72
- #define OTG_FS_DM_Pin GPIO_PIN_11
73
- #define OTG_FS_DM_GPIO_Port GPIOA
74
- #define OTG_FS_DP_Pin GPIO_PIN_12
75
- #define OTG_FS_DP_GPIO_Port GPIOA
76
- #define SWDIO_Pin GPIO_PIN_13
77
- #define SWDIO_GPIO_Port GPIOA
78
- #define SWCLK_Pin GPIO_PIN_14
79
- #define SWCLK_GPIO_Port GPIOA
80
- #define I2S3_SCK_Pin GPIO_PIN_10
81
- #define I2S3_SCK_GPIO_Port GPIOC
82
- #define I2S3_SD_Pin GPIO_PIN_12
83
- #define I2S3_SD_GPIO_Port GPIOC
84
- #define Audio_RST_Pin GPIO_PIN_4
85
- #define Audio_RST_GPIO_Port GPIOD
86
- #define OTG_FS_OverCurrent_Pin GPIO_PIN_5
87
- #define OTG_FS_OverCurrent_GPIO_Port GPIOD
88
- #define SWO_Pin GPIO_PIN_3
89
- #define SWO_GPIO_Port GPIOB
90
- #define Audio_SCL_Pin GPIO_PIN_6
91
- #define Audio_SCL_GPIO_Port GPIOB
92
- #define Audio_SDA_Pin GPIO_PIN_9
93
- #define Audio_SDA_GPIO_Port GPIOB
94
- #define MEMS_INT2_Pin GPIO_PIN_1
95
- #define MEMS_INT2_GPIO_Port GPIOE
96
- */
97
-
98
- #define LD4_Pin GPIO_PIN_12
99
- #define LD4_GPIO_Port GPIOD
100
- #define LD3_Pin GPIO_PIN_13
101
- #define LD3_GPIO_Port GPIOD
102
- #define LD5_Pin GPIO_PIN_14
103
- #define LD5_GPIO_Port GPIOD
104
- #define LD6_Pin GPIO_PIN_15
105
- #define LD6_GPIO_Port GPIOD
106
-
107
27
#include "stm32f4xx_hal.h"
108
28
#include "stm32f4/gpio.h"
109
29
#include "common-hal/microcontroller/Pin.h"
@@ -119,31 +39,12 @@ void stm32f4_peripherals_gpio_init(void) {
119
39
__HAL_RCC_GPIOB_CLK_ENABLE ();
120
40
__HAL_RCC_GPIOD_CLK_ENABLE ();
121
41
122
- /*Configure GPIO pin Output Level */
123
- HAL_GPIO_WritePin (GPIOD , LD4_Pin |LD3_Pin |LD5_Pin |LD6_Pin , GPIO_PIN_RESET );
124
-
125
- /*Configure GPIO pins : LD4_Pin LD3_Pin LD5_Pin LD6_Pin */
126
- GPIO_InitStruct .Pin = LD4_Pin |LD3_Pin |LD5_Pin |LD6_Pin ;
127
- GPIO_InitStruct .Mode = GPIO_MODE_OUTPUT_PP ;
128
- GPIO_InitStruct .Pull = GPIO_NOPULL ;
129
- GPIO_InitStruct .Speed = GPIO_SPEED_FREQ_LOW ;
130
- HAL_GPIO_Init (GPIOD , & GPIO_InitStruct );
131
-
132
- //Status LED chain
133
- stm32f4_peripherals_status_led (0 ,1 );
134
- stm32f4_peripherals_status_led (1 ,0 );
135
- stm32f4_peripherals_status_led (2 ,0 );
136
- stm32f4_peripherals_status_led (3 ,0 );
137
-
138
42
//Never reset pins
139
43
never_reset_pin_number (2 ,13 ); //PC13 anti tamp
140
44
never_reset_pin_number (2 ,14 ); //PC14 OSC32_IN
141
45
never_reset_pin_number (2 ,15 ); //PC15 OSC32_OUT
142
46
never_reset_pin_number (0 ,13 ); //PA13 SWDIO
143
47
never_reset_pin_number (0 ,14 ); //PA14 SWCLK
144
- never_reset_pin_number (0 ,15 ); //PA15 JTDI
145
- never_reset_pin_number (1 ,3 ); //PB3 JTDO
146
- never_reset_pin_number (1 ,4 ); //PB4 JTRST
147
48
148
49
// Port H is not included in GPIO port array
149
50
// never_reset_pin_number(5,0); //PH0 JTDO
@@ -152,18 +53,6 @@ void stm32f4_peripherals_gpio_init(void) {
152
53
153
54
//LEDs are inverted on F411 DISCO
154
55
void stm32f4_peripherals_status_led (uint8_t led , uint8_t state ) {
155
- switch (led )
156
- {
157
- case 0 : HAL_GPIO_WritePin (GPIOD , LD4_Pin , (state ^ 1 ));
158
- break ;
159
- case 1 : HAL_GPIO_WritePin (GPIOD , LD3_Pin , (state ^ 1 ));
160
- break ;
161
- case 2 : HAL_GPIO_WritePin (GPIOD , LD5_Pin , (state ^ 1 ));
162
- break ;
163
- case 3 : HAL_GPIO_WritePin (GPIOD , LD6_Pin , (state ^ 1 ));
164
- break ;
165
- default : break ;
166
- }
167
56
}
168
57
169
58
0 commit comments