@@ -41,170 +41,150 @@ bool apa102_mosi_in_use;
41
41
#endif
42
42
43
43
#if defined(TFBGA216 )
44
- GPIO_TypeDef * ports [] = {GPIOA , GPIOB , GPIOC , GPIOD , GPIOE , GPIOF , GPIOG , GPIOH , GPIOI , GPIOJ , GPIOK };
44
+ GPIO_TypeDef * ports [] = {GPIOA , GPIOB , GPIOC , GPIOD , GPIOE , GPIOF , GPIOG , GPIOH , GPIOI , GPIOJ , GPIOK };
45
45
#elif defined(LQFP144 )
46
- GPIO_TypeDef * ports [] = {GPIOA , GPIOB , GPIOC , GPIOD , GPIOE , GPIOF , GPIOG };
46
+ GPIO_TypeDef * ports [] = {GPIOA , GPIOB , GPIOC , GPIOD , GPIOE , GPIOF , GPIOG };
47
47
#elif defined(LQFP100_f4 ) || (LQFP100_x7 )
48
- GPIO_TypeDef * ports [] = {GPIOA , GPIOB , GPIOC , GPIOD , GPIOE };
48
+ GPIO_TypeDef * ports [] = {GPIOA , GPIOB , GPIOC , GPIOD , GPIOE };
49
49
#elif defined(LQFP64 )
50
- GPIO_TypeDef * ports [] = {GPIOA , GPIOB , GPIOC , GPIOD };
50
+ GPIO_TypeDef * ports [] = {GPIOA , GPIOB , GPIOC , GPIOD };
51
51
#elif defined(UFQFPN48 )
52
- GPIO_TypeDef * ports [] = {GPIOA , GPIOB , GPIOC };
52
+ GPIO_TypeDef * ports [] = {GPIOA , GPIOB , GPIOC };
53
53
#endif
54
54
55
+
55
56
#define GPIO_PORT_COUNT (MP_ARRAY_SIZE(ports))
56
57
57
58
STATIC uint16_t claimed_pins [GPIO_PORT_COUNT ];
58
59
STATIC uint16_t __ALIGNED (4 ) never_reset_pins [GPIO_PORT_COUNT ];
59
60
60
- void reset_all_pins (void )
61
- {
61
+ void reset_all_pins (void ) {
62
62
// Reset claimed pins
63
- for (uint8_t i = 0 ; i < GPIO_PORT_COUNT ; i ++ )
64
- {
63
+ for (uint8_t i = 0 ; i < GPIO_PORT_COUNT ; i ++ ) {
65
64
claimed_pins [i ] = never_reset_pins [i ];
66
65
}
67
- for (uint8_t i = 0 ; i < GPIO_PORT_COUNT ; i ++ )
68
- {
66
+ for (uint8_t i = 0 ; i < GPIO_PORT_COUNT ; i ++ ) {
69
67
HAL_GPIO_DeInit (ports [i ], ~never_reset_pins [i ]);
70
68
}
71
69
72
- #ifdef MICROPY_HW_NEOPIXEL
70
+ #ifdef MICROPY_HW_NEOPIXEL
73
71
neopixel_in_use = false;
74
- #endif
75
- #ifdef MICROPY_HW_APA102_MOSI
76
- apa102_sck_in_use = false;
77
- apa102_mosi_in_use = false;
78
- #endif
72
+ #endif
73
+ #ifdef MICROPY_HW_APA102_MOSI
74
+ apa102_sck_in_use = false;
75
+ apa102_mosi_in_use = false;
76
+ #endif
79
77
}
80
78
81
79
// Mark pin as free and return it to a quiescent state.
82
- void reset_pin_number (uint8_t pin_port , uint8_t pin_number )
83
- {
84
- if (pin_number == NO_PIN )
85
- {
80
+ void reset_pin_number (uint8_t pin_port , uint8_t pin_number ) {
81
+ if ( pin_number == NO_PIN ) {
86
82
return ;
87
83
}
88
84
89
- if (pin_port == 0x0F )
90
- {
85
+ if (pin_port == 0x0F ) {
91
86
return ;
92
87
}
93
88
// Clear claimed bit & reset
94
- claimed_pins [pin_port ] &= ~(1 << pin_number );
95
- never_reset_pins [pin_port ] &= ~(1 << pin_number );
96
- HAL_GPIO_DeInit (ports [pin_port ], 1 << pin_number );
89
+ claimed_pins [pin_port ] &= ~(1 << pin_number );
90
+ never_reset_pins [pin_port ] &= ~(1 << pin_number );
91
+ HAL_GPIO_DeInit (ports [pin_port ], 1 << pin_number );
97
92
98
- #ifdef MICROPY_HW_NEOPIXEL
99
- if (pin_port == MICROPY_HW_NEOPIXEL -> port && pin_number == MICROPY_HW_NEOPIXEL -> number )
100
- {
93
+ #ifdef MICROPY_HW_NEOPIXEL
94
+ if (pin_port == MICROPY_HW_NEOPIXEL -> port && pin_number == MICROPY_HW_NEOPIXEL -> number ) {
101
95
neopixel_in_use = false;
102
96
rgb_led_status_init ();
103
97
return ;
104
98
}
105
- #endif
106
- #ifdef MICROPY_HW_APA102_MOSI
107
- if ((pin_port == MICROPY_HW_APA102_MOSI -> port && pin_number == MICROPY_HW_APA102_MOSI -> number ) || (pin_port == MICROPY_HW_APA102_SCK -> port && pin_number == MICROPY_HW_APA102_MOSI -> number ))
108
- {
109
- apa102_mosi_in_use = false;
110
- apa102_sck_in_use = false;
111
- rgb_led_status_init ();
112
- return ;
113
- }
114
- #endif
99
+ #endif
100
+ #ifdef MICROPY_HW_APA102_MOSI
101
+ if ((pin_port == MICROPY_HW_APA102_MOSI -> port && pin_number == MICROPY_HW_APA102_MOSI -> number ) || (pin_port == MICROPY_HW_APA102_SCK -> port && pin_number == MICROPY_HW_APA102_MOSI -> number ))
102
+ {
103
+ apa102_mosi_in_use = false;
104
+ apa102_sck_in_use = false;
105
+ rgb_led_status_init ();
106
+ return ;
107
+ }
108
+ #endif
115
109
}
116
110
117
- void never_reset_pin_number (uint8_t pin_port , uint8_t pin_number )
118
- {
119
- if (pin_number == NO_PIN )
120
- {
111
+ void never_reset_pin_number (uint8_t pin_port , uint8_t pin_number ) {
112
+ if ( pin_number == NO_PIN ) {
121
113
return ;
122
114
}
123
- never_reset_pins [pin_port ] |= 1 << pin_number ;
115
+ never_reset_pins [pin_port ] |= 1 << pin_number ;
124
116
// Make sure never reset pins are also always claimed
125
- claimed_pins [pin_port ] |= 1 << pin_number ;
117
+ claimed_pins [pin_port ] |= 1 << pin_number ;
126
118
}
127
119
128
- void common_hal_never_reset_pin (const mcu_pin_obj_t * pin )
129
- {
120
+ void common_hal_never_reset_pin (const mcu_pin_obj_t * pin ) {
130
121
never_reset_pin_number (pin -> port , pin -> number );
131
122
}
132
123
133
- void common_hal_reset_pin (const mcu_pin_obj_t * pin )
134
- {
124
+ void common_hal_reset_pin (const mcu_pin_obj_t * pin ) {
135
125
reset_pin_number (pin -> port , pin -> number );
136
126
}
137
127
138
- void claim_pin (uint8_t pin_port , uint8_t pin_number )
139
- {
128
+ void claim_pin (uint8_t pin_port , uint8_t pin_number ) {
140
129
// Set bit in claimed_pins bitmask.
141
- claimed_pins [pin_port ] |= 1 << pin_number ;
130
+ claimed_pins [pin_port ] |= 1 << pin_number ;
142
131
}
143
132
144
- bool pin_number_is_free (uint8_t pin_port , uint8_t pin_number )
145
- {
146
- return !(claimed_pins [pin_port ] & 1 << pin_number );
133
+ bool pin_number_is_free (uint8_t pin_port , uint8_t pin_number ) {
134
+ return !(claimed_pins [pin_port ] & 1 <<pin_number );
147
135
}
148
136
149
- bool common_hal_mcu_pin_is_free (const mcu_pin_obj_t * pin )
150
- {
151
- #ifdef MICROPY_HW_NEOPIXEL
152
- if (pin == MICROPY_HW_NEOPIXEL )
153
- {
137
+ bool common_hal_mcu_pin_is_free (const mcu_pin_obj_t * pin ) {
138
+ #ifdef MICROPY_HW_NEOPIXEL
139
+ if (pin == MICROPY_HW_NEOPIXEL ) {
154
140
return !neopixel_in_use ;
155
141
}
156
- #endif
157
- #ifdef MICROPY_HW_APA102_MOSI
158
- if (pin == MICROPY_HW_APA102_MOSI )
159
- {
160
- return !apa102_mosi_in_use ;
161
- }
162
- if (pin == MICROPY_HW_APA102_SCK )
163
- {
164
- return !apa102_sck_in_use ;
165
- }
166
- #endif
142
+ #endif
143
+ #ifdef MICROPY_HW_APA102_MOSI
144
+ if (pin == MICROPY_HW_APA102_MOSI )
145
+ {
146
+ return !apa102_mosi_in_use ;
147
+ }
148
+ if (pin == MICROPY_HW_APA102_SCK )
149
+ {
150
+ return !apa102_sck_in_use ;
151
+ }
152
+ #endif
167
153
168
154
return pin_number_is_free (pin -> port , pin -> number );
169
155
}
170
156
171
- GPIO_TypeDef * pin_port (uint8_t pin_port )
172
- {
157
+ GPIO_TypeDef * pin_port (uint8_t pin_port ) {
173
158
return ports [pin_port ];
174
159
}
175
160
176
- uint16_t pin_mask (uint8_t pin_number )
177
- {
178
- return 1 << pin_number ;
161
+ uint16_t pin_mask (uint8_t pin_number ) {
162
+ return 1 <<pin_number ;
179
163
}
180
164
181
- uint8_t common_hal_mcu_pin_number (const mcu_pin_obj_t * pin )
182
- {
165
+ uint8_t common_hal_mcu_pin_number (const mcu_pin_obj_t * pin ) {
183
166
return pin -> port * 16 + pin -> number ;
184
167
}
185
168
186
- void common_hal_mcu_pin_claim (const mcu_pin_obj_t * pin )
187
- {
169
+ void common_hal_mcu_pin_claim (const mcu_pin_obj_t * pin ) {
188
170
claim_pin (pin -> port , pin -> number );
189
- #ifdef MICROPY_HW_NEOPIXEL
190
- if (pin == MICROPY_HW_NEOPIXEL )
191
- {
171
+ #ifdef MICROPY_HW_NEOPIXEL
172
+ if (pin == MICROPY_HW_NEOPIXEL ) {
192
173
neopixel_in_use = true;
193
174
}
194
- #endif
195
- #ifdef MICROPY_HW_APA102_MOSI
196
- if (pin == MICROPY_HW_APA102_MOSI )
197
- {
198
- apa102_mosi_in_use = true;
199
- }
200
- if (pin == MICROPY_HW_APA102_SCK )
201
- {
202
- apa102_sck_in_use = true;
203
- }
204
- #endif
175
+ #endif
176
+ #ifdef MICROPY_HW_APA102_MOSI
177
+ if (pin == MICROPY_HW_APA102_MOSI )
178
+ {
179
+ apa102_mosi_in_use = true;
180
+ }
181
+ if (pin == MICROPY_HW_APA102_SCK )
182
+ {
183
+ apa102_sck_in_use = true;
184
+ }
185
+ #endif
205
186
}
206
187
207
- void common_hal_mcu_pin_reset_number (uint8_t pin_no )
208
- {
188
+ void common_hal_mcu_pin_reset_number (uint8_t pin_no ) {
209
189
reset_pin_number (pin_no / 16 , pin_no % 16 );
210
- }
190
+ }
0 commit comments