Rev 50 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 50 | Rev 61 | ||
---|---|---|---|
Line 86... | Line 86... | ||
86 | * 01 : (Not Used) |
86 | * 01 : (Not Used) |
87 | * 10 : Timeout |
87 | * 10 : Timeout |
88 | * 11 : Error |
88 | * 11 : Error |
89 | * b5 Peripheral initialization status |
89 | * b5 Peripheral initialization status |
90 | * 0 : Reset (Peripheral not initialized) |
90 | * 0 : Reset (Peripheral not initialized) |
91 | * 1 : Init done (Peripheral not initialized. HAL UART Init function already called) |
91 | * 1 : Init done (Peripheral initialized. HAL UART Init function already called) |
92 | * b4-b3 (not used) |
92 | * b4-b3 (not used) |
93 | * xx : Should be set to 00 |
93 | * xx : Should be set to 00 |
94 | * b2 Intrinsic process state |
94 | * b2 Intrinsic process state |
95 | * 0 : Ready |
95 | * 0 : Ready |
96 | * 1 : Busy (Peripheral busy with some configuration or internal operations) |
96 | * 1 : Busy (Peripheral busy with some configuration or internal operations) |
Line 103... | Line 103... | ||
103 | * RxState value coding follow below described bitmap : |
103 | * RxState value coding follow below described bitmap : |
104 | * b7-b6 (not used) |
104 | * b7-b6 (not used) |
105 | * xx : Should be set to 00 |
105 | * xx : Should be set to 00 |
106 | * b5 Peripheral initialization status |
106 | * b5 Peripheral initialization status |
107 | * 0 : Reset (Peripheral not initialized) |
107 | * 0 : Reset (Peripheral not initialized) |
108 | * 1 : Init done (Peripheral not initialized) |
108 | * 1 : Init done (Peripheral initialized) |
109 | * b4-b2 (not used) |
109 | * b4-b2 (not used) |
110 | * xxx : Should be set to 000 |
110 | * xxx : Should be set to 000 |
111 | * b1 Rx state |
111 | * b1 Rx state |
112 | * 0 : Ready (no Rx operation ongoing) |
112 | * 0 : Ready (no Rx operation ongoing) |
113 | * 1 : Busy (Rx operation ongoing) |
113 | * 1 : Busy (Rx operation ongoing) |
Line 134... | Line 134... | ||
134 | HAL_UART_STATE_ERROR = 0xE0U /*!< Error |
134 | HAL_UART_STATE_ERROR = 0xE0U /*!< Error |
135 | Value is allowed for gState only */ |
135 | Value is allowed for gState only */ |
136 | } HAL_UART_StateTypeDef; |
136 | } HAL_UART_StateTypeDef; |
137 | 137 | ||
138 | /** |
138 | /** |
- | 139 | * @brief HAL UART Reception type definition |
|
- | 140 | * @note HAL UART Reception type value aims to identify which type of Reception is ongoing. |
|
- | 141 | * It is expected to admit following values : |
|
- | 142 | * HAL_UART_RECEPTION_STANDARD = 0x00U, |
|
- | 143 | * HAL_UART_RECEPTION_TOIDLE = 0x01U, |
|
- | 144 | */ |
|
- | 145 | typedef uint32_t HAL_UART_RxTypeTypeDef; |
|
- | 146 | ||
- | 147 | /** |
|
139 | * @brief UART handle Structure definition |
148 | * @brief UART handle Structure definition |
140 | */ |
149 | */ |
141 | typedef struct __UART_HandleTypeDef |
150 | typedef struct __UART_HandleTypeDef |
142 | { |
151 | { |
143 | USART_TypeDef *Instance; /*!< UART registers base address */ |
152 | USART_TypeDef *Instance; /*!< UART registers base address */ |
Line 154... | Line 163... | ||
154 | 163 | ||
155 | uint16_t RxXferSize; /*!< UART Rx Transfer size */ |
164 | uint16_t RxXferSize; /*!< UART Rx Transfer size */ |
156 | 165 | ||
157 | __IO uint16_t RxXferCount; /*!< UART Rx Transfer Counter */ |
166 | __IO uint16_t RxXferCount; /*!< UART Rx Transfer Counter */ |
158 | 167 | ||
- | 168 | __IO HAL_UART_RxTypeTypeDef ReceptionType; /*!< Type of ongoing reception */ |
|
- | 169 | ||
159 | DMA_HandleTypeDef *hdmatx; /*!< UART Tx DMA Handle parameters */ |
170 | DMA_HandleTypeDef *hdmatx; /*!< UART Tx DMA Handle parameters */ |
160 | 171 | ||
161 | DMA_HandleTypeDef *hdmarx; /*!< UART Rx DMA Handle parameters */ |
172 | DMA_HandleTypeDef *hdmarx; /*!< UART Rx DMA Handle parameters */ |
162 | 173 | ||
163 | HAL_LockTypeDef Lock; /*!< Locking object */ |
174 | HAL_LockTypeDef Lock; /*!< Locking object */ |
Line 179... | Line 190... | ||
179 | void (* ErrorCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Error Callback */ |
190 | void (* ErrorCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Error Callback */ |
180 | void (* AbortCpltCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Abort Complete Callback */ |
191 | void (* AbortCpltCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Abort Complete Callback */ |
181 | void (* AbortTransmitCpltCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Abort Transmit Complete Callback */ |
192 | void (* AbortTransmitCpltCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Abort Transmit Complete Callback */ |
182 | void (* AbortReceiveCpltCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Abort Receive Complete Callback */ |
193 | void (* AbortReceiveCpltCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Abort Receive Complete Callback */ |
183 | void (* WakeupCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Wakeup Callback */ |
194 | void (* WakeupCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Wakeup Callback */ |
- | 195 | void (* RxEventCallback)(struct __UART_HandleTypeDef *huart, uint16_t Pos); /*!< UART Reception Event Callback */ |
|
184 | 196 | ||
185 | void (* MspInitCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Msp Init callback */ |
197 | void (* MspInitCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Msp Init callback */ |
186 | void (* MspDeInitCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Msp DeInit callback */ |
198 | void (* MspDeInitCallback)(struct __UART_HandleTypeDef *huart); /*!< UART Msp DeInit callback */ |
187 | #endif /* USE_HAL_UART_REGISTER_CALLBACKS */ |
199 | #endif /* USE_HAL_UART_REGISTER_CALLBACKS */ |
188 | 200 | ||
Line 211... | Line 223... | ||
211 | 223 | ||
212 | /** |
224 | /** |
213 | * @brief HAL UART Callback pointer definition |
225 | * @brief HAL UART Callback pointer definition |
214 | */ |
226 | */ |
215 | typedef void (*pUART_CallbackTypeDef)(UART_HandleTypeDef *huart); /*!< pointer to an UART callback function */ |
227 | typedef void (*pUART_CallbackTypeDef)(UART_HandleTypeDef *huart); /*!< pointer to an UART callback function */ |
- | 228 | typedef void (*pUART_RxEventCallbackTypeDef)(struct __UART_HandleTypeDef *huart, uint16_t Pos); /*!< pointer to a UART Rx Event specific callback function */ |
|
216 | 229 | ||
217 | #endif /* USE_HAL_UART_REGISTER_CALLBACKS */ |
230 | #endif /* USE_HAL_UART_REGISTER_CALLBACKS */ |
218 | 231 | ||
219 | /** |
232 | /** |
220 | * @} |
233 | * @} |
Line 367... | Line 380... | ||
367 | #define UART_IT_ERR ((uint32_t)(UART_CR3_REG_INDEX << 28U | USART_CR3_EIE)) |
380 | #define UART_IT_ERR ((uint32_t)(UART_CR3_REG_INDEX << 28U | USART_CR3_EIE)) |
368 | /** |
381 | /** |
369 | * @} |
382 | * @} |
370 | */ |
383 | */ |
371 | 384 | ||
- | 385 | /** @defgroup UART_RECEPTION_TYPE_Values UART Reception type values |
|
- | 386 | * @{ |
|
- | 387 | */ |
|
- | 388 | #define HAL_UART_RECEPTION_STANDARD (0x00000000U) /*!< Standard reception */ |
|
- | 389 | #define HAL_UART_RECEPTION_TOIDLE (0x00000001U) /*!< Reception till completion or IDLE event */ |
|
- | 390 | /** |
|
- | 391 | * @} |
|
- | 392 | */ |
|
- | 393 | ||
372 | /** |
394 | /** |
373 | * @} |
395 | * @} |
374 | */ |
396 | */ |
375 | 397 | ||
376 | /* Exported macro ------------------------------------------------------------*/ |
398 | /* Exported macro ------------------------------------------------------------*/ |
Line 680... | Line 702... | ||
680 | 702 | ||
681 | /* Callbacks Register/UnRegister functions ***********************************/ |
703 | /* Callbacks Register/UnRegister functions ***********************************/ |
682 | #if (USE_HAL_UART_REGISTER_CALLBACKS == 1) |
704 | #if (USE_HAL_UART_REGISTER_CALLBACKS == 1) |
683 | HAL_StatusTypeDef HAL_UART_RegisterCallback(UART_HandleTypeDef *huart, HAL_UART_CallbackIDTypeDef CallbackID, pUART_CallbackTypeDef pCallback); |
705 | HAL_StatusTypeDef HAL_UART_RegisterCallback(UART_HandleTypeDef *huart, HAL_UART_CallbackIDTypeDef CallbackID, pUART_CallbackTypeDef pCallback); |
684 | HAL_StatusTypeDef HAL_UART_UnRegisterCallback(UART_HandleTypeDef *huart, HAL_UART_CallbackIDTypeDef CallbackID); |
706 | HAL_StatusTypeDef HAL_UART_UnRegisterCallback(UART_HandleTypeDef *huart, HAL_UART_CallbackIDTypeDef CallbackID); |
- | 707 | ||
- | 708 | HAL_StatusTypeDef HAL_UART_RegisterRxEventCallback(UART_HandleTypeDef *huart, pUART_RxEventCallbackTypeDef pCallback); |
|
- | 709 | HAL_StatusTypeDef HAL_UART_UnRegisterRxEventCallback(UART_HandleTypeDef *huart); |
|
685 | #endif /* USE_HAL_UART_REGISTER_CALLBACKS */ |
710 | #endif /* USE_HAL_UART_REGISTER_CALLBACKS */ |
686 | 711 | ||
687 | /** |
712 | /** |
688 | * @} |
713 | * @} |
689 | */ |
714 | */ |
Line 700... | Line 725... | ||
700 | HAL_StatusTypeDef HAL_UART_Transmit_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size); |
725 | HAL_StatusTypeDef HAL_UART_Transmit_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size); |
701 | HAL_StatusTypeDef HAL_UART_Receive_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size); |
726 | HAL_StatusTypeDef HAL_UART_Receive_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size); |
702 | HAL_StatusTypeDef HAL_UART_DMAPause(UART_HandleTypeDef *huart); |
727 | HAL_StatusTypeDef HAL_UART_DMAPause(UART_HandleTypeDef *huart); |
703 | HAL_StatusTypeDef HAL_UART_DMAResume(UART_HandleTypeDef *huart); |
728 | HAL_StatusTypeDef HAL_UART_DMAResume(UART_HandleTypeDef *huart); |
704 | HAL_StatusTypeDef HAL_UART_DMAStop(UART_HandleTypeDef *huart); |
729 | HAL_StatusTypeDef HAL_UART_DMAStop(UART_HandleTypeDef *huart); |
- | 730 | ||
- | 731 | HAL_StatusTypeDef HAL_UARTEx_ReceiveToIdle(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint16_t *RxLen, uint32_t Timeout); |
|
- | 732 | HAL_StatusTypeDef HAL_UARTEx_ReceiveToIdle_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size); |
|
- | 733 | HAL_StatusTypeDef HAL_UARTEx_ReceiveToIdle_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size); |
|
- | 734 | ||
705 | /* Transfer Abort functions */ |
735 | /* Transfer Abort functions */ |
706 | HAL_StatusTypeDef HAL_UART_Abort(UART_HandleTypeDef *huart); |
736 | HAL_StatusTypeDef HAL_UART_Abort(UART_HandleTypeDef *huart); |
707 | HAL_StatusTypeDef HAL_UART_AbortTransmit(UART_HandleTypeDef *huart); |
737 | HAL_StatusTypeDef HAL_UART_AbortTransmit(UART_HandleTypeDef *huart); |
708 | HAL_StatusTypeDef HAL_UART_AbortReceive(UART_HandleTypeDef *huart); |
738 | HAL_StatusTypeDef HAL_UART_AbortReceive(UART_HandleTypeDef *huart); |
709 | HAL_StatusTypeDef HAL_UART_Abort_IT(UART_HandleTypeDef *huart); |
739 | HAL_StatusTypeDef HAL_UART_Abort_IT(UART_HandleTypeDef *huart); |
Line 718... | Line 748... | ||
718 | void HAL_UART_ErrorCallback(UART_HandleTypeDef *huart); |
748 | void HAL_UART_ErrorCallback(UART_HandleTypeDef *huart); |
719 | void HAL_UART_AbortCpltCallback(UART_HandleTypeDef *huart); |
749 | void HAL_UART_AbortCpltCallback(UART_HandleTypeDef *huart); |
720 | void HAL_UART_AbortTransmitCpltCallback(UART_HandleTypeDef *huart); |
750 | void HAL_UART_AbortTransmitCpltCallback(UART_HandleTypeDef *huart); |
721 | void HAL_UART_AbortReceiveCpltCallback(UART_HandleTypeDef *huart); |
751 | void HAL_UART_AbortReceiveCpltCallback(UART_HandleTypeDef *huart); |
722 | 752 | ||
- | 753 | void HAL_UARTEx_RxEventCallback(UART_HandleTypeDef *huart, uint16_t Size); |
|
- | 754 | ||
723 | /** |
755 | /** |
724 | * @} |
756 | * @} |
725 | */ |
757 | */ |
726 | 758 | ||
727 | /** @addtogroup UART_Exported_Functions_Group3 |
759 | /** @addtogroup UART_Exported_Functions_Group3 |
Line 823... | Line 855... | ||
823 | /* Private functions ---------------------------------------------------------*/ |
855 | /* Private functions ---------------------------------------------------------*/ |
824 | /** @defgroup UART_Private_Functions UART Private Functions |
856 | /** @defgroup UART_Private_Functions UART Private Functions |
825 | * @{ |
857 | * @{ |
826 | */ |
858 | */ |
827 | 859 | ||
- | 860 | HAL_StatusTypeDef UART_Start_Receive_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size); |
|
- | 861 | HAL_StatusTypeDef UART_Start_Receive_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size); |
|
- | 862 | ||
828 | /** |
863 | /** |
829 | * @} |
864 | * @} |
830 | */ |
865 | */ |
831 | 866 | ||
832 | /** |
867 | /** |