List of tables
Table 1: Acronyms and definitions ............................................................................................................ 26
Table 2: HAL driver files............................................................................................................................ 28
Table 3: User-application files .................................................................................................................. 30
Table 4: API classification ......................................................................................................................... 34
Table 5: List of devices supported by the HAL drivers ............................................................................. 34
Table 6: HAL API naming rules ................................................................................................................ 36
Table 7: Macros handling interrupts and specific clock configurations .................................................... 37
Table 8: Callback functions ....................................................................................................................... 38
Table 9: HAL generic APIs ....................................................................................................................... 39
Table 10: HAL extension APIs .................................................................................................................. 40
Table 11: Define statements used for HAL configuration ......................................................................... 44
Table 12: Description of GPIO_InitTypeDef structure .............................................................................. 47
Table 13: Description of EXTI configuration macros ................................................................................ 49
Table 14: MSP functions ........................................................................................................................... 53
Table 15: Timeout values ......................................................................................................................... 57
Table 16: LL driver files............................................................................................................................. 61
Table 17: Common peripheral initialization functions ............................................................................... 64
Table 18: Optional peripheral initialization functions ................................................................................ 65
Table 19: Specific Interrupt, DMA request and status flags management ............................................... 67
Table 20: Available function formats ......................................................................................................... 67
Table 21: Peripheral clock activation/deactivation management ............................................................. 67
Table 22: Peripheral activation/deactivation management ....................................................................... 68
Table 23: Peripheral configuration management ...................................................................................... 68
Table 24: Peripheral register management .............................................................................................. 68
Table 25: Correspondence between ADC registers and ADC low-layer driver functions .................... 1302
Table 26: Correspondence between BUS registers and BUS low-layer driver functions ..................... 1308
Table 27: Correspondence between CORTEX registers and CORTEX low-layer driver functions ..... 1319
Table 28: Correspondence between CRC registers and CRC low-layer driver functions .................... 1320
Table 29: Correspondence between DAC registers and DAC low-layer driver functions .................... 1321
Table 30: Correspondence between DMA registers and DMA low-layer driver functions ................... 1323
Table 31: Correspondence between EXTI registers and EXTI low-layer driver functions ................... 1327
Table 32: Correspondence between GPIO registers and GPIO low-layer driver functions ................. 1328
Table 33: Correspondence between I2C registers and I2C low-layer driver functions ........................ 1328
Table 34: Correspondence between I2S registers and I2S low-layer driver functions ......................... 1332
Table 35: Correspondence between IWDG registers and IWDG low-layer driver functions ................ 1333
Table 36: Correspondence between PWR registers and PWR low-layer driver functions ................... 1334
Table 37: Correspondence between RCC registers and RCC low-layer driver functions .................... 1335
Table 38: Correspondence between RNG registers and RNG low-layer driver functions ................... 1338
Table 39: Correspondence between RTC registers and RTC low-layer driver functions ..................... 1339
Table 40: Correspondence between SPI registers and SPI low-layer driver functions ........................ 1346
Table 41: Correspondence between SYSTEM registers and SYSTEM low-layer driver functions ...... 1348
Table 42: Correspondence between TIM registers and TIM low-layer driver functions ....................... 1351
Table 43: Correspondence between USART registers and USART low-layer driver functions ........... 1360
Table 44: Correspondence between WWDG registers and WWDG low-layer driver functions ........... 1365
Table 45: Document revision history .................................................................................................... 1370