109 #ifndef ti_drivers_GPIOMSP432E4__include 110 #define ti_drivers_GPIOMSP432E4__include 114 #include <ti/devices/msp432e4/inc/msp432.h> 116 #include <ti/devices/msp432e4/driverlib/gpio.h> 166 #define GPIOMSP432E4_PORTA 0x00 167 #define GPIOMSP432E4_PORTB 0x01 168 #define GPIOMSP432E4_PORTC 0x02 169 #define GPIOMSP432E4_PORTD 0x03 170 #define GPIOMSP432E4_PORTE 0x04 171 #define GPIOMSP432E4_PORTF 0x05 172 #define GPIOMSP432E4_PORTG 0x06 173 #define GPIOMSP432E4_PORTH 0x07 174 #define GPIOMSP432E4_PORTJ 0x08 175 #define GPIOMSP432E4_PORTK 0x09 176 #define GPIOMSP432E4_PORTL 0x0A 177 #define GPIOMSP432E4_PORTM 0x0B 178 #define GPIOMSP432E4_PORTN 0x0C 179 #define GPIOMSP432E4_PORTP 0x10 180 #define GPIOMSP432E4_PORTQ 0x11 181 #define GPIOMSP432E4_PORTR 0x0D 182 #define GPIOMSP432E4_PORTS 0x0E 183 #define GPIOMSP432E4_PORTT 0x0F 192 #define GPIOMSP432E4_EMPTY_PIN 0x0000 194 #define GPIOMSP432E4_PA0 ((GPIOMSP432E4_PORTA << 8) | GPIO_PIN_0) 195 #define GPIOMSP432E4_PA1 ((GPIOMSP432E4_PORTA << 8) | GPIO_PIN_1) 196 #define GPIOMSP432E4_PA2 ((GPIOMSP432E4_PORTA << 8) | GPIO_PIN_2) 197 #define GPIOMSP432E4_PA3 ((GPIOMSP432E4_PORTA << 8) | GPIO_PIN_3) 198 #define GPIOMSP432E4_PA4 ((GPIOMSP432E4_PORTA << 8) | GPIO_PIN_4) 199 #define GPIOMSP432E4_PA5 ((GPIOMSP432E4_PORTA << 8) | GPIO_PIN_5) 200 #define GPIOMSP432E4_PA6 ((GPIOMSP432E4_PORTA << 8) | GPIO_PIN_6) 201 #define GPIOMSP432E4_PA7 ((GPIOMSP432E4_PORTA << 8) | GPIO_PIN_7) 203 #define GPIOMSP432E4_PB0 ((GPIOMSP432E4_PORTB << 8) | GPIO_PIN_0) 204 #define GPIOMSP432E4_PB1 ((GPIOMSP432E4_PORTB << 8) | GPIO_PIN_1) 205 #define GPIOMSP432E4_PB2 ((GPIOMSP432E4_PORTB << 8) | GPIO_PIN_2) 206 #define GPIOMSP432E4_PB3 ((GPIOMSP432E4_PORTB << 8) | GPIO_PIN_3) 207 #define GPIOMSP432E4_PB4 ((GPIOMSP432E4_PORTB << 8) | GPIO_PIN_4) 208 #define GPIOMSP432E4_PB5 ((GPIOMSP432E4_PORTB << 8) | GPIO_PIN_5) 209 #define GPIOMSP432E4_PB6 ((GPIOMSP432E4_PORTB << 8) | GPIO_PIN_6) 210 #define GPIOMSP432E4_PB7 ((GPIOMSP432E4_PORTB << 8) | GPIO_PIN_7) 212 #define GPIOMSP432E4_PC0 ((GPIOMSP432E4_PORTC << 8) | GPIO_PIN_0) 213 #define GPIOMSP432E4_PC1 ((GPIOMSP432E4_PORTC << 8) | GPIO_PIN_1) 214 #define GPIOMSP432E4_PC2 ((GPIOMSP432E4_PORTC << 8) | GPIO_PIN_2) 215 #define GPIOMSP432E4_PC3 ((GPIOMSP432E4_PORTC << 8) | GPIO_PIN_3) 216 #define GPIOMSP432E4_PC4 ((GPIOMSP432E4_PORTC << 8) | GPIO_PIN_4) 217 #define GPIOMSP432E4_PC5 ((GPIOMSP432E4_PORTC << 8) | GPIO_PIN_5) 218 #define GPIOMSP432E4_PC6 ((GPIOMSP432E4_PORTC << 8) | GPIO_PIN_6) 219 #define GPIOMSP432E4_PC7 ((GPIOMSP432E4_PORTC << 8) | GPIO_PIN_7) 221 #define GPIOMSP432E4_PD0 ((GPIOMSP432E4_PORTD << 8) | GPIO_PIN_0) 222 #define GPIOMSP432E4_PD1 ((GPIOMSP432E4_PORTD << 8) | GPIO_PIN_1) 223 #define GPIOMSP432E4_PD2 ((GPIOMSP432E4_PORTD << 8) | GPIO_PIN_2) 224 #define GPIOMSP432E4_PD3 ((GPIOMSP432E4_PORTD << 8) | GPIO_PIN_3) 225 #define GPIOMSP432E4_PD4 ((GPIOMSP432E4_PORTD << 8) | GPIO_PIN_4) 226 #define GPIOMSP432E4_PD5 ((GPIOMSP432E4_PORTD << 8) | GPIO_PIN_5) 227 #define GPIOMSP432E4_PD6 ((GPIOMSP432E4_PORTD << 8) | GPIO_PIN_6) 228 #define GPIOMSP432E4_PD7 ((GPIOMSP432E4_PORTD << 8) | GPIO_PIN_7) 230 #define GPIOMSP432E4_PE0 ((GPIOMSP432E4_PORTE << 8) | GPIO_PIN_0) 231 #define GPIOMSP432E4_PE1 ((GPIOMSP432E4_PORTE << 8) | GPIO_PIN_1) 232 #define GPIOMSP432E4_PE2 ((GPIOMSP432E4_PORTE << 8) | GPIO_PIN_2) 233 #define GPIOMSP432E4_PE3 ((GPIOMSP432E4_PORTE << 8) | GPIO_PIN_3) 234 #define GPIOMSP432E4_PE4 ((GPIOMSP432E4_PORTE << 8) | GPIO_PIN_4) 235 #define GPIOMSP432E4_PE5 ((GPIOMSP432E4_PORTE << 8) | GPIO_PIN_5) 236 #define GPIOMSP432E4_PE6 ((GPIOMSP432E4_PORTE << 8) | GPIO_PIN_6) 237 #define GPIOMSP432E4_PE7 ((GPIOMSP432E4_PORTE << 8) | GPIO_PIN_7) 239 #define GPIOMSP432E4_PF0 ((GPIOMSP432E4_PORTF << 8) | GPIO_PIN_0) 240 #define GPIOMSP432E4_PF1 ((GPIOMSP432E4_PORTF << 8) | GPIO_PIN_1) 241 #define GPIOMSP432E4_PF2 ((GPIOMSP432E4_PORTF << 8) | GPIO_PIN_2) 242 #define GPIOMSP432E4_PF3 ((GPIOMSP432E4_PORTF << 8) | GPIO_PIN_3) 243 #define GPIOMSP432E4_PF4 ((GPIOMSP432E4_PORTF << 8) | GPIO_PIN_4) 244 #define GPIOMSP432E4_PF5 ((GPIOMSP432E4_PORTF << 8) | GPIO_PIN_5) 245 #define GPIOMSP432E4_PF6 ((GPIOMSP432E4_PORTF << 8) | GPIO_PIN_6) 246 #define GPIOMSP432E4_PF7 ((GPIOMSP432E4_PORTF << 8) | GPIO_PIN_7) 248 #define GPIOMSP432E4_PG0 ((GPIOMSP432E4_PORTG << 8) | GPIO_PIN_0) 249 #define GPIOMSP432E4_PG1 ((GPIOMSP432E4_PORTG << 8) | GPIO_PIN_1) 250 #define GPIOMSP432E4_PG2 ((GPIOMSP432E4_PORTG << 8) | GPIO_PIN_2) 251 #define GPIOMSP432E4_PG3 ((GPIOMSP432E4_PORTG << 8) | GPIO_PIN_3) 252 #define GPIOMSP432E4_PG4 ((GPIOMSP432E4_PORTG << 8) | GPIO_PIN_4) 253 #define GPIOMSP432E4_PG5 ((GPIOMSP432E4_PORTG << 8) | GPIO_PIN_5) 254 #define GPIOMSP432E4_PG6 ((GPIOMSP432E4_PORTG << 8) | GPIO_PIN_6) 255 #define GPIOMSP432E4_PG7 ((GPIOMSP432E4_PORTG << 8) | GPIO_PIN_7) 257 #define GPIOMSP432E4_PH0 ((GPIOMSP432E4_PORTH << 8) | GPIO_PIN_0) 258 #define GPIOMSP432E4_PH1 ((GPIOMSP432E4_PORTH << 8) | GPIO_PIN_1) 259 #define GPIOMSP432E4_PH2 ((GPIOMSP432E4_PORTH << 8) | GPIO_PIN_2) 260 #define GPIOMSP432E4_PH3 ((GPIOMSP432E4_PORTH << 8) | GPIO_PIN_3) 261 #define GPIOMSP432E4_PH4 ((GPIOMSP432E4_PORTH << 8) | GPIO_PIN_4) 262 #define GPIOMSP432E4_PH5 ((GPIOMSP432E4_PORTH << 8) | GPIO_PIN_5) 263 #define GPIOMSP432E4_PH6 ((GPIOMSP432E4_PORTH << 8) | GPIO_PIN_6) 264 #define GPIOMSP432E4_PH7 ((GPIOMSP432E4_PORTH << 8) | GPIO_PIN_7) 266 #define GPIOMSP432E4_PJ0 ((GPIOMSP432E4_PORTJ << 8) | GPIO_PIN_0) 267 #define GPIOMSP432E4_PJ1 ((GPIOMSP432E4_PORTJ << 8) | GPIO_PIN_1) 268 #define GPIOMSP432E4_PJ2 ((GPIOMSP432E4_PORTJ << 8) | GPIO_PIN_2) 269 #define GPIOMSP432E4_PJ3 ((GPIOMSP432E4_PORTJ << 8) | GPIO_PIN_3) 270 #define GPIOMSP432E4_PJ4 ((GPIOMSP432E4_PORTJ << 8) | GPIO_PIN_4) 271 #define GPIOMSP432E4_PJ5 ((GPIOMSP432E4_PORTJ << 8) | GPIO_PIN_5) 272 #define GPIOMSP432E4_PJ6 ((GPIOMSP432E4_PORTJ << 8) | GPIO_PIN_6) 273 #define GPIOMSP432E4_PJ7 ((GPIOMSP432E4_PORTJ << 8) | GPIO_PIN_7) 275 #define GPIOMSP432E4_PK0 ((GPIOMSP432E4_PORTK << 8) | GPIO_PIN_0) 276 #define GPIOMSP432E4_PK1 ((GPIOMSP432E4_PORTK << 8) | GPIO_PIN_1) 277 #define GPIOMSP432E4_PK2 ((GPIOMSP432E4_PORTK << 8) | GPIO_PIN_2) 278 #define GPIOMSP432E4_PK3 ((GPIOMSP432E4_PORTK << 8) | GPIO_PIN_3) 279 #define GPIOMSP432E4_PK4 ((GPIOMSP432E4_PORTK << 8) | GPIO_PIN_4) 280 #define GPIOMSP432E4_PK5 ((GPIOMSP432E4_PORTK << 8) | GPIO_PIN_5) 281 #define GPIOMSP432E4_PK6 ((GPIOMSP432E4_PORTK << 8) | GPIO_PIN_6) 282 #define GPIOMSP432E4_PK7 ((GPIOMSP432E4_PORTK << 8) | GPIO_PIN_7) 284 #define GPIOMSP432E4_PL0 ((GPIOMSP432E4_PORTL << 8) | GPIO_PIN_0) 285 #define GPIOMSP432E4_PL1 ((GPIOMSP432E4_PORTL << 8) | GPIO_PIN_1) 286 #define GPIOMSP432E4_PL2 ((GPIOMSP432E4_PORTL << 8) | GPIO_PIN_2) 287 #define GPIOMSP432E4_PL3 ((GPIOMSP432E4_PORTL << 8) | GPIO_PIN_3) 288 #define GPIOMSP432E4_PL4 ((GPIOMSP432E4_PORTL << 8) | GPIO_PIN_4) 289 #define GPIOMSP432E4_PL5 ((GPIOMSP432E4_PORTL << 8) | GPIO_PIN_5) 290 #define GPIOMSP432E4_PL6 ((GPIOMSP432E4_PORTL << 8) | GPIO_PIN_6) 291 #define GPIOMSP432E4_PL7 ((GPIOMSP432E4_PORTL << 8) | GPIO_PIN_7) 293 #define GPIOMSP432E4_PM0 ((GPIOMSP432E4_PORTM << 8) | GPIO_PIN_0) 294 #define GPIOMSP432E4_PM1 ((GPIOMSP432E4_PORTM << 8) | GPIO_PIN_1) 295 #define GPIOMSP432E4_PM2 ((GPIOMSP432E4_PORTM << 8) | GPIO_PIN_2) 296 #define GPIOMSP432E4_PM3 ((GPIOMSP432E4_PORTM << 8) | GPIO_PIN_3) 297 #define GPIOMSP432E4_PM4 ((GPIOMSP432E4_PORTM << 8) | GPIO_PIN_4) 298 #define GPIOMSP432E4_PM5 ((GPIOMSP432E4_PORTM << 8) | GPIO_PIN_5) 299 #define GPIOMSP432E4_PM6 ((GPIOMSP432E4_PORTM << 8) | GPIO_PIN_6) 300 #define GPIOMSP432E4_PM7 ((GPIOMSP432E4_PORTM << 8) | GPIO_PIN_7) 302 #define GPIOMSP432E4_PN0 ((GPIOMSP432E4_PORTN << 8) | GPIO_PIN_0) 303 #define GPIOMSP432E4_PN1 ((GPIOMSP432E4_PORTN << 8) | GPIO_PIN_1) 304 #define GPIOMSP432E4_PN2 ((GPIOMSP432E4_PORTN << 8) | GPIO_PIN_2) 305 #define GPIOMSP432E4_PN3 ((GPIOMSP432E4_PORTN << 8) | GPIO_PIN_3) 306 #define GPIOMSP432E4_PN4 ((GPIOMSP432E4_PORTN << 8) | GPIO_PIN_4) 307 #define GPIOMSP432E4_PN5 ((GPIOMSP432E4_PORTN << 8) | GPIO_PIN_5) 308 #define GPIOMSP432E4_PN6 ((GPIOMSP432E4_PORTN << 8) | GPIO_PIN_6) 309 #define GPIOMSP432E4_PN7 ((GPIOMSP432E4_PORTN << 8) | GPIO_PIN_7) 311 #define GPIOMSP432E4_PP0 ((GPIOMSP432E4_PORTP << 8) | GPIO_PIN_0) 312 #define GPIOMSP432E4_PP1 ((GPIOMSP432E4_PORTP << 8) | GPIO_PIN_1) 313 #define GPIOMSP432E4_PP2 ((GPIOMSP432E4_PORTP << 8) | GPIO_PIN_2) 314 #define GPIOMSP432E4_PP3 ((GPIOMSP432E4_PORTP << 8) | GPIO_PIN_3) 315 #define GPIOMSP432E4_PP4 ((GPIOMSP432E4_PORTP << 8) | GPIO_PIN_4) 316 #define GPIOMSP432E4_PP5 ((GPIOMSP432E4_PORTP << 8) | GPIO_PIN_5) 317 #define GPIOMSP432E4_PP6 ((GPIOMSP432E4_PORTP << 8) | GPIO_PIN_6) 318 #define GPIOMSP432E4_PP7 ((GPIOMSP432E4_PORTP << 8) | GPIO_PIN_7) 320 #define GPIOMSP432E4_PQ0 ((GPIOMSP432E4_PORTQ << 8) | GPIO_PIN_0) 321 #define GPIOMSP432E4_PQ1 ((GPIOMSP432E4_PORTQ << 8) | GPIO_PIN_1) 322 #define GPIOMSP432E4_PQ2 ((GPIOMSP432E4_PORTQ << 8) | GPIO_PIN_2) 323 #define GPIOMSP432E4_PQ3 ((GPIOMSP432E4_PORTQ << 8) | GPIO_PIN_3) 324 #define GPIOMSP432E4_PQ4 ((GPIOMSP432E4_PORTQ << 8) | GPIO_PIN_4) 325 #define GPIOMSP432E4_PQ5 ((GPIOMSP432E4_PORTQ << 8) | GPIO_PIN_5) 326 #define GPIOMSP432E4_PQ6 ((GPIOMSP432E4_PORTQ << 8) | GPIO_PIN_6) 327 #define GPIOMSP432E4_PQ7 ((GPIOMSP432E4_PORTQ << 8) | GPIO_PIN_7) 329 #define GPIOMSP432E4_PR0 ((GPIOMSP432E4_PORTR << 8) | GPIO_PIN_0) 330 #define GPIOMSP432E4_PR1 ((GPIOMSP432E4_PORTR << 8) | GPIO_PIN_1) 331 #define GPIOMSP432E4_PR2 ((GPIOMSP432E4_PORTR << 8) | GPIO_PIN_2) 332 #define GPIOMSP432E4_PR3 ((GPIOMSP432E4_PORTR << 8) | GPIO_PIN_3) 333 #define GPIOMSP432E4_PR4 ((GPIOMSP432E4_PORTR << 8) | GPIO_PIN_4) 334 #define GPIOMSP432E4_PR5 ((GPIOMSP432E4_PORTR << 8) | GPIO_PIN_5) 335 #define GPIOMSP432E4_PR6 ((GPIOMSP432E4_PORTR << 8) | GPIO_PIN_6) 336 #define GPIOMSP432E4_PR7 ((GPIOMSP432E4_PORTR << 8) | GPIO_PIN_7) 338 #define GPIOMSP432E4_PS0 ((GPIOMSP432E4_PORTS << 8) | GPIO_PIN_0) 339 #define GPIOMSP432E4_PS1 ((GPIOMSP432E4_PORTS << 8) | GPIO_PIN_1) 340 #define GPIOMSP432E4_PS2 ((GPIOMSP432E4_PORTS << 8) | GPIO_PIN_2) 341 #define GPIOMSP432E4_PS3 ((GPIOMSP432E4_PORTS << 8) | GPIO_PIN_3) 342 #define GPIOMSP432E4_PS4 ((GPIOMSP432E4_PORTS << 8) | GPIO_PIN_4) 343 #define GPIOMSP432E4_PS5 ((GPIOMSP432E4_PORTS << 8) | GPIO_PIN_5) 344 #define GPIOMSP432E4_PS6 ((GPIOMSP432E4_PORTS << 8) | GPIO_PIN_6) 345 #define GPIOMSP432E4_PS7 ((GPIOMSP432E4_PORTS << 8) | GPIO_PIN_7) 347 #define GPIOMSP432E4_PT0 ((GPIOMSP432E4_PORTT << 8) | GPIO_PIN_0) 348 #define GPIOMSP432E4_PT1 ((GPIOMSP432E4_PORTT << 8) | GPIO_PIN_1) 349 #define GPIOMSP432E4_PT2 ((GPIOMSP432E4_PORTT << 8) | GPIO_PIN_2) 350 #define GPIOMSP432E4_PT3 ((GPIOMSP432E4_PORTT << 8) | GPIO_PIN_3) 357 #define GPIOMSP432E4_pinConfigMask(port, pin, mapping) \ 358 (((port) << 27) | ((pin) << 24) | ((mapping) & 0x00FFFFFF)) 363 #define GPIOMSP432E4_getPortFromPinConfig(config) (((config) >> 27) & 0x1F) 364 #define GPIOMSP432E4_getPinFromPinConfig(config) (1 << (((config) >> 24) & 0x7)) 365 #define GPIOMSP432E4_getPinMapFromPinConfig(config) ((config) & 0xFFFFFF) uint32_t GPIOMSP432E4_getGpioBaseAddr(uint8_t port)
Get the base address for a given port Id.
uint32_t intPriority
Definition: GPIOMSP432E4.h:154
uint32_t numberOfCallbacks
Definition: GPIOMSP432E4.h:138
uint_fast16_t GPIOMSP432E4_getPowerResourceId(uint8_t port)
Get the Power resource Id for a given port Id.
uint32_t numberOfPinConfigs
Definition: GPIOMSP432E4.h:135
GPIO device specific driver configuration structure.
Definition: GPIOMSP432E4.h:127
GPIO_CallbackFxn * callbacks
Definition: GPIOMSP432E4.h:132
uint32_t GPIO_PinConfig
GPIO pin configuration settings.
Definition: GPIO.h:327
void GPIOMSP432E4_undoPinConfig(uint32_t pinConfig)
Undo pin configuration.
GPIO_PinConfig * pinConfigs
Definition: GPIOMSP432E4.h:129
General Purpose I/O driver interface.
void(* GPIO_CallbackFxn)(uint_least8_t index)
GPIO callback function type.
Definition: GPIO.h:415