在好例子网,分享、交流、成长!
您当前所在位置:首页C/C++ 开发实例嵌入式开发 → STM32F1_HAL库使用手册.pdf

STM32F1_HAL库使用手册.pdf

嵌入式开发

下载此实例
  • 开发语言:C/C++
  • 实例大小:3.89M
  • 下载次数:21
  • 浏览次数:607
  • 发布时间:2021-06-11
  • 实例类别:嵌入式开发
  • 发 布 人:苏来福
  • 文件格式:.pdf
  • 所需积分:1
 相关标签: STM32CubeMX STM32CUBE STM32 STM3 stm

实例介绍

【实例简介】STM32CubeMX文档\hal库

【实例截图】

from clipboard

【核心代码】

Contents
1 Acronyms and definitions.............................................................36
2 Overview of HAL drivers...............................................................38
2.1 HAL and user-application files.........................................................38
2.1.1 HAL driver files ................................................................................. 38
2.1.2 User-application files ........................................................................ 39
2.2 HAL data structures ........................................................................41
2.2.1 Peripheral handle structures ............................................................ 41
2.2.2 Initialization and configuration structure ........................................... 42
2.2.3 Specific process structures .............................................................. 43
2.3 API classification.............................................................................43
2.4 Devices supported by HAL drivers ..................................................44
2.5 HAL drivers rules.............................................................................51
2.5.1 HAL API naming rules ...................................................................... 51
2.5.2 HAL general naming rules................................................................ 52
2.5.3 HAL interrupt handler and callback functions................................... 53
2.6 HAL generic APIs............................................................................54
2.7 HAL extension APIs ........................................................................55
2.7.1 HAL extension model overview ........................................................ 55
2.7.2 HAL extension model cases............................................................. 55
2.8 File inclusion model.........................................................................57
2.9 HAL common resources..................................................................58
2.10 HAL configuration............................................................................59
2.11 HAL system peripheral handling .....................................................60
2.11.1 Clock................................................................................................. 60
2.11.2 GPIOs............................................................................................... 60
2.11.3 Cortex NVIC and SysTick timer........................................................ 62
2.11.4 PWR ................................................................................................. 62
2.11.5 EXTI.................................................................................................. 62
2.11.6 DMA.................................................................................................. 64
2.12 How to use HAL drivers ..................................................................66
2.12.1 HAL usage models ........................................................................... 66
2.12.2 HAL initialization ............................................................................... 67
2.12.3 HAL IO operation process ................................................................ 69
2.12.4 Timeout and error management....................................................... 72
UM1850 Contents
DOCID027328 Rev 1 3/655
3 HAL System Driver........................................................................76
3.1 HAL Firmware driver API description ..............................................76
3.1.1 How to use this driver....................................................................... 76
3.1.2 Initialization and de-initialization functions ....................................... 76
3.1.3 HAL Control functions....................................................................... 76
3.1.4 HAL_Init............................................................................................ 77
3.1.5 HAL_DeInit ....................................................................................... 77
3.1.6 HAL_MspInit ..................................................................................... 77
3.1.7 HAL_MspDeInit ................................................................................ 78
3.1.8 HAL_InitTick ..................................................................................... 78
3.1.9 HAL_IncTick ..................................................................................... 78
3.1.10 HAL_GetTick .................................................................................... 78
3.1.11 HAL_Delay ....................................................................................... 78
3.1.12 HAL_SuspendTick............................................................................ 78
3.1.13 HAL_ResumeTick............................................................................. 79
3.1.14 HAL_GetHalVersion ......................................................................... 79
3.1.15 HAL_GetREVID................................................................................ 79
3.1.16 HAL_GetDEVID................................................................................ 79
3.1.17 HAL_DBGMCU_EnableDBGSleepMode ......................................... 79
3.1.18 HAL_DBGMCU_DisableDBGSleepMode ........................................ 79
3.1.19 HAL_DBGMCU_EnableDBGStopMode ........................................... 80
3.1.20 HAL_DBGMCU_DisableDBGStopMode .......................................... 80
3.1.21 HAL_DBGMCU_EnableDBGStandbyMode ..................................... 80
3.1.22 HAL_DBGMCU_DisableDBGStandbyMode .................................... 80
3.2 HAL Firmware driver defines...........................................................81
3.2.1 HAL................................................................................................... 81
4 HAL ADC Generic Driver...............................................................82
4.1 ADC Firmware driver registers structures .......................................82
4.1.1 ADC_InitTypeDef.............................................................................. 82
4.1.2 ADC_ChannelConfTypeDef ............................................................. 83
4.1.3 ADC_AnalogWDGConfTypeDef....................................................... 84
4.1.4 ADC_HandleTypeDef....................................................................... 84
4.2 ADC Firmware driver API description..............................................85
4.2.1 ADC peripheral features ................................................................... 85
4.2.2 How to use this driver....................................................................... 85
4.2.3 Initialization and de-initialization functions ....................................... 88
4.2.4 IO operation functions ...................................................................... 88
Contents UM1850
4/655 DOCID027328 Rev 1
4.2.5 Peripheral Control functions ............................................................. 89
4.2.6 Peripheral State and Errors functions .............................................. 89
4.2.7 HAL_ADC_Init .................................................................................. 89
4.2.8 HAL_ADC_DeInit.............................................................................. 89
4.2.9 HAL_ADC_MspInit ........................................................................... 90
4.2.10 HAL_ADC_MspDeInit....................................................................... 90
4.2.11 HAL_ADC_Start ............................................................................... 90
4.2.12 HAL_ADC_Stop................................................................................ 90
4.2.13 HAL_ADC_PollForConversion ......................................................... 91
4.2.14 HAL_ADC_PollForEvent .................................................................. 91
4.2.15 HAL_ADC_Start_IT .......................................................................... 91
4.2.16 HAL_ADC_Stop_IT .......................................................................... 91
4.2.17 HAL_ADC_Start_DMA ..................................................................... 91
4.2.18 HAL_ADC_Stop_DMA...................................................................... 92
4.2.19 HAL_ADC_GetValue........................................................................ 92
4.2.20 HAL_ADC_IRQHandler.................................................................... 92
4.2.21 HAL_ADC_ConvCpltCallback .......................................................... 92
4.2.22 HAL_ADC_ConvHalfCpltCallback.................................................... 93
4.2.23 HAL_ADC_LevelOutOfWindowCallback .......................................... 93
4.2.24 HAL_ADC_ErrorCallback ................................................................. 93
4.2.25 HAL_ADC_ConfigChannel ............................................................... 93
4.2.26 HAL_ADC_AnalogWDGConfig ........................................................ 94
4.2.27 HAL_ADC_GetState......................................................................... 94
4.2.28 HAL_ADC_GetError ......................................................................... 94
4.3 ADC Firmware driver defines ..........................................................94
4.3.1 ADC .................................................................................................. 94
5 HAL ADC Extension Driver......................................................... 106
5.1 ADCEx Firmware driver registers structures .................................106
5.1.1 ADC_InjectionConfTypeDef ........................................................... 106
5.1.2 ADC_MultiModeTypeDef................................................................ 107
5.2 ADCEx Firmware driver API description .......................................108
5.2.1 IO operation functions .................................................................... 108
5.2.2 Peripheral Control functions ........................................................... 109
5.2.3 HAL_ADCEx_Calibration_Start...................................................... 109
5.2.4 HAL_ADCEx_InjectedStart ............................................................ 109
5.2.5 HAL_ADCEx_InjectedStop............................................................. 109
5.2.6 HAL_ADCEx_InjectedPollForConversion ...................................... 109
5.2.7 HAL_ADCEx_InjectedStart_IT ....................................................... 110
UM1850 Contents
DOCID027328 Rev 1 5/655
5.2.8 HAL_ADCEx_InjectedStop_IT ....................................................... 110
5.2.9 HAL_ADCEx_MultiModeStart_DMA .............................................. 110
5.2.10 HAL_ADCEx_MultiModeStop_DMA............................................... 110
5.2.11 HAL_ADCEx_InjectedGetValue ..................................................... 111
5.2.12 HAL_ADCEx_MultiModeGetValue ................................................. 111
5.2.13 HAL_ADCEx_InjectedConvCpltCallback ....................................... 111
5.2.14 HAL_ADCEx_InjectedConfigChannel ............................................ 111
5.2.15 HAL_ADCEx_MultiModeConfigChannel ........................................ 112
5.3 ADCEx Firmware driver defines....................................................112
5.3.1 ADCEx............................................................................................ 112
6 HAL CAN Generic Driver............................................................. 118
6.1 CAN Firmware driver registers structures .....................................118
6.1.1 CAN_InitTypeDef............................................................................ 118
6.1.2 CanTxMsgTypeDef......................................................................... 118
6.1.3 CanRxMsgTypeDef ........................................................................ 119
6.1.4 CAN_HandleTypeDef..................................................................... 120
6.2 CAN Firmware driver API description............................................120
6.2.1 How to use this driver..................................................................... 120
6.2.2 Initialization and de-initialization functions ..................................... 121
6.2.3 IO operation functions .................................................................... 122
6.2.4 Peripheral State and Error functions .............................................. 122
6.2.5 HAL_CAN_Init ................................................................................ 122
6.2.6 HAL_CAN_ConfigFilter................................................................... 122
6.2.7 HAL_CAN_DeInit............................................................................ 123
6.2.8 HAL_CAN_MspInit ......................................................................... 123
6.2.9 HAL_CAN_MspDeInit..................................................................... 123
6.2.10 HAL_CAN_Transmit....................................................................... 123
6.2.11 HAL_CAN_Transmit_IT.................................................................. 123
6.2.12 HAL_CAN_Receive........................................................................ 124
6.2.13 HAL_CAN_Receive_IT................................................................... 124
6.2.14 HAL_CAN_Sleep............................................................................ 124
6.2.15 HAL_CAN_WakeUp ....................................................................... 124
6.2.16 HAL_CAN_IRQHandler.................................................................. 125
6.2.17 HAL_CAN_TxCpltCallback............................................................. 125
6.2.18 HAL_CAN_RxCpltCallback ............................................................ 125
6.2.19 HAL_CAN_ErrorCallback ............................................................... 125
6.2.20 HAL_CAN_GetState....................................................................... 126
6.2.21 HAL_CAN_GetError ....................................................................... 126
Contents UM1850
6/655 DOCID027328 Rev 1
6.3 CAN Firmware driver defines ........................................................126
6.3.1 CAN ................................................................................................ 126
7 HAL CAN Extension Driver......................................................... 136
7.1 CANEx Firmware driver registers structures .................................136
7.1.1 CAN_FilterConfTypeDef................................................................. 136
7.2 CANEx Firmware driver defines....................................................137
7.2.1 CANEx............................................................................................ 137
8 HAL CEC Generic Driver............................................................. 138
8.1 CEC Firmware driver registers structures .....................................138
8.1.1 CEC_InitTypeDef............................................................................ 138
8.1.2 CEC_HandleTypeDef..................................................................... 138
8.2 CEC Firmware driver API description............................................139
8.2.1 How to use this driver..................................................................... 139
8.2.2 Initialization and Configuration functions........................................ 139
8.2.3 IO operation functions .................................................................... 139
8.2.4 Peripheral Control functions ........................................................... 140
8.2.5 HAL_CEC_Init ................................................................................ 140
8.2.6 HAL_CEC_DeInit............................................................................ 140
8.2.7 HAL_CEC_MspInit ......................................................................... 141
8.2.8 HAL_CEC_MspDeInit..................................................................... 141
8.2.9 HAL_CEC_Transmit....................................................................... 141
8.2.10 HAL_CEC_Receive........................................................................ 141
8.2.11 HAL_CEC_Transmit_IT.................................................................. 142
8.2.12 HAL_CEC_Receive_IT................................................................... 142
8.2.13 HAL_CEC_GetReceivedFrameSize............................................... 142
8.2.14 HAL_CEC_IRQHandler.................................................................. 143
8.2.15 HAL_CEC_TxCpltCallback............................................................. 143
8.2.16 HAL_CEC_RxCpltCallback ............................................................ 143
8.2.17 HAL_CEC_ErrorCallback ............................................................... 143
8.2.18 HAL_CEC_GetState....................................................................... 143
8.2.19 HAL_CEC_GetError ....................................................................... 143
8.3 CEC Firmware driver defines ........................................................144
8.3.1 CEC ................................................................................................ 144
9 HAL CORTEX Generic Driver...................................................... 150
9.1 CORTEX Firmware driver API description ....................................150
9.1.1 Initialization and de-initialization functions ..................................... 150
9.1.2 Peripheral Control functions ........................................................... 150
UM1850 Contents
DOCID027328 Rev 1 7/655
9.1.3 HAL_NVIC_SetPriorityGrouping .................................................... 150
9.1.4 HAL_NVIC_SetPriority ................................................................... 151
9.1.5 HAL_NVIC_EnableIRQ .................................................................. 151
9.1.6 HAL_NVIC_DisableIRQ.................................................................. 151
9.1.7 HAL_NVIC_SystemReset............................................................... 152
9.1.8 HAL_SYSTICK_Config................................................................... 152
9.1.9 HAL_NVIC_GetPriorityGrouping .................................................... 152
9.1.10 HAL_NVIC_GetPriority................................................................... 152
9.1.11 HAL_NVIC_SetPendingIRQ........................................................... 153
9.1.12 HAL_NVIC_GetPendingIRQ .......................................................... 153
9.1.13 HAL_NVIC_ClearPendingIRQ........................................................ 153
9.1.14 HAL_NVIC_GetActive .................................................................... 153
9.1.15 HAL_SYSTICK_CLKSourceConfig ................................................ 154
9.1.16 HAL_SYSTICK_IRQHandler .......................................................... 154
9.1.17 HAL_SYSTICK_Callback ............................................................... 154
9.2 CORTEX Firmware driver defines.................................................154
9.2.1 CORTEX......................................................................................... 154
10 HAL CRC Generic Driver............................................................. 156
10.1 CRC Firmware driver registers structures .....................................156
10.1.1 CRC_HandleTypeDef..................................................................... 156
10.2 CRC Firmware driver API description ...........................................156
10.2.1 How to use this driver..................................................................... 156
10.2.2 Initialization and de-initialization functions ..................................... 156
10.2.3 Peripheral Control functions ........................................................... 157
10.2.4 Peripheral State functions .............................................................. 157
10.2.5 HAL_CRC_Init ................................................................................ 157
10.2.6 HAL_CRC_DeInit ........................................................................... 157
10.2.7 HAL_CRC_MspInit ......................................................................... 157
10.2.8 HAL_CRC_MspDeInit..................................................................... 158
10.2.9 HAL_CRC_Accumulate.................................................................. 158
10.2.10 HAL_CRC_Calculate...................................................................... 158
10.2.11 HAL_CRC_GetState....................................................................... 158
10.3 CRC Firmware driver defines........................................................159
10.3.1 CRC................................................................................................ 159
11 HAL DAC Generic Driver............................................................. 160
11.1 DAC Firmware driver registers structures .....................................160
11.1.1 DAC_HandleTypeDef..................................................................... 160
Contents UM1850
8/655 DOCID027328 Rev 1
11.1.2 DAC_ChannelConfTypeDef ........................................................... 160
11.2 DAC Firmware driver API description............................................161
11.2.1 DAC Peripheral features................................................................. 161
11.2.2 How to use this driver..................................................................... 162
11.2.3 Initialization and de-initialization functions ..................................... 163
11.2.4 IO operation functions .................................................................... 164
11.2.5 Peripheral Control functions ........................................................... 164
11.2.6 Peripheral State and Errors functions ............................................ 164
11.2.7 HAL_DAC_Init ................................................................................ 164
11.2.8 HAL_DAC_DeInit............................................................................ 165
11.2.9 HAL_DAC_MspInit ......................................................................... 165
11.2.10 HAL_DAC_MspDeInit..................................................................... 165
11.2.11 HAL_DAC_Start ............................................................................. 165
11.2.12 HAL_DAC_Stop.............................................................................. 166
11.2.13 HAL_DAC_Start_DMA ................................................................... 166
11.2.14 HAL_DAC_Stop_DMA.................................................................... 166
11.2.15 HAL_DAC_GetValue...................................................................... 167
11.2.16 HAL_DAC_ConvCpltCallbackCh1.................................................. 167
11.2.17 HAL_DAC_ConvHalfCpltCallbackCh1 ........................................... 167
11.2.18 HAL_DAC_ErrorCallbackCh1 ........................................................ 167
11.2.19 HAL_DAC_SetValue ...................................................................... 168
11.2.20 HAL_DAC_ConfigChannel ............................................................. 168
11.2.21 HAL_DAC_SetValue ...................................................................... 168
11.2.22 HAL_DAC_GetState....................................................................... 169
11.2.23 HAL_DAC_GetError ....................................................................... 169
11.2.24 HAL_DAC_ConvCpltCallbackCh1.................................................. 169
11.2.25 HAL_DAC_ConvHalfCpltCallbackCh1 ........................................... 169
11.2.26 HAL_DAC_ErrorCallbackCh1 ........................................................ 170
11.3 DAC Firmware driver defines ........................................................170
11.3.1 DAC ................................................................................................ 170
12 HAL DAC Extension Driver......................................................... 172
12.1 DACEx Firmware driver API description .......................................172
12.1.1 How to use this driver..................................................................... 172
12.1.2 Extended features functions........................................................... 172
12.1.3 HAL_DACEx_DualGetValue .......................................................... 172
12.1.4 HAL_DACEx_TriangleWaveGenerate ........................................... 172
12.1.5 HAL_DACEx_NoiseWaveGenerate ............................................... 173
12.1.6 HAL_DACEx_DualSetValue........................................................... 174
UM1850 Contents
DOCID027328 Rev 1 9/655
12.1.7 HAL_DACEx_ConvCpltCallbackCh2 ............................................. 174
12.1.8 HAL_DACEx_ConvHalfCpltCallbackCh2....................................... 175
12.1.9 HAL_DACEx_ErrorCallbackCh2 .................................................... 175
12.2 DACEx Firmware driver defines....................................................175
12.2.1 DACEx............................................................................................ 175
13 HAL DMA Generic Driver ............................................................ 178
13.1 DMA Firmware driver registers structures.....................................178
13.1.1 DMA_InitTypeDef ........................................................................... 178
13.1.2 __DMA_HandleTypeDef................................................................. 178
13.2 DMA Firmware driver API description ...........................................179
13.2.1 How to use this driver..................................................................... 179
13.2.2 Initialization and de-initialization functions ..................................... 180
13.2.3 IO operation functions .................................................................... 180
13.2.4 State and Errors functions .............................................................. 181
13.2.5 HAL_DMA_Init................................................................................ 181
13.2.6 HAL_DMA_DeInit ........................................................................... 181
13.2.7 HAL_DMA_Start ............................................................................. 181
13.2.8 HAL_DMA_Start_IT........................................................................ 182
13.2.9 HAL_DMA_Abort ............................................................................ 182
13.2.10 HAL_DMA_PollForTransfer............................................................ 182
13.2.11 HAL_DMA_IRQHandler.................................................................. 183
13.2.12 HAL_DMA_GetState ...................................................................... 183
13.2.13 HAL_DMA_GetError....................................................................... 183
13.3 DMA Firmware driver defines........................................................183
13.3.1 DMA................................................................................................ 183
14 HAL DMA Extension Driver......................................................... 188
14.1 DMAEx Firmware driver defines....................................................188
14.1.1 DMAEx............................................................................................ 188
15 HAL ETH Generic Driver ............................................................. 190
15.1 ETH Firmware driver registers structures......................................190
15.1.1 ETH_InitTypeDef ............................................................................ 190
15.1.2 ETH_MACInitTypeDef.................................................................... 190
15.1.3 ETH_DMAInitTypeDef.................................................................... 193
15.1.4 ETH_DMADescTypeDef................................................................. 194
15.1.5 ETH_DMARxFrameInfos................................................................ 194
15.1.6 ETH_HandleTypeDef ..................................................................... 195
15.2 ETH Firmware driver API description ............................................195
Contents UM1850
10/655 DOCID027328 Rev 1
15.2.1 How to use this driver..................................................................... 195
15.2.2 Initialization and de-initialization functions ..................................... 196
15.2.3 IO operation functions .................................................................... 196
15.2.4 Peripheral Control functions ........................................................... 197
15.2.5 Peripheral State functions .............................................................. 197
15.2.6 HAL_ETH_Init................................................................................. 197
15.2.7 HAL_ETH_DeInit ............................................................................ 197
15.2.8 HAL_ETH_DMATxDescListInit....................................................... 198
15.2.9 HAL_ETH_DMARxDescListInit ...................................................... 198
15.2.10 HAL_ETH_MspInit.......................................................................... 198
15.2.11 HAL_ETH_MspDeInit ..................................................................... 198
15.2.12 HAL_ETH_TransmitFrame............................................................. 199
15.2.13 HAL_ETH_GetReceivedFrame ...................................................... 199
15.2.14 HAL_ETH_GetReceivedFrame_IT................................................. 199
15.2.15 HAL_ETH_IRQHandler .................................................................. 199
15.2.16 HAL_ETH_TxCpltCallback ............................................................. 199
15.2.17 HAL_ETH_RxCpltCallback............................................................. 200
15.2.18 HAL_ETH_ErrorCallback................................................................ 200
15.2.19 HAL_ETH_ReadPHYRegister........................................................ 200
15.2.20 HAL_ETH_WritePHYRegister ........................................................ 200
15.2.21 HAL_ETH_Start.............................................................................. 201
15.2.22 HAL_ETH_Stop .............................................................................. 201
15.2.23 HAL_ETH_ConfigMAC................................................................... 201
15.2.24 HAL_ETH_ConfigDMA................................................................... 201
15.2.25 HAL_ETH_GetState ....................................................................... 202
15.3 ETH Firmware driver defines.........................................................202
15.3.1 ETH................................................................................................. 202
16 HAL FLASH Generic Driver......................................................... 232
16.1 FLASH Firmware driver registers structures .................................232
16.1.1 FLASH_ProcessTypeDef ............................................................... 232
16.2 FLASH Firmware driver API description........................................232
16.2.1 FLASH peripheral features............................................................. 232
16.2.2 How to use this driver..................................................................... 232
16.2.3 IO operation functions .................................................................... 233
16.2.4 Peripheral Control functions ........................................................... 233
16.2.5 Peripheral State functions .............................................................. 234
16.2.6 HAL_FLASH_Program ................................................................... 234
16.2.7 HAL_FLASH_Program_IT.............................................................. 234
UM1850 Contents
DOCID027328 Rev 1 11/655
16.2.8 HAL_FLASH_IRQHandler.............................................................. 235
16.2.9 HAL_FLASH_EndOfOperationCallback ......................................... 235
16.2.10 HAL_FLASH_OperationErrorCallback ........................................... 235
16.2.11 HAL_FLASH_Unlock ...................................................................... 235
16.2.12 HAL_FLASH_Lock ......................................................................... 235
16.2.13 HAL_FLASH_OB_Unlock............................................................... 236
16.2.14 HAL_FLASH_OB_Lock .................................................................. 236
16.2.15 HAL_FLASH_OB_Launch.............................................................. 236
16.2.16 HAL_FLASH_GetError ................................................................... 236
16.3 FLASH Firmware driver defines ....................................................236
16.3.1 FLASH ............................................................................................ 236
17 HAL FLASH Extension Driver..................................................... 241
17.1 FLASHEx Firmware driver registers structures .............................241
17.1.1 FLASH_EraseInitTypeDef .............................................................. 241
17.1.2 FLASH_OBProgramInitTypeDef .................................................... 241
17.2 FLASHEx Firmware driver API description....................................242
17.2.1 IO operation functions .................................................................... 242
17.2.2 Peripheral Control functions ........................................................... 242
17.2.3 HAL_FLASHEx_Erase ................................................................... 242
17.2.4 HAL_FLASHEx_Erase_IT .............................................................. 243
17.2.5 HAL_FLASHEx_OBErase .............................................................. 243
17.2.6 HAL_FLASHEx_OBProgram.......................................................... 243
17.2.7 HAL_FLASHEx_OBGetConfig ....................................................... 244
17.3 FLASHEx Firmware driver defines ................................................244
17.3.1 FLASHEx........................................................................................ 244
18 HAL GPIO Generic Driver............................................................ 247
18.1 GPIO Firmware driver registers structures....................................247
18.1.1 GPIO_InitTypeDef .......................................................................... 247
18.2 GPIO Firmware driver API description ..........................................247
18.2.1 GPIO Peripheral features ............................................................... 247
18.2.2 How to use this driver..................................................................... 248
18.2.3 Initialization and deinitialization functions....................................... 248
18.2.4 IO operation functions .................................................................... 249
18.2.5 HAL_GPIO_Init............................................................................... 249
18.2.6 HAL_GPIO_DeInit .......................................................................... 249
18.2.7 HAL_GPIO_ReadPin...................................................................... 249
18.2.8 HAL_GPIO_WritePin...................................................................... 250
Contents UM1850
12/655 DOCID027328 Rev 1
18.2.9 HAL_GPIO_TogglePin ................................................................... 250
18.2.10 HAL_GPIO_LockPin....................................................................... 250
18.2.11 HAL_GPIO_EXTI_IRQHandler ...................................................... 251
18.2.12 HAL_GPIO_EXTI_Callback............................................................ 251
18.3 GPIO Firmware driver defines.......................................................251
18.3.1 GPIO............................................................................................... 251
19 HAL GPIO Extension Driver........................................................ 255
19.1 GPIOEx Firmware driver API description ......................................255
19.1.1 GPIO Peripheral extension features............................................... 255
19.1.2 How to use this driver..................................................................... 255
19.1.3 Extended features functions........................................................... 255
19.1.4 HAL_GPIOEx_ConfigEventout....................................................... 255
19.1.5 HAL_GPIOEx_EnableEventout...................................................... 256
19.1.6 HAL_GPIOEx_DisableEventout ..................................................... 256
19.2 GPIOEx Firmware driver defines...................................................256
19.2.1 GPIOEx .......................................................................................... 256
20 HAL HCD Generic Driver............................................................. 266
20.1 HCD Firmware driver registers structures .....................................266
20.1.1 HCD_HandleTypeDef..................................................................... 266
20.2 HCD Firmware driver API description ...........................................266
20.2.1 How to use this driver..................................................................... 266
20.2.2 Initialization and de-initialization functions ..................................... 267
20.2.3 IO operation functions .................................................................... 267
20.2.4 Peripheral Control functions ........................................................... 267
20.2.5 Peripheral State functions .............................................................. 267
20.2.6 HAL_HCD_Init ................................................................................ 267
20.2.7 HAL_HCD_HC_Init......................................................................... 268
20.2.8 HAL_HCD_HC_Halt ....................................................................... 268
20.2.9 HAL_HCD_DeInit ........................................................................... 268
20.2.10 HAL_HCD_MspInit ......................................................................... 268
20.2.11 HAL_HCD_MspDeInit..................................................................... 269
20.2.12 HAL_HCD_HC_SubmitRequest..................................................... 269
20.2.13 HAL_HCD_IRQHandler.................................................................. 269
20.2.14 HAL_HCD_SOF_Callback ............................................................. 270
20.2.15 HAL_HCD_Connect_Callback ....................................................... 270
20.2.16 HAL_HCD_Disconnect_Callback ................................................... 270
20.2.17 HAL_HCD_HC_NotifyURBChange_Callback ................................ 270
20.2.18 HAL_HCD_Start ............................................................................. 270
UM1850 Contents
DOCID027328 Rev 1 13/655
20.2.19 HAL_HCD_Stop ............................................................................. 271
20.2.20 HAL_HCD_ResetPort..................................................................... 271
20.2.21 HAL_HCD_GetState....................................................................... 271
20.2.22 HAL_HCD_HC_GetURBState........................................................ 271
20.2.23 HAL_HCD_HC_GetXferCount ....................................................... 272
20.2.24 HAL_HCD_HC_GetState ............................................................... 272
20.2.25 HAL_HCD_GetCurrentFrame ........................................................ 272
20.2.26 HAL_HCD_GetCurrentSpeed ........................................................ 272
20.3 HCD Firmware driver defines........................................................272
20.3.1 HCD................................................................................................ 273
21 HAL I2C Generic Driver............................................................... 274
21.1 I2C Firmware driver registers structures .......................................274
21.1.1 I2C_InitTypeDef.............................................................................. 274
21.1.2 I2C_HandleTypeDef....................................................................... 274
21.2 I2C Firmware driver API description..............................................275
21.2.1 How to use this driver..................................................................... 275
21.2.2 Initialization and de-initialization functions ..................................... 278
21.2.3 IO operation functions .................................................................... 278
21.2.4 Peripheral State and Errors functions ............................................ 280
21.2.5 HAL_I2C_Init .................................................................................. 280
21.2.6 HAL_I2C_DeInit.............................................................................. 280
21.2.7 HAL_I2C_MspInit ........................................................................... 280
21.2.8 HAL_I2C_MspDeInit....................................................................... 280
21.2.9 HAL_I2C_Master_Transmit............................................................ 281
21.2.10 HAL_I2C_Master_Receive............................................................. 281
21.2.11 HAL_I2C_Slave_Transmit.............................................................. 281
21.2.12 HAL_I2C_Slave_Receive............................................................... 282
21.2.13 HAL_I2C_Master_Transmit_IT....................................................... 282
21.2.14 HAL_I2C_Master_Receive_IT........................................................ 282
21.2.15 HAL_I2C_Slave_Transmit_IT......................................................... 282
21.2.16 HAL_I2C_Slave_Receive_IT.......................................................... 283
21.2.17 HAL_I2C_Master_Transmit_DMA.................................................. 283
21.2.18 HAL_I2C_Master_Receive_DMA................................................... 283
21.2.19 HAL_I2C_Slave_Transmit_DMA.................................................... 284
21.2.20 HAL_I2C_Slave_Receive_DMA..................................................... 284
21.2.21 HAL_I2C_Mem_Write..................................................................... 284
21.2.22 HAL_I2C_Mem_Read .................................................................... 285
21.2.23 HAL_I2C_Mem_Write_IT ............................................................... 285
Contents UM1850
14/655 DOCID027328 Rev 1
21.2.24 HAL_I2C_Mem_Read_IT ............................................................... 285
21.2.25 HAL_I2C_Mem_Write_DMA .......................................................... 286
21.2.26 HAL_I2C_Mem_Read_DMA .......................................................... 286
21.2.27 HAL_I2C_IsDeviceReady............................................................... 286
21.2.28 HAL_I2C_EV_IRQHandler ............................................................. 287
21.2.29 HAL_I2C_ER_IRQHandler............................................................. 287
21.2.30 HAL_I2C_MasterTxCpltCallback.................................................... 287
21.2.31 HAL_I2C_MasterRxCpltCallback ................................................... 287
21.2.32 HAL_I2C_SlaveTxCpltCallback...................................................... 288
21.2.33 HAL_I2C_SlaveRxCpltCallback ..................................................... 288
21.2.34 HAL_I2C_MemTxCpltCallback....................................................... 288
21.2.35 HAL_I2C_MemRxCpltCallback ...................................................... 288
21.2.36 HAL_I2C_ErrorCallback ................................................................. 289
21.2.37 HAL_I2C_GetState......................................................................... 289
21.2.38 HAL_I2C_GetError ......................................................................... 289
21.3 I2C Firmware driver defines ..........................................................289
21.3.1 I2C .................................................................................................. 289
22 HAL I2S Generic Driver............................................................... 296
22.1 I2S Firmware driver registers structures .......................................296
22.1.1 I2S_InitTypeDef.............................................................................. 296
22.1.2 I2S_HandleTypeDef ....................................................................... 296
22.2 I2S Firmware driver API description..............................................297
22.2.1 How to use this driver..................................................................... 297
22.2.2 Initialization and de-initialization functions ..................................... 299
22.2.3 IO operation functions .................................................................... 299
22.2.4 Peripheral State and Errors functions ............................................ 300
22.2.5 HAL_I2S_Init .................................................................................. 300
22.2.6 HAL_I2S_DeInit.............................................................................. 301
22.2.7 HAL_I2S_MspInit............................................................................ 301
22.2.8 HAL_I2S_MspDeInit....................................................................... 301
22.2.9 HAL_I2S_Transmit ......................................................................... 301
22.2.10 HAL_I2S_Receive .......................................................................... 302
22.2.11 HAL_I2S_Transmit_IT.................................................................... 302
22.2.12 HAL_I2S_Receive_IT..................................................................... 303
22.2.13 HAL_I2S_Transmit_DMA ............................................................... 303
22.2.14 HAL_I2S_Receive_DMA ................................................................ 303
22.2.15 HAL_I2S_DMAPause..................................................................... 304
22.2.16 HAL_I2S_DMAResume.................................................................. 304
UM1850 Contents
DOCID027328 Rev 1 15/655
22.2.17 HAL_I2S_DMAStop........................................................................ 304
22.2.18 HAL_I2S_IRQHandler .................................................................... 305
22.2.19 HAL_I2S_TxHalfCpltCallback ........................................................ 305
22.2.20 HAL_I2S_TxCpltCallback............................................................... 305
22.2.21 HAL_I2S_RxHalfCpltCallback ........................................................ 305
22.2.22 HAL_I2S_RxCpltCallback .............................................................. 305
22.2.23 HAL_I2S_ErrorCallback ................................................................. 306
22.2.24 HAL_I2S_GetState......................................................................... 306
22.2.25 HAL_I2S_GetError ......................................................................... 306
22.3 I2S Firmware driver defines ..........................................................306
22.3.1 I2S .................................................................................................. 306
23 HAL IRDA Generic Driver............................................................ 311
23.1 IRDA Firmware driver registers structures ....................................311
23.1.1 IRDA_InitTypeDef........................................................................... 311
23.1.2 IRDA_HandleTypeDef.................................................................... 311
23.2 IRDA Firmware driver API description...........................................312
23.2.1 How to use this driver..................................................................... 312
23.2.2 Initialization and Configuration functions........................................ 314
23.2.3 IO operation functions .................................................................... 314
23.2.4 Peripheral State and Errors functions ............................................ 316
23.2.5 HAL_IRDA_Init ............................................................................... 316
23.2.6 HAL_IRDA_DeInit........................................................................... 316
23.2.7 HAL_IRDA_MspInit ........................................................................ 316
23.2.8 HAL_IRDA_MspDeInit.................................................................... 317
23.2.9 HAL_IRDA_Transmit...................................................................... 317
23.2.10 HAL_IRDA_Receive....................................................................... 317
23.2.11 HAL_IRDA_Transmit_IT................................................................. 317
23.2.12 HAL_IRDA_Receive_IT.................................................................. 318
23.2.13 HAL_IRDA_Transmit_DMA............................................................ 318
23.2.14 HAL_IRDA_Receive_DMA............................................................. 318
23.2.15 HAL_IRDA_DMAPause.................................................................. 319
23.2.16 HAL_IRDA_DMAResume............................................................... 319
23.2.17 HAL_IRDA_DMAStop..................................................................... 319
23.2.18 HAL_IRDA_IRQHandler................................................................. 319
23.2.19 HAL_IRDA_TxCpltCallback............................................................ 320
23.2.20 HAL_IRDA_TxHalfCpltCallback ..................................................... 320
23.2.21 HAL_IRDA_RxCpltCallback ........................................................... 320
23.2.22 HAL_IRDA_RxHalfCpltCallback..................................................... 320
Contents UM1850
16/655 DOCID027328 Rev 1
23.2.23 HAL_IRDA_ErrorCallback .............................................................. 320
23.2.24 HAL_IRDA_GetState...................................................................... 321
23.2.25 HAL_IRDA_GetError ...................................................................... 321
23.3 IRDA Firmware driver defines .......................................................321
23.3.1 IRDA ............................................................................................... 321
24 HAL IWDG Generic Driver........................................................... 328
24.1 IWDG Firmware driver registers structures ...................................328
24.1.1 IWDG_InitTypeDef ......................................................................... 328
24.1.2 IWDG_HandleTypeDef................................................................... 328
24.2 IWDG Firmware driver API description .........................................328
24.2.1 IWDG specific features................................................................... 328
24.2.2 How to use this driver..................................................................... 329
24.2.3 Initialization and de-initialization functions ..................................... 329
24.2.4 IO operation functions .................................................................... 330
24.2.5 Peripheral State functions .............................................................. 330
24.2.6 HAL_IWDG_Init .............................................................................. 330
24.2.7 HAL_IWDG_MspInit ....................................................................... 330
24.2.8 HAL_IWDG_Start ........................................................................... 330
24.2.9 HAL_IWDG_Refresh ...................................................................... 331
24.2.10 HAL_IWDG_GetState..................................................................... 331
24.3 IWDG Firmware driver defines ......................................................331
24.3.1 IWDG.............................................................................................. 331
25 HAL NAND Generic Driver.......................................................... 334
25.1 NAND Firmware driver registers structures...................................334
25.1.1 NAND_IDTypeDef .......................................................................... 334
25.1.2 NAND_AddressTypedef ................................................................. 334
25.1.3 NAND_InfoTypeDef........................................................................ 334
25.1.4 NAND_HandleTypeDef .................................................................. 335
25.2 NAND Firmware driver API description .........................................335
25.2.1 How to use this driver..................................................................... 335
25.2.2 NAND Initialization and de-initialization functions .......................... 336
25.2.3 NAND Input and Output functions .................................................. 336
25.2.4 NAND Control functions ................................................................. 336
25.2.5 NAND State functions..................................................................... 337
25.2.6 HAL_NAND_Init.............................................................................. 337
25.2.7 HAL_NAND_DeInit......................................................................... 337
25.2.8 HAL_NAND_MspInit....................................................................... 337
UM1850 Contents
DOCID027328 Rev 1 17/655
25.2.9 HAL_NAND_MspDeInit .................................................................. 337
25.2.10 HAL_NAND_IRQHandler ............................................................... 338
25.2.11 HAL_NAND_ITCallback ................................................................. 338
25.2.12 HAL_NAND_Read_ID .................................................................... 338
25.2.13 HAL_NAND_Reset......................................................................... 338
25.2.14 HAL_NAND_Read_Page ............................................................... 339
25.2.15 HAL_NAND_Write_Page................................................................ 339
25.2.16 HAL_NAND_Read_SpareArea ...................................................... 339
25.2.17 HAL_NAND_Write_SpareArea....................................................... 339
25.2.18 HAL_NAND_Erase_Block .............................................................. 340
25.2.19 HAL_NAND_Read_Status ............................................................. 340
25.2.20 HAL_NAND_Address_Inc .............................................................. 340
25.2.21 HAL_NAND_ECC_Enable ............................................................. 341
25.2.22 HAL_NAND_ECC_Disable............................................................. 341
25.2.23 HAL_NAND_GetECC..................................................................... 341
25.2.24 HAL_NAND_GetState .................................................................... 341
25.2.25 HAL_NAND_Read_Status ............................................................. 342
25.3 NAND Firmware driver defines......................................................342
25.3.1 NAND.............................................................................................. 342
26 HAL NOR Generic Driver............................................................. 344
26.1 NOR Firmware driver registers structures.....................................344
26.1.1 NOR_IDTypeDef ............................................................................ 344
26.1.2 NOR_CFITypeDef .......................................................................... 344
26.1.3 NOR_HandleTypeDef..................................................................... 344
26.2 NOR Firmware driver API description ...........................................345
26.2.1 How to use this driver..................................................................... 345
26.2.2 NOR Initialization and de_initialization functions ........................... 346
26.2.3 NOR Input and Output functions .................................................... 346
26.2.4 NOR Control functions.................................................................... 346
26.2.5 NOR State functions....................................................................... 346
26.2.6 HAL_NOR_Init................................................................................ 346
26.2.7 HAL_NOR_DeInit ........................................................................... 347
26.2.8 HAL_NOR_MspInit......................................................................... 347
26.2.9 HAL_NOR_MspDeInit .................................................................... 347
26.2.10 HAL_NOR_MspWait....................................................................... 347
26.2.11 HAL_NOR_Read_ID ...................................................................... 348
26.2.12 HAL_NOR_ReturnToReadMode.................................................... 348
26.2.13 HAL_NOR_Read ............................................................................ 348
Contents UM1850
18/655 DOCID027328 Rev 1
26.2.14 HAL_NOR_Program....................................................................... 348
26.2.15 HAL_NOR_ReadBuffer .................................................................. 349
26.2.16 HAL_NOR_ProgramBuffer............................................................. 349
26.2.17 HAL_NOR_Erase_Block ................................................................ 349
26.2.18 HAL_NOR_Erase_Chip.................................................................. 350
26.2.19 HAL_NOR_Read_CFI .................................................................... 350
26.2.20 HAL_NOR_WriteOperation_Enable ............................................... 350
26.2.21 HAL_NOR_WriteOperation_Disable .............................................. 350
26.2.22 HAL_NOR_GetState ...................................................................... 351
26.2.23 HAL_NOR_GetStatus..................................................................... 351
26.3 NOR Firmware driver defines........................................................351
26.3.1 NOR................................................................................................ 351
27 HAL PCCARD Generic Driver ..................................................... 354
27.1 PCCARD Firmware driver registers structures..............................354
27.1.1 PCCARD_HandleTypeDef ............................................................. 354
27.2 PCCARD Firmware driver API description ....................................354
27.2.1 How to use this driver..................................................................... 354
27.2.2 PCCARD Initialization and de-initialization functions ..................... 355
27.2.3 PCCARD Input Output and memory functions ............................... 355
27.2.4 PCCARD Peripheral State functions .............................................. 355
27.2.5 HAL_PCCARD_Init......................................................................... 355
27.2.6 HAL_PCCARD_DeInit.................................................................... 356
27.2.7 HAL_PCCARD_MspInit.................................................................. 356
27.2.8 HAL_PCCARD_MspDeInit ............................................................. 356
27.2.9 HAL_CF_Read_ID.......................................................................... 356
27.2.10 HAL_CF_Read_Sector................................................................... 357
27.2.11 HAL_CF_Write_Sector................................................................... 357
27.2.12 HAL_CF_Erase_Sector.................................................................. 357
27.2.13 HAL_CF_Reset .............................................................................. 358
27.2.14 HAL_PCCARD_IRQHandler .......................................................... 358
27.2.15 HAL_PCCARD_ITCallback ............................................................ 358
27.2.16 HAL_PCCARD_GetState ............................................................... 358
27.2.17 HAL_CF_GetStatus........................................................................ 359
27.2.18 HAL_CF_ReadStatus ..................................................................... 359
27.3 PCCARD Firmware driver defines.................................................359
27.3.1 PCCARD ........................................................................................ 359
28 HAL PCD Generic Driver............................................................. 361
28.1 PCD Firmware driver registers structures .....................................361
UM1850 Contents
DOCID027328 Rev 1 19/655
28.1.1 PCD_HandleTypeDef..................................................................... 361
28.2 PCD Firmware driver API description............................................361
28.2.1 How to use this driver..................................................................... 361
28.2.2 Initialization and de-initialization functions ..................................... 362
28.2.3 IO operation functions .................................................................... 362
28.2.4 Peripheral Control functions ........................................................... 362
28.2.5 Peripheral State functions .............................................................. 363
28.2.6 HAL_PCD_Init ................................................................................ 363
28.2.7 HAL_PCD_DeInit............................................................................ 363
28.2.8 HAL_PCD_MspInit ......................................................................... 363
28.2.9 HAL_PCD_MspDeInit..................................................................... 363
28.2.10 HAL_PCD_Start ............................................................................. 364
28.2.11 HAL_PCD_Stop.............................................................................. 364
28.2.12 HAL_PCD_IRQHandler.................................................................. 364
28.2.13 HAL_PCD_DataOutStageCallback ................................................ 364
28.2.14 HAL_PCD_DataInStageCallback ................................................... 364
28.2.15 HAL_PCD_SetupStageCallback .................................................... 365
28.2.16 HAL_PCD_SOFCallback................................................................ 365
28.2.17 HAL_PCD_ResetCallback.............................................................. 365
28.2.18 HAL_PCD_SuspendCallback......................................................... 365
28.2.19 HAL_PCD_ResumeCallback.......................................................... 365
28.2.20 HAL_PCD_ISOOUTIncompleteCallback........................................ 366
28.2.21 HAL_PCD_ISOINIncompleteCallback............................................ 366
28.2.22 HAL_PCD_ConnectCallback.......................................................... 366
28.2.23 HAL_PCD_DisconnectCallback ..................................................... 366
28.2.24 HAL_PCD_DevConnect ................................................................. 366
28.2.25 HAL_PCD_DevDisconnect............................................................. 367
28.2.26 HAL_PCD_SetAddress .................................................................. 367
28.2.27 HAL_PCD_EP_Open ..................................................................... 367
28.2.28 HAL_PCD_EP_Close..................................................................... 367
28.2.29 HAL_PCD_EP_Receive ................................................................. 368
28.2.30 HAL_PCD_EP_GetRxCount .......................................................... 368
28.2.31 HAL_PCD_EP_Transmit ................................................................ 368
28.2.32 HAL_PCD_EP_SetStall.................................................................. 368
28.2.33 HAL_PCD_EP_ClrStall................................................................... 369
28.2.34 HAL_PCD_EP_Flush ..................................................................... 369
28.2.35 HAL_PCD_ActiveRemoteWakeup ................................................. 369
28.2.36 HAL_PCD_DeActiveRemoteWakeup............................................. 369
Contents UM1850
20/655 DOCID027328 Rev 1
28.2.37 HAL_PCD_GetState....................................................................... 369
28.3 PCD Firmware driver defines ........................................................370
28.3.1 PCD ................................................................................................ 370
29 HAL PCD Extension Driver......................................................... 379
29.1 PCDEx Firmware driver API description .......................................379
29.1.1 Extended Peripheral Control functions........................................... 379
29.1.2 HAL_PCDEx_PMAConfig .............................................................. 379
29.1.3 HAL_PCDEx_SetConnectionState................................................. 379
29.2 PCDEx Firmware driver defines....................................................379
29.2.1 PCDEx............................................................................................ 380
30 HAL PWR Generic Driver............................................................ 381
30.1 PWR Firmware driver registers structures ....................................381
30.1.1 PWR_PVDTypeDef ........................................................................ 381
30.2 PWR Firmware driver API description...........................................381
30.2.1 Initialization and de-initialization functions ..................................... 381
30.2.2 Peripheral Control functions ........................................................... 381
30.2.3 HAL_PWR_DeInit........................................................................... 383
30.2.4 HAL_PWR_EnableBkUpAccess .................................................... 384
30.2.5 HAL_PWR_DisableBkUpAccess.................................................... 384
30.2.6 HAL_PWR_ConfigPVD .................................................................. 384
30.2.7 HAL_PWR_EnablePVD.................................................................. 384
30.2.8 HAL_PWR_DisablePVD................................................................. 384
30.2.9 HAL_PWR_EnableWakeUpPin...................................................... 385
30.2.10 HAL_PWR_DisableWakeUpPin ..................................................... 385
30.2.11 HAL_PWR_EnterSLEEPMode....................................................... 385
30.2.12 HAL_PWR_EnterSTOPMode......................................................... 385
30.2.13 HAL_PWR_EnterSTANDBYMode ................................................. 386
30.2.14 HAL_PWR_EnableSleepOnExit..................................................... 386
30.2.15 HAL_PWR_DisableSleepOnExit .................................................... 387
30.2.16 HAL_PWR_EnableSEVOnPend .................................................... 387
30.2.17 HAL_PWR_DisableSEVOnPend.................................................... 387
30.2.18 HAL_PWR_PVD_IRQHandler........................................................ 387
30.2.19 HAL_PWR_PVDCallback............................................................... 387
30.3 PWR Firmware driver defines .......................................................388
30.3.1 PWR ............................................................................................... 388
31 HAL RCC Generic Driver............................................................. 393
31.1 RCC Firmware driver registers structures .....................................393
UM1850 Contents
DOCID027328 Rev 1 21/655
31.1.1 RCC_PLLInitTypeDef..................................................................... 393
31.1.2 RCC_ClkInitTypeDef ...................................................................... 393
31.2 RCC Firmware driver API description ...........................................394
31.2.1 RCC specific features..................................................................... 394
31.2.2 RCC Limitations.............................................................................. 394
31.2.3 Initialization and de-initialization functions ..................................... 394
31.2.4 Peripheral Control functions ........................................................... 395
31.2.5 HAL_RCC_DeInit ........................................................................... 396
31.2.6 HAL_RCC_OscConfig.................................................................... 396
31.2.7 HAL_RCC_ClockConfig ................................................................. 396
31.2.8 HAL_RCC_MCOConfig.................................................................. 397
31.2.9 HAL_RCC_EnableCSS .................................................................. 398
31.2.10 HAL_RCC_DisableCSS ................................................................. 398
31.2.11 HAL_RCC_GetSysClockFreq ........................................................ 398
31.2.12 HAL_RCC_GetHCLKFreq.............................................................. 399
31.2.13 HAL_RCC_GetPCLK1Freq ............................................................ 399
31.2.14 HAL_RCC_GetPCLK2Freq ............................................................ 399
31.2.15 HAL_RCC_GetOscConfig .............................................................. 400
31.2.16 HAL_RCC_GetClockConfig ........................................................... 400
31.2.17 HAL_RCC_NMI_IRQHandler ......................................................... 400
31.2.18 HAL_RCC_CSSCallback................................................................ 400
31.3 RCC Firmware driver defines........................................................400
31.3.1 RCC................................................................................................ 401
32 HAL RCC Extension Driver......................................................... 414
32.1 RCCEx Firmware driver registers structures.................................414
32.1.1 RCC_OscInitTypeDef..................................................................... 414
32.1.2 RCC_PeriphCLKInitTypeDef.......................................................... 414
32.2 RCCEx Firmware driver API description .......................................415
32.2.1 Extended Peripheral Control functions........................................... 415
32.2.2 HAL_RCCEx_PeriphCLKConfig..................................................... 415
32.2.3 HAL_RCCEx_GetPeriphCLKConfig............................................... 416
32.2.4 HAL_RCCEx_GetPeriphCLKFreq.................................................. 416
32.3 RCCEx Firmware driver defines....................................................416
32.3.1 RCCEx............................................................................................ 416
33 HAL RTC Generic Driver............................................................. 425
33.1 RTC Firmware driver registers structures .....................................425
33.1.1 RTC_TimeTypeDef......................................................................... 425
Contents UM1850
22/655 DOCID027328 Rev 1
33.1.2 RTC_AlarmTypeDef ....................................................................... 425
33.1.3 RTC_InitTypeDef............................................................................ 425
33.1.4 RTC_DateTypeDef ......................................................................... 426
33.1.5 RTC_HandleTypeDef ..................................................................... 426
33.2 RTC Firmware driver API description............................................427
33.2.1 How to use this driver..................................................................... 427
33.2.2 WARNING: Drivers Restrictions..................................................... 427
33.2.3 Backup Domain Operating Condition............................................. 428
33.2.4 Backup Domain Reset.................................................................... 428
33.2.5 Backup Domain Access.................................................................. 428
33.2.6 RTC and low power modes ............................................................ 429
33.2.7 Initialization and de-initialization functions ..................................... 429
33.2.8 RTC Time and Date functions ........................................................ 429
33.2.9 RTC Alarm functions ...................................................................... 429
33.2.10 Peripheral State functions .............................................................. 430
33.2.11 Peripheral Control functions ........................................................... 430
33.2.12 HAL_RTC_Init ................................................................................ 430
33.2.13 HAL_RTC_DeInit............................................................................ 430
33.2.14 HAL_RTC_MspInit.......................................................................... 430
33.2.15 HAL_RTC_MspDeInit ..................................................................... 430
33.2.16 HAL_RTC_SetTime........................................................................ 431
33.2.17 HAL_RTC_GetTime ....................................................................... 431
33.2.18 HAL_RTC_SetDate ........................................................................ 431
33.2.19 HAL_RTC_GetDate........................................................................ 432
33.2.20 HAL_RTC_SetAlarm ...................................................................... 432
33.2.21 HAL_RTC_SetAlarm_IT ................................................................. 432
33.2.22 HAL_RTC_GetAlarm ...................................................................... 433
33.2.23 HAL_RTC_DeactivateAlarm........................................................... 433
33.2.24 HAL_RTC_AlarmIRQHandler......................................................... 433
33.2.25 HAL_RTC_AlarmAEventCallback .................................................. 433
33.2.26 HAL_RTC_PollForAlarmAEvent..................................................... 434
33.2.27 HAL_RTC_GetState....................................................................... 434
33.2.28 HAL_RTC_WaitForSynchro ........................................................... 434
33.3 RTC Firmware driver defines ........................................................434
33.3.1 RTC ................................................................................................ 435
34 HAL RTC Extension Driver ......................................................... 442
34.1 RTCEx Firmware driver registers structures .................................442
34.1.1 RTC_TamperTypeDef .................................................................... 442
UM1850 Contents
DOCID027328 Rev 1 23/655
34.2 RTCEx Firmware driver API description........................................442
34.2.1 RTC Tamper functions ................................................................... 442
34.2.2 RTC Second functions.................................................................... 442
34.2.3 Extension Peripheral Control functions .......................................... 442
34.2.4 HAL_RTCEx_SetTamper ............................................................... 443
34.2.5 HAL_RTCEx_SetTamper_IT.......................................................... 443
34.2.6 HAL_RTCEx_DeactivateTamper ................................................... 443
34.2.7 HAL_RTCEx_TamperIRQHandler ................................................. 444
34.2.8 HAL_RTCEx_Tamper1EventCallback ........................................... 444
34.2.9 HAL_RTCEx_PollForTamper1Event.............................................. 444
34.2.10 HAL_RTCEx_SetSecond_IT .......................................................... 444
34.2.11 HAL_RTCEx_DeactivateSecond.................................................... 444
34.2.12 HAL_RTCEx_RTCIRQHandler ...................................................... 445
34.2.13 HAL_RTCEx_RTCEventCallback .................................................. 445
34.2.14 HAL_RTCEx_RTCEventErrorCallback .......................................... 445
34.2.15 HAL_RTCEx_BKUPWrite............................................................... 445
34.2.16 HAL_RTCEx_BKUPRead .............................................................. 446
34.2.17 HAL_RTCEx_SetSmoothCalib....................................................... 446
34.3 RTCEx Firmware driver defines ....................................................446
34.3.1 RTCEx ............................................................................................ 446
35 HAL SD Generic Driver ............................................................... 454
35.1 SD Firmware driver registers structures........................................454
35.1.1 SD_HandleTypeDef........................................................................ 454
35.1.2 HAL_SD_CSDTypedef................................................................... 454
35.1.3 HAL_SD_CIDTypedef .................................................................... 456
35.1.4 HAL_SD_CardStatusTypedef ........................................................ 457
35.1.5 HAL_SD_CardInfoTypedef............................................................. 458
35.2 SD Firmware driver API description ..............................................458
35.2.1 How to use this driver..................................................................... 458
35.2.2 Initialization and de-initialization functions ..................................... 460
35.2.3 IO operation functions .................................................................... 460
35.2.4 Peripheral Control functions ........................................................... 461
35.2.5 Peripheral State functions .............................................................. 461
35.2.6 HAL_SD_Init................................................................................... 461
35.2.7 HAL_SD_DeInit .............................................................................. 461
35.2.8 HAL_SD_MspInit ............................................................................ 461
35.2.9 HAL_SD_MspDeInit ....................................................................... 462
35.2.10 HAL_SD_ReadBlocks .................................................................... 462
Contents UM1850
24/655 DOCID027328 Rev 1
35.2.11 HAL_SD_WriteBlocks..................................................................... 462
35.2.12 HAL_SD_ReadBlocks_DMA .......................................................... 463
35.2.13 HAL_SD_WriteBlocks_DMA .......................................................... 463
35.2.14 HAL_SD_CheckReadOperation..................................................... 463
35.2.15 HAL_SD_CheckWriteOperation ..................................................... 464
35.2.16 HAL_SD_Erase .............................................................................. 464
35.2.17 HAL_SD_IRQHandler..................................................................... 464
35.2.18 HAL_SD_XferCpltCallback............................................................. 464
35.2.19 HAL_SD_XferErrorCallback ........................................................... 464
35.2.20 HAL_SD_DMA_RxCpltCallback..................................................... 465
35.2.21 HAL_SD_DMA_RxErrorCallback ................................................... 465
35.2.22 HAL_SD_DMA_TxCpltCallback ..................................................... 465
35.2.23 HAL_SD_DMA_TxErrorCallback.................................................... 465
35.2.24 HAL_SD_Get_CardInfo.................................................................. 465
35.2.25 HAL_SD_WideBusOperation_Config............................................. 466
35.2.26 HAL_SD_StopTransfer................................................................... 466
35.2.27 HAL_SD_HighSpeed...................................................................... 466
35.2.28 HAL_SD_SendSDStatus................................................................ 467
35.2.29 HAL_SD_GetStatus........................................................................ 467
35.2.30 HAL_SD_GetCardStatus................................................................ 467
35.3 SD Firmware driver defines...........................................................467
35.3.1 SD................................................................................................... 467
36 HAL SMARTCARD Generic Driver.............................................. 481
36.1 SMARTCARD Firmware driver registers structures ......................481
36.1.1 SMARTCARD_InitTypeDef ............................................................ 481
36.1.2 SMARTCARD_HandleTypeDef...................................................... 482
36.2 SMARTCARD Firmware driver API description.............................483
36.2.1 How to use this driver..................................................................... 483
36.2.2 Initialization and Configuration functions........................................ 485
36.2.3 IO operation functions .................................................................... 485
36.2.4 Peripheral State and Errors functions ............................................ 487
36.2.5 HAL_SMARTCARD_Init................................................................. 487
36.2.6 HAL_SMARTCARD_DeInit ............................................................ 487
36.2.7 HAL_SMARTCARD_MspInit .......................................................... 488
36.2.8 HAL_SMARTCARD_MspDeInit ..................................................... 488
36.2.9 HAL_SMARTCARD_Transmit........................................................ 488
36.2.10 HAL_SMARTCARD_Receive......................................................... 488
36.2.11 HAL_SMARTCARD_Transmit_IT .................................................. 489
UM1850 Contents
DOCID027328 Rev 1 25/655
36.2.12 HAL_SMARTCARD_Receive_IT ................................................... 489
36.2.13 HAL_SMARTCARD_Transmit_DMA.............................................. 489
36.2.14 HAL_SMARTCARD_Receive_DMA............................................... 490
36.2.15 HAL_SMARTCARD_IRQHandler................................................... 490
36.2.16 HAL_SMARTCARD_TxCpltCallback ............................................. 490
36.2.17 HAL_SMARTCARD_RxCpltCallback ............................................. 491
36.2.18 HAL_SMARTCARD_ErrorCallback................................................ 491
36.2.19 HAL_SMARTCARD_GetState ....................................................... 491
36.2.20 HAL_SMARTCARD_GetError........................................................ 491
36.3 SMARTCARD Firmware driver defines .........................................492
36.3.1 SMARTCARD................................................................................. 492
37 HAL SPI Generic Driver............................................................... 502
37.1 SPI Firmware driver registers structures .......................................502
37.1.1 SPI_InitTypeDef ............................................................................. 502
37.1.2 __SPI_HandleTypeDef................................................................... 503
37.2 SPI Firmware driver API description .............................................503
37.2.1 How to use this driver..................................................................... 503
37.2.2 Initialization and de-initialization functions ..................................... 505
37.2.3 IO operation functions .................................................................... 506
37.2.4 Peripheral State and Errors functions ............................................ 506
37.2.5 HAL_SPI_Init .................................................................................. 507
37.2.6 HAL_SPI_DeInit ............................................................................. 507
37.2.7 HAL_SPI_MspInit ........................................................................... 507
37.2.8 HAL_SPI_MspDeInit....................................................................... 507
37.2.9 HAL_SPI_Transmit......................................................................... 508
37.2.10 HAL_SPI_Receive.......................................................................... 508
37.2.11 HAL_SPI_TransmitReceive............................................................ 508
37.2.12 HAL_SPI_Transmit_IT.................................................................... 508
37.2.13 HAL_SPI_Receive_IT..................................................................... 509
37.2.14 HAL_SPI_TransmitReceive_IT ...................................................... 509
37.2.15 HAL_SPI_Transmit_DMA............................................................... 509
37.2.16 HAL_SPI_Receive_DMA................................................................ 510
37.2.17 HAL_SPI_TransmitReceive_DMA.................................................. 510
37.2.18 HAL_SPI_DMAPause..................................................................... 510
37.2.19 HAL_SPI_DMAResume ................................................................. 510
37.2.20 HAL_SPI_DMAStop ....................................................................... 511
37.2.21 HAL_SPI_IRQHandler.................................................................... 511
37.2.22 HAL_SPI_TxCpltCallback .............................................................. 511
Contents UM1850
26/655 DOCID027328 Rev 1
37.2.23 HAL_SPI_RxCpltCallback .............................................................. 511
37.2.24 HAL_SPI_TxRxCpltCallback .......................................................... 511
37.2.25 HAL_SPI_TxHalfCpltCallback ........................................................ 512
37.2.26 HAL_SPI_RxHalfCpltCallback........................................................ 512
37.2.27 HAL_SPI_TxRxHalfCpltCallback.................................................... 512
37.2.28 HAL_SPI_ErrorCallback ................................................................. 512
37.2.29 HAL_SPI_GetState......................................................................... 513
37.2.30 HAL_SPI_GetError......................................................................... 513
37.3 SPI Firmware driver defines..........................................................513
37.3.1 SPI.................................................................................................. 513
38 HAL SRAM Generic Driver.......................................................... 522
38.1 SRAM Firmware driver registers structures...................................522
38.1.1 SRAM_HandleTypeDef .................................................................. 522
38.2 SRAM Firmware driver API description.........................................522
38.2.1 How to use this driver..................................................................... 522
38.2.2 SRAM Initialization and de_initialization functions ......................... 523
38.2.3 SRAM Input and Output functions.................................................. 523
38.2.4 SRAM Control functions ................................................................. 523
38.2.5 SRAM State functions .................................................................... 524
38.2.6 HAL_SRAM_Init ............................................................................. 524
38.2.7 HAL_SRAM_DeInit......................................................................... 524
38.2.8 HAL_SRAM_MspInit....................................................................... 524
38.2.9 HAL_SRAM_MspDeInit.................................................................. 524
38.2.10 HAL_SRAM_DMA_XferCpltCallback ............................................. 525
38.2.11 HAL_SRAM_DMA_XferErrorCallback............................................ 525
38.2.12 HAL_SRAM_Read_8b.................................................................... 525
38.2.13 HAL_SRAM_Write_8b.................................................................... 525
38.2.14 HAL_SRAM_Read_16b.................................................................. 526
38.2.15 HAL_SRAM_Write_16b.................................................................. 526
38.2.16 HAL_SRAM_Read_32b.................................................................. 526
38.2.17 HAL_SRAM_Write_32b.................................................................. 527
38.2.18 HAL_SRAM_Read_DMA................................................................ 527
38.2.19 HAL_SRAM_Write_DMA................................................................ 527
38.2.20 HAL_SRAM_WriteOperation_Enable............................................. 528
38.2.21 HAL_SRAM_WriteOperation_Disable............................................ 528
38.2.22 HAL_SRAM_GetState.................................................................... 528
38.3 SRAM Firmware driver defines .....................................................528
38.3.1 SRAM ............................................................................................. 528
UM1850 Contents
DOCID027328 Rev 1 27/655
39 HAL TIM Generic Driver .............................................................. 529
39.1 TIM Firmware driver registers structures.......................................529
39.1.1 TIM_Base_InitTypeDef................................................................... 529
39.1.2 TIM_OC_InitTypeDef...................................................................... 529
39.1.3 TIM_OnePulse_InitTypeDef ........................................................... 530
39.1.4 TIM_IC_InitTypeDef ....................................................................... 531
39.1.5 TIM_Encoder_InitTypeDef ............................................................. 531
39.1.6 TIM_ClockConfigTypeDef .............................................................. 532
39.1.7 TIM_ClearInputConfigTypeDef....................................................... 532
39.1.8 TIM_SlaveConfigTypeDef .............................................................. 533
39.1.9 TIM_HandleTypeDef ...................................................................... 533
39.2 TIM Firmware driver API description .............................................534
39.2.1 TIMER Generic features................................................................. 534
39.2.2 How to use this driver..................................................................... 534
39.2.3 Time Base functions ....................................................................... 535
39.2.4 Time Output Compare functions .................................................... 535
39.2.5 Time PWM functions ...................................................................... 536
39.2.6 Time Input Capture functions ......................................................... 536
39.2.7 Time One Pulse functions .............................................................. 537
39.2.8 Time Encoder functions.................................................................. 537
39.2.9 IRQ handler management .............................................................. 538
39.2.10 Peripheral Control functions ........................................................... 538
39.2.11 TIM Callbacks functions ................................................................. 538
39.2.12 Peripheral State functions .............................................................. 539
39.2.13 HAL_TIM_Base_Init ....................................................................... 539
39.2.14 HAL_TIM_Base_DeInit................................................................... 539
39.2.15 HAL_TIM_Base_MspInit................................................................. 539
39.2.16 HAL_TIM_Base_MspDeInit............................................................ 539
39.2.17 HAL_TIM_Base_Start..................................................................... 540
39.2.18 HAL_TIM_Base_Stop..................................................................... 540
39.2.19 HAL_TIM_Base_Start_IT ............................................................... 540
39.2.20 HAL_TIM_Base_Stop_IT................................................................ 540
39.2.21 HAL_TIM_Base_Start_DMA .......................................................... 540
39.2.22 HAL_TIM_Base_Stop_DMA........................................................... 541
39.2.23 HAL_TIM_OC_Init .......................................................................... 541
39.2.24 HAL_TIM_OC_DeInit...................................................................... 541
39.2.25 HAL_TIM_OC_MspInit ................................................................... 541
39.2.26 HAL_TIM_OC_MspDeInit............................................................... 542
Contents UM1850
28/655 DOCID027328 Rev 1
39.2.27 HAL_TIM_OC_Start ....................................................................... 542
39.2.28 HAL_TIM_OC_Stop........................................................................ 542
39.2.29 HAL_TIM_OC_Start_IT .................................................................. 542
39.2.30 HAL_TIM_OC_Stop_IT .................................................................. 543
39.2.31 HAL_TIM_OC_Start_DMA ............................................................. 543
39.2.32 HAL_TIM_OC_Stop_DMA ............................................................. 543
39.2.33 HAL_TIM_PWM_Init....................................................................... 544
39.2.34 HAL_TIM_PWM_DeInit .................................................................. 544
39.2.35 HAL_TIM_PWM_MspInit................................................................ 544
39.2.36 HAL_TIM_PWM_MspDeInit ........................................................... 544
39.2.37 HAL_TIM_PWM_Start.................................................................... 544
39.2.38 HAL_TIM_PWM_Stop .................................................................... 545
39.2.39 HAL_TIM_PWM_Start_IT............................................................... 545
39.2.40 HAL_TIM_PWM_Stop_IT............................................................... 545
39.2.41 HAL_TIM_PWM_Start_DMA.......................................................... 546
39.2.42 HAL_TIM_PWM_Stop_DMA.......................................................... 546
39.2.43 HAL_TIM_IC_Init ............................................................................ 546
39.2.44 HAL_TIM_IC_DeInit ....................................................................... 547
39.2.45 HAL_TIM_IC_MspInit ..................................................................... 547
39.2.46 HAL_TIM_IC_MspDeInit................................................................. 547
39.2.47 HAL_TIM_IC_Start ......................................................................... 547
39.2.48 HAL_TIM_IC_Stop ......................................................................... 547
39.2.49 HAL_TIM_IC_Start_IT.................................................................... 548
39.2.50 HAL_TIM_IC_Stop_IT .................................................................... 548
39.2.51 HAL_TIM_IC_Start_DMA............................................................... 548
39.2.52 HAL_TIM_IC_Stop_DMA ............................................................... 549
39.2.53 HAL_TIM_OnePulse_Init................................................................ 549
39.2.54 HAL_TIM_OnePulse_DeInit ........................................................... 549
39.2.55 HAL_TIM_OnePulse_MspInit......................................................... 549
39.2.56 HAL_TIM_OnePulse_MspDeInit .................................................... 550
39.2.57 HAL_TIM_OnePulse_Start............................................................. 550
39.2.58 HAL_TIM_OnePulse_Stop ............................................................. 550
39.2.59 HAL_TIM_OnePulse_Start_IT........................................................ 550
39.2.60 HAL_TIM_OnePulse_Stop_IT........................................................ 551
39.2.61 HAL_TIM_Encoder_Init .................................................................. 551
39.2.62 HAL_TIM_Encoder_DeInit ............................................................. 551
39.2.63 HAL_TIM_Encoder_MspInit ........................................................... 551
39.2.64 HAL_TIM_Encoder_MspDeInit....................................................... 552
39.2.65 HAL_TIM_Encoder_Start ............................................................... 552
UM1850 Contents
DOCID027328 Rev 1 29/655
39.2.66 HAL_TIM_Encoder_Stop ............................................................... 552
39.2.67 HAL_TIM_Encoder_Start_IT .......................................................... 552
39.2.68 HAL_TIM_Encoder_Stop_IT .......................................................... 553
39.2.69 HAL_TIM_Encoder_Start_DMA ..................................................... 553
39.2.70 HAL_TIM_Encoder_Stop_DMA ..................................................... 553
39.2.71 HAL_TIM_IRQHandler ................................................................... 554
39.2.72 HAL_TIM_OC_ConfigChannel ....................................................... 554
39.2.73 HAL_TIM_IC_ConfigChannel......................................................... 554
39.2.74 HAL_TIM_PWM_ConfigChannel.................................................... 555
39.2.75 HAL_TIM_OnePulse_ConfigChannel............................................. 555
39.2.76 HAL_TIM_DMABurst_WriteStart.................................................... 555
39.2.77 HAL_TIM_DMABurst_WriteStop .................................................... 556
39.2.78 HAL_TIM_DMABurst_ReadStart.................................................... 556
39.2.79 HAL_TIM_DMABurst_ReadStop.................................................... 557
39.2.80 HAL_TIM_GenerateEvent .............................................................. 557
39.2.81 HAL_TIM_ConfigOCrefClear.......................................................... 558
39.2.82 HAL_TIM_ConfigClockSource ....................................................... 558
39.2.83 HAL_TIM_ConfigTI1Input............................................................... 558
39.2.84 HAL_TIM_SlaveConfigSynchronization ......................................... 559
39.2.85 HAL_TIM_SlaveConfigSynchronization_IT.................................... 559
39.2.86 HAL_TIM_ReadCapturedValue...................................................... 559
39.2.87 HAL_TIM_PeriodElapsedCallback ................................................. 560
39.2.88 HAL_TIM_OC_DelayElapsedCallback........................................... 560
39.2.89 HAL_TIM_IC_CaptureCallback ...................................................... 560
39.2.90 HAL_TIM_PWM_PulseFinishedCallback ....................................... 560
39.2.91 HAL_TIM_TriggerCallback ............................................................. 560
39.2.92 HAL_TIM_ErrorCallback................................................................. 561
39.2.93 HAL_TIM_Base_GetState.............................................................. 561
39.2.94 HAL_TIM_OC_GetState................................................................. 561
39.2.95 HAL_TIM_PWM_GetState ............................................................. 561
39.2.96 HAL_TIM_IC_GetState................................................................... 561
39.2.97 HAL_TIM_OnePulse_GetState ...................................................... 562
39.2.98 HAL_TIM_Encoder_GetState......................................................... 562
39.3 TIM Firmware driver defines..........................................................562
39.3.1 TIM.................................................................................................. 562
40 HAL TIM Extension Driver........................................................... 582
40.1 TIMEx Firmware driver registers structures...................................582
40.1.1 TIM_HallSensor_InitTypeDef ......................................................... 582
Contents UM1850
30/655 DOCID027328 Rev 1
40.1.2 TIM_BreakDeadTimeConfigTypeDef ............................................. 582
40.1.3 TIM_MasterConfigTypeDef ............................................................ 583
40.2 TIMEx Firmware driver API description.........................................583
40.2.1 TIMER Extended features .............................................................. 583
40.2.2 How to use this driver..................................................................... 583
40.2.3 Timer Hall Sensor functions ........................................................... 584
40.2.4 Timer Complementary Output Compare functions......................... 585
40.2.5 Timer Complementary PWM functions........................................... 585
40.2.6 Timer Complementary One Pulse functions................................... 585
40.2.7 Peripheral Control functions ........................................................... 586
40.2.8 Extension Callbacks functions........................................................ 586
40.2.9 Extension Peripheral State functions ............................................. 586
40.2.10 HAL_TIMEx_HallSensor_Init.......................................................... 586
40.2.11 HAL_TIMEx_HallSensor_DeInit ..................................................... 586
40.2.12 HAL_TIMEx_HallSensor_MspInit................................................... 587
40.2.13 HAL_TIMEx_HallSensor_MspDeInit .............................................. 587
40.2.14 HAL_TIMEx_HallSensor_Start....................................................... 587
40.2.15 HAL_TIMEx_HallSensor_Stop ....................................................... 587
40.2.16 HAL_TIMEx_HallSensor_Start_IT.................................................. 588
40.2.17 HAL_TIMEx_HallSensor_Stop_IT.................................................. 588
40.2.18 HAL_TIMEx_HallSensor_Start_DMA............................................. 588
40.2.19 HAL_TIMEx_HallSensor_Stop_DMA............................................. 588
40.2.20 HAL_TIMEx_OCN_Start................................................................. 588
40.2.21 HAL_TIMEx_OCN_Stop................................................................. 589
40.2.22 HAL_TIMEx_OCN_Start_IT ........................................................... 589
40.2.23 HAL_TIMEx_OCN_Stop_IT ........................................................... 589
40.2.24 HAL_TIMEx_OCN_Start_DMA ...................................................... 590
40.2.25 HAL_TIMEx_OCN_Stop_DMA....................................................... 590
40.2.26 HAL_TIMEx_PWMN_Start ............................................................. 590
40.2.27 HAL_TIMEx_PWMN_Stop ............................................................. 591
40.2.28 HAL_TIMEx_PWMN_Start_IT........................................................ 591
40.2.29 HAL_TIMEx_PWMN_Stop_IT ........................................................ 591
40.2.30 HAL_TIMEx_PWMN_Start_DMA................................................... 592
40.2.31 HAL_TIMEx_PWMN_Stop_DMA ................................................... 592
40.2.32 HAL_TIMEx_OnePulseN_Start ...................................................... 592
40.2.33 HAL_TIMEx_OnePulseN_Stop ...................................................... 593
40.2.34 HAL_TIMEx_OnePulseN_Start_IT................................................. 593
40.2.35 HAL_TIMEx_OnePulseN_Stop_IT ................................................. 593
40.2.36 HAL_TIMEx_ConfigCommutationEvent ......................................... 593
UM1850 Contents
DOCID027328 Rev 1 31/655
40.2.37 HAL_TIMEx_ConfigCommutationEvent_IT.................................... 594
40.2.38 HAL_TIMEx_ConfigCommutationEvent_DMA............................... 595
40.2.39 HAL_TIMEx_ConfigBreakDeadTime.............................................. 595
40.2.40 HAL_TIMEx_MasterConfigSynchronization................................... 596
40.2.41 HAL_TIMEx_CommutationCallback............................................... 596
40.2.42 HAL_TIMEx_BreakCallback........................................................... 596
40.2.43 TIMEx_DMACommutationCplt ....................................................... 596
40.2.44 HAL_TIMEx_HallSensor_GetState ................................................ 597
40.3 TIMEx Firmware driver defines .....................................................597
40.3.1 TIMEx ............................................................................................. 597
41 HAL UART Generic Driver........................................................... 598
41.1 UART Firmware driver registers structures ...................................598
41.1.1 UART_InitTypeDef ......................................................................... 598
41.1.2 UART_HandleTypeDef................................................................... 598
41.2 UART Firmware driver API description .........................................599
41.2.1 How to use this driver..................................................................... 599
41.2.2 Initialization and Configuration functions........................................ 601
41.2.3 IO operation functions .................................................................... 602
41.2.4 Peripheral Control functions ........................................................... 603
41.2.5 Peripheral State and Errors functions ............................................ 603
41.2.6 HAL_UART_Init .............................................................................. 604
41.2.7 HAL_HalfDuplex_Init ...................................................................... 604
41.2.8 HAL_LIN_Init .................................................................................. 604
41.2.9 HAL_MultiProcessor_Init................................................................ 605
41.2.10 HAL_UART_DeInit ......................................................................... 605
41.2.11 HAL_UART_MspInit ....................................................................... 605
41.2.12 HAL_UART_MspDeInit................................................................... 605
41.2.13 HAL_UART_Transmit..................................................................... 606
41.2.14 HAL_UART_Receive...................................................................... 606
41.2.15 HAL_UART_Transmit_IT................................................................ 606
41.2.16 HAL_UART_Receive_IT................................................................. 607
41.2.17 HAL_UART_Transmit_DMA........................................................... 607
41.2.18 HAL_UART_Receive_DMA............................................................ 607
41.2.19 HAL_UART_DMAPause................................................................. 607
41.2.20 HAL_UART_DMAResume ............................................................. 608
41.2.21 HAL_UART_DMAStop ................................................................... 608
41.2.22 HAL_UART_IRQHandler................................................................ 608
41.2.23 HAL_UART_TxCpltCallback .......................................................... 608
Contents UM1850
32/655 DOCID027328 Rev 1
41.2.24 HAL_UART_TxHalfCpltCallback .................................................... 609
41.2.25 HAL_UART_RxCpltCallback .......................................................... 609
41.2.26 HAL_UART_RxHalfCpltCallback.................................................... 609
41.2.27 HAL_UART_ErrorCallback ............................................................. 609
41.2.28 HAL_LIN_SendBreak ..................................................................... 610
41.2.29 HAL_MultiProcessor_EnterMuteMode ........................................... 610
41.2.30 HAL_MultiProcessor_ExitMuteMode.............................................. 610
41.2.31 HAL_HalfDuplex_EnableTransmitter ............................................. 610
41.2.32 HAL_HalfDuplex_EnableReceiver ................................................. 611
41.2.33 HAL_UART_GetState..................................................................... 611
41.2.34 HAL_UART_GetError..................................................................... 611
41.3 UART Firmware driver defines ......................................................611
41.3.1 UART.............................................................................................. 611
42 HAL USART Generic Driver ........................................................ 621
42.1 USART Firmware driver registers structures.................................621
42.1.1 USART_InitTypeDef....................................................................... 621
42.1.2 USART_HandleTypeDef ................................................................ 621
42.2 USART Firmware driver API description .......................................622
42.2.1 How to use this driver..................................................................... 622
42.2.2 Initialization and Configuration functions........................................ 624
42.2.3 IO operation functions .................................................................... 625
42.2.4 Peripheral State and Errors functions ............................................ 626
42.2.5 HAL_USART_Init............................................................................ 626
42.2.6 HAL_USART_DeInit....................................................................... 627
42.2.7 HAL_USART_MspInit..................................................................... 627
42.2.8 HAL_USART_MspDeInit ................................................................ 627
42.2.9 HAL_USART_Transmit .................................................................. 627
42.2.10 HAL_USART_Receive ................................................................... 628
42.2.11 HAL_USART_TransmitReceive ..................................................... 628
42.2.12 HAL_USART_Transmit_IT ............................................................. 628
42.2.13 HAL_USART_Receive_IT .............................................................. 629
42.2.14 HAL_USART_TransmitReceive_IT ................................................ 629
42.2.15 HAL_USART_Transmit_DMA ........................................................ 629
42.2.16 HAL_USART_Receive_DMA ......................................................... 630
42.2.17 HAL_USART_TransmitReceive_DMA ........................................... 630
42.2.18 HAL_USART_DMAPause .............................................................. 630
42.2.19 HAL_USART_DMAResume........................................................... 631
42.2.20 HAL_USART_DMAStop................................................................. 631
UM1850 Contents
DOCID027328 Rev 1 33/655
42.2.21 HAL_USART_IRQHandler ............................................................. 631
42.2.22 HAL_USART_TxCpltCallback ........................................................ 631
42.2.23 HAL_USART_TxHalfCpltCallback.................................................. 632
42.2.24 HAL_USART_RxCpltCallback........................................................ 632
42.2.25 HAL_USART_RxHalfCpltCallback ................................................. 632
42.2.26 HAL_USART_TxRxCpltCallback.................................................... 632
42.2.27 HAL_USART_ErrorCallback .......................................................... 632
42.2.28 HAL_USART_GetState .................................................................. 633
42.2.29 HAL_USART_GetError................................................................... 633
42.3 USART Firmware driver defines....................................................633
42.3.1 USART............................................................................................ 633
43 HAL WWDG Generic Driver ........................................................ 641
43.1 WWDG Firmware driver registers structures.................................641
43.1.1 WWDG_InitTypeDef....................................................................... 641
43.1.2 WWDG_HandleTypeDef ................................................................ 641
43.2 WWDG Firmware driver API description .......................................641
43.2.1 WWDG specific features ................................................................ 641
43.2.2 How to use this driver..................................................................... 642
43.2.3 Initialization and de-initialization functions ..................................... 642
43.2.4 IO operation functions .................................................................... 643
43.2.5 Peripheral State functions .............................................................. 643
43.2.6 HAL_WWDG_Init............................................................................ 643
43.2.7 HAL_WWDG_DeInit....................................................................... 643
43.2.8 HAL_WWDG_MspInit..................................................................... 644
43.2.9 HAL_WWDG_MspDeInit ................................................................ 644
43.2.10 HAL_WWDG_WakeupCallback ..................................................... 644
43.2.11 HAL_WWDG_Start......................................................................... 644
43.2.12 HAL_WWDG_Start_IT.................................................................... 645
43.2.13 HAL_WWDG_Refresh.................................................................... 645
43.2.14 HAL_WWDG_IRQHandler ............................................................. 645
43.2.15 HAL_WWDG_WakeupCallback ..................................................... 645
43.2.16 HAL_WWDG_GetState .................................................................. 646
43.3 WWDG Firmware driver defines....................................................646
43.3.1 WWDG............................................................................................ 646
44 FAQs............................................................................................. 650
45 Revision history .......................................................................... 654
List of tables UM1850
34/655 DOCID027328 Rev 1
List of tables
Table 1: Acronyms and definitions............................................................................................................36
Table 2: HAL drivers files..........................................................................................................................38
Table 3: User-application files ..................................................................................................................39
Table 4: APis classification .......................................................................................................................44
Table 5: List of devices supported by HAL drivers ...................................................................................45
Table 7: HAL API naming rules ................................................................................................................51
Table 8: Macros handling interrupts and specific clock configurations ....................................................52
Table 9: Callback functions.......................................................................................................................53
Table 10: HAL generic APIs .....................................................................................................................54
Table 11: HAL extension APIs..................................................................................................................55
Table 12: Define statements used for HAL configuration .........................................................................59
Table 13: Description of GPIO_InitTypeDef structure ..............................................................................61
Table 14: Description of EXTI configuration macros ................................................................................63
Table 15: MSP functions...........................................................................................................................68
Table 16: Timeout values .........................................................................................................................72
Table 17: IRDA frame formats ................................................................................................................314
Table 18: Number of wait states (WS) vs SYSCLK frequency ...............................................................395
Table 19: Smartcard frame formats ........................................................................................................485
Table 20: Maximum SPI frequency for 8-bit SPI data transfers .............................................................505
Table 21: Maximum SPI frequency for 16-bit SPI data transfers ...........................................................505
Table 22: UART frame formats...............................................................................................................602
Table 23: USART frame formats ............................................................................................................625
Table 24: Document revision history ......................................................................................................654

实例下载地址

STM32F1_HAL库使用手册.pdf

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警