stm32h747/stm32h747i-disco/CM7/Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_uart_ex.c
Go to the documentation of this file.
1 
43 /* Includes ------------------------------------------------------------------*/
44 #include "stm32h7xx_hal.h"
45 
55 #ifdef HAL_UART_MODULE_ENABLED
56 
57 /* Private typedef -----------------------------------------------------------*/
58 /* Private define ------------------------------------------------------------*/
62 /* UART RX FIFO depth */
63 #define RX_FIFO_DEPTH 16U
64 
65 /* UART TX FIFO depth */
66 #define TX_FIFO_DEPTH 16U
67 
71 /* Private macros ------------------------------------------------------------*/
72 /* Private variables ---------------------------------------------------------*/
73 /* Private function prototypes -----------------------------------------------*/
77 static void UARTEx_Wakeup_AddressConfig(UART_HandleTypeDef *huart, UART_WakeUpTypeDef WakeUpSelection);
78 static void UARTEx_SetNbDataToProcess(UART_HandleTypeDef *huart);
83 /* Exported functions --------------------------------------------------------*/
84 
166 HAL_StatusTypeDef HAL_RS485Ex_Init(UART_HandleTypeDef *huart, uint32_t Polarity, uint32_t AssertionTime,
167  uint32_t DeassertionTime)
168 {
169  uint32_t temp;
170 
171  /* Check the UART handle allocation */
172  if (huart == NULL)
173  {
174  return HAL_ERROR;
175  }
176  /* Check the Driver Enable UART instance */
178 
179  /* Check the Driver Enable polarity */
181 
182  /* Check the Driver Enable assertion time */
183  assert_param(IS_UART_ASSERTIONTIME(AssertionTime));
184 
185  /* Check the Driver Enable deassertion time */
186  assert_param(IS_UART_DEASSERTIONTIME(DeassertionTime));
187 
189  {
190  /* Allocate lock resource and initialize it */
192 
193 #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
194  UART_InitCallbacksToDefault(huart);
195 
196  if (huart->MspInitCallback == NULL)
197  {
198  huart->MspInitCallback = HAL_UART_MspInit;
199  }
200 
201  /* Init the low level hardware */
202  huart->MspInitCallback(huart);
203 #else
204  /* Init the low level hardware : GPIO, CLOCK, CORTEX */
206 #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
207  }
208 
210 
211  /* Disable the Peripheral */
213 
214  /* Set the UART Communication parameters */
216  {
217  return HAL_ERROR;
218  }
219 
221  {
223  }
224 
225  /* Enable the Driver Enable mode by setting the DEM bit in the CR3 register */
227 
228  /* Set the Driver Enable polarity */
229  MODIFY_REG(huart->Instance->CR3, USART_CR3_DEP, Polarity);
230 
231  /* Set the Driver Enable assertion and deassertion times */
232  temp = (AssertionTime << UART_CR1_DEAT_ADDRESS_LSB_POS);
233  temp |= (DeassertionTime << UART_CR1_DEDT_ADDRESS_LSB_POS);
235 
236  /* Enable the Peripheral */
238 
239  /* TEACK and/or REACK to check before moving huart->gState and huart->RxState to Ready */
240  return (UART_CheckIdleState(huart));
241 }
242 
273 {
274  /* Prevent unused argument(s) compilation warning */
275  UNUSED(huart);
276 
277  /* NOTE : This function should not be modified, when the callback is needed,
278  the HAL_UARTEx_WakeupCallback can be implemented in the user file.
279  */
280 }
281 
288 {
289  /* Prevent unused argument(s) compilation warning */
290  UNUSED(huart);
291 
292  /* NOTE : This function should not be modified, when the callback is needed,
293  the HAL_UARTEx_RxFifoFullCallback can be implemented in the user file.
294  */
295 }
296 
303 {
304  /* Prevent unused argument(s) compilation warning */
305  UNUSED(huart);
306 
307  /* NOTE : This function should not be modified, when the callback is needed,
308  the HAL_UARTEx_TxFifoEmptyCallback can be implemented in the user file.
309  */
310 }
311 
353 {
354  /* Check the UART handle allocation */
355  if (huart == NULL)
356  {
357  return HAL_ERROR;
358  }
359 
360  /* Check the address length parameter */
362 
364 
365  /* Disable the Peripheral */
367 
368  /* Set the address length */
369  MODIFY_REG(huart->Instance->CR2, USART_CR2_ADDM7, AddressLength);
370 
371  /* Enable the Peripheral */
373 
374  /* TEACK and/or REACK to check before moving huart->gState to Ready */
375  return (UART_CheckIdleState(huart));
376 }
377 
391 {
392  HAL_StatusTypeDef status = HAL_OK;
393  uint32_t tickstart;
394 
395  /* check the wake-up from stop mode UART instance */
397  /* check the wake-up selection parameter */
399 
400  /* Process Locked */
401  __HAL_LOCK(huart);
402 
404 
405  /* Disable the Peripheral */
407 
408  /* Set the wake-up selection scheme */
409  MODIFY_REG(huart->Instance->CR3, USART_CR3_WUS, WakeUpSelection.WakeUpEvent);
410 
411  if (WakeUpSelection.WakeUpEvent == UART_WAKEUP_ON_ADDRESS)
412  {
413  UARTEx_Wakeup_AddressConfig(huart, WakeUpSelection);
414  }
415 
416  /* Enable the Peripheral */
418 
419  /* Init tickstart for timeout managment*/
420  tickstart = HAL_GetTick();
421 
422  /* Wait until REACK flag is set */
424  {
425  status = HAL_TIMEOUT;
426  }
427  else
428  {
429  /* Initialize the UART State */
431  }
432 
433  /* Process Unlocked */
435 
436  return status;
437 }
438 
446 {
447  /* Process Locked */
448  __HAL_LOCK(huart);
449 
450  /* Set UESM bit */
452 
453  /* Process Unlocked */
455 
456  return HAL_OK;
457 }
458 
465 {
466  /* Process Locked */
467  __HAL_LOCK(huart);
468 
469  /* Clear UESM bit */
471 
472  /* Process Unlocked */
474 
475  return HAL_OK;
476 }
477 
484 {
485  uint32_t tmpcr1;
486 
487  /* Check parameters */
489 
490  /* Process Locked */
491  __HAL_LOCK(huart);
492 
494 
495  /* Save actual UART configuration */
496  tmpcr1 = READ_REG(huart->Instance->CR1);
497 
498  /* Disable UART */
500 
501  /* Enable FIFO mode */
502  SET_BIT(tmpcr1, USART_CR1_FIFOEN);
504 
505  /* Restore UART configuration */
506  WRITE_REG(huart->Instance->CR1, tmpcr1);
507 
508  /* Determine the number of data to process during RX/TX ISR execution */
509  UARTEx_SetNbDataToProcess(huart);
510 
512 
513  /* Process Unlocked */
515 
516  return HAL_OK;
517 }
518 
525 {
526  uint32_t tmpcr1;
527 
528  /* Check parameters */
530 
531  /* Process Locked */
532  __HAL_LOCK(huart);
533 
535 
536  /* Save actual UART configuration */
537  tmpcr1 = READ_REG(huart->Instance->CR1);
538 
539  /* Disable UART */
541 
542  /* Enable FIFO mode */
543  CLEAR_BIT(tmpcr1, USART_CR1_FIFOEN);
545 
546  /* Restore UART configuration */
547  WRITE_REG(huart->Instance->CR1, tmpcr1);
548 
550 
551  /* Process Unlocked */
553 
554  return HAL_OK;
555 }
556 
571 {
572  uint32_t tmpcr1;
573 
574  /* Check parameters */
577 
578  /* Process Locked */
579  __HAL_LOCK(huart);
580 
582 
583  /* Save actual UART configuration */
584  tmpcr1 = READ_REG(huart->Instance->CR1);
585 
586  /* Disable UART */
588 
589  /* Update TX threshold configuration */
591 
592  /* Determine the number of data to process during RX/TX ISR execution */
593  UARTEx_SetNbDataToProcess(huart);
594 
595  /* Restore UART configuration */
596  WRITE_REG(huart->Instance->CR1, tmpcr1);
597 
599 
600  /* Process Unlocked */
602 
603  return HAL_OK;
604 }
605 
620 {
621  uint32_t tmpcr1;
622 
623  /* Check the parameters */
626 
627  /* Process Locked */
628  __HAL_LOCK(huart);
629 
631 
632  /* Save actual UART configuration */
633  tmpcr1 = READ_REG(huart->Instance->CR1);
634 
635  /* Disable UART */
637 
638  /* Update RX threshold configuration */
640 
641  /* Determine the number of data to process during RX/TX ISR execution */
642  UARTEx_SetNbDataToProcess(huart);
643 
644  /* Restore UART configuration */
645  WRITE_REG(huart->Instance->CR1, tmpcr1);
646 
648 
649  /* Process Unlocked */
651 
652  return HAL_OK;
653 }
654 
673 static void UARTEx_Wakeup_AddressConfig(UART_HandleTypeDef *huart, UART_WakeUpTypeDef WakeUpSelection)
674 {
676 
677  /* Set the USART address length */
679 
680  /* Set the USART address node */
681  MODIFY_REG(huart->Instance->CR2, USART_CR2_ADD, ((uint32_t)WakeUpSelection.Address << UART_CR2_ADDRESS_LSB_POS));
682 }
683 
691 static void UARTEx_SetNbDataToProcess(UART_HandleTypeDef *huart)
692 {
693  uint8_t rx_fifo_depth;
694  uint8_t tx_fifo_depth;
695  uint8_t rx_fifo_threshold;
696  uint8_t tx_fifo_threshold;
697  uint8_t numerator[] = {1U, 1U, 1U, 3U, 7U, 1U, 0U, 0U};
698  uint8_t denominator[] = {8U, 4U, 2U, 4U, 8U, 1U, 1U, 1U};
699 
701  {
702  huart->NbTxDataToProcess = 1U;
703  huart->NbRxDataToProcess = 1U;
704  }
705  else
706  {
707  rx_fifo_depth = RX_FIFO_DEPTH;
708  tx_fifo_depth = TX_FIFO_DEPTH;
709  rx_fifo_threshold = (uint8_t)(READ_BIT(huart->Instance->CR3, USART_CR3_RXFTCFG) >> USART_CR3_RXFTCFG_Pos);
710  tx_fifo_threshold = (uint8_t)(READ_BIT(huart->Instance->CR3, USART_CR3_TXFTCFG) >> USART_CR3_TXFTCFG_Pos);
711  huart->NbTxDataToProcess = ((uint16_t)tx_fifo_depth * numerator[tx_fifo_threshold]) / (uint16_t)denominator[tx_fifo_threshold];
712  huart->NbRxDataToProcess = ((uint16_t)rx_fifo_depth * numerator[rx_fifo_threshold]) / (uint16_t)denominator[rx_fifo_threshold];
713  }
714 }
719 #endif /* HAL_UART_MODULE_ENABLED */
720 
729 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
IS_UART_RXFIFO_THRESHOLD
#define IS_UART_RXFIFO_THRESHOLD(__THRESHOLD__)
Ensure that UART RXFIFO threshold level is valid.
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart_ex.h:843
assert_param
#define assert_param(expr)
Include module's header file.
Definition: stm32f407/stm32f407g-disc1/Inc/stm32f4xx_hal_conf.h:353
HAL_MultiProcessorEx_AddressLength_Set
HAL_StatusTypeDef HAL_MultiProcessorEx_AddressLength_Set(UART_HandleTypeDef *huart, uint32_t AddressLength)
IS_UART_ADDRESSLENGTH_DETECT
#define IS_UART_ADDRESSLENGTH_DETECT(__ADDRESS__)
Ensure that UART wake-up address length is valid.
Definition: stm32f7xx_hal_uart_ex.h:402
UART_CR1_DEDT_ADDRESS_LSB_POS
#define UART_CR1_DEDT_ADDRESS_LSB_POS
Definition: stm32f7xx_hal_uart.h:625
HAL_StatusTypeDef
HAL_StatusTypeDef
HAL Status structures definition
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:40
USART_CR3_RXFTCFG
#define USART_CR3_RXFTCFG
Definition: stm32h735xx.h:21595
__UART_HandleTypeDef::NbRxDataToProcess
uint16_t NbRxDataToProcess
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart.h:237
HAL_UARTEx_StopModeWakeUpSourceConfig
HAL_StatusTypeDef HAL_UARTEx_StopModeWakeUpSourceConfig(UART_HandleTypeDef *huart, UART_WakeUpTypeDef WakeUpSelection)
USART_CR1_DEAT
#define USART_CR1_DEAT
Definition: stm32f769xx.h:15277
__UART_HandleTypeDef::NbTxDataToProcess
uint16_t NbTxDataToProcess
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart.h:239
NULL
#define NULL
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/extras/speex_resampler/thirdparty/resample.c:92
HAL_UARTEx_DisableFifoMode
HAL_StatusTypeDef HAL_UARTEx_DisableFifoMode(UART_HandleTypeDef *huart)
USART_CR2_ADD
#define USART_CR2_ADD
Definition: stm32f407xx.h:12552
HAL_UNLOCKED
@ HAL_UNLOCKED
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:53
UART_WAKEUP_ON_ADDRESS
#define UART_WAKEUP_ON_ADDRESS
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart.h:662
huart
UART_HandleTypeDef huart
Definition: pv_stm32f469.c:31
UART_ADVFEATURE_NO_INIT
#define UART_ADVFEATURE_NO_INIT
Definition: stm32f7xx_hal_uart.h:480
UART_AdvFeatureConfig
void UART_AdvFeatureConfig(UART_HandleTypeDef *huart)
HAL_UARTEx_DisableStopMode
HAL_StatusTypeDef HAL_UARTEx_DisableStopMode(UART_HandleTypeDef *huart)
__UART_HandleTypeDef
UART handle Structure definition.
Definition: stm32f4xx_hal_uart.h:141
__HAL_UART_ENABLE
#define __HAL_UART_ENABLE(__HANDLE__)
Enable UART.
Definition: stm32f4xx_hal_uart.h:652
USART_TypeDef::CR1
__IO uint32_t CR1
Definition: stm32f407xx.h:763
USART_CR2_ADDM7
#define USART_CR2_ADDM7
Definition: stm32f769xx.h:15298
HAL_ERROR
@ HAL_ERROR
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:43
__HAL_UART_DISABLE
#define __HAL_UART_DISABLE(__HANDLE__)
Disable UART.
Definition: stm32f4xx_hal_uart.h:658
CLEAR_BIT
#define CLEAR_BIT(REG, BIT)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:214
HAL_GetTick
uint32_t HAL_GetTick(void)
Provides a tick value in millisecond.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c:323
USART_CR3_DEM
#define USART_CR3_DEM
Definition: stm32f769xx.h:15400
USART_CR3_DEP
#define USART_CR3_DEP
Definition: stm32f769xx.h:15403
UART_CR2_ADDRESS_LSB_POS
#define UART_CR2_ADDRESS_LSB_POS
Definition: stm32f7xx_hal_uart.h:588
HAL_UARTEx_EnableFifoMode
HAL_StatusTypeDef HAL_UARTEx_EnableFifoMode(UART_HandleTypeDef *huart)
HAL_UART_MspInit
void HAL_UART_MspInit(UART_HandleTypeDef *huart)
UART MSP Initialization This function configures the hardware resources used in this example.
Definition: stm32h7xx_hal_msp.c:320
USART_CR1_FIFOEN
#define USART_CR1_FIFOEN
Definition: stm32h735xx.h:21446
HAL_UARTEx_EnableStopMode
HAL_StatusTypeDef HAL_UARTEx_EnableStopMode(UART_HandleTypeDef *huart)
UART_WakeUpTypeDef::Address
uint8_t Address
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart_ex.h:57
USART_CR1_UESM
#define USART_CR1_UESM
Definition: stm32f769xx.h:15223
HAL_OK
@ HAL_OK
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:42
IS_UART_FIFO_INSTANCE
#define IS_UART_FIFO_INSTANCE(INSTANCE)
Definition: stm32h735xx.h:24546
UART_WakeUpTypeDef::AddressLength
uint16_t AddressLength
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart_ex.h:54
IS_UART_DE_POLARITY
#define IS_UART_DE_POLARITY(__POLARITY__)
Ensure that UART driver enable polarity is valid.
Definition: stm32f7xx_hal_uart.h:1388
UART_CheckIdleState
HAL_StatusTypeDef UART_CheckIdleState(UART_HandleTypeDef *huart)
UNUSED
#define UNUSED(x)
Definition: porcupine/demo/c/dr_libs/old/dr.h:92
IS_UART_TXFIFO_THRESHOLD
#define IS_UART_TXFIFO_THRESHOLD(__THRESHOLD__)
Ensure that UART TXFIFO threshold level is valid.
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart_ex.h:831
UART_FIFOMODE_ENABLE
#define UART_FIFOMODE_ENABLE
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart_ex.h:93
HAL_UARTEx_TxFifoEmptyCallback
void HAL_UARTEx_TxFifoEmptyCallback(UART_HandleTypeDef *huart)
UART_WakeUpTypeDef
UART wake up from stop mode parameters.
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart_ex.h:47
__HAL_LOCK
#define __HAL_LOCK(__HANDLE__)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:93
UART_FIFOMODE_DISABLE
#define UART_FIFOMODE_DISABLE
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart_ex.h:92
USART_ISR_REACK
#define USART_ISR_REACK
Definition: stm32f769xx.h:15530
MODIFY_REG
#define MODIFY_REG(REG, CLEARMASK, SETMASK)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:224
RESET
@ RESET
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:187
__UART_HandleTypeDef::Lock
HAL_LockTypeDef Lock
Definition: stm32f4xx_hal_uart.h:163
IS_UART_DRIVER_ENABLE_INSTANCE
#define IS_UART_DRIVER_ENABLE_INSTANCE(__INSTANCE__)
Definition: stm32f769xx.h:21985
HAL_UART_TIMEOUT_VALUE
#define HAL_UART_TIMEOUT_VALUE
Definition: stm32f7xx_hal_uart.h:641
USART_CR1_DEDT
#define USART_CR1_DEDT
Definition: stm32f769xx.h:15269
USART_TypeDef::CR3
__IO uint32_t CR3
Definition: stm32f407xx.h:765
USART_TypeDef::CR2
__IO uint32_t CR2
Definition: stm32f407xx.h:764
__HAL_UNLOCK
#define __HAL_UNLOCK(__HANDLE__)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:105
READ_BIT
#define READ_BIT(REG, BIT)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:216
IS_UART_ASSERTIONTIME
#define IS_UART_ASSERTIONTIME(__TIME__)
Check UART assertion time.
Definition: stm32f7xx_hal_uart.h:1121
__UART_HandleTypeDef::AdvancedInit
UART_AdvFeatureInitTypeDef AdvancedInit
Definition: stm32f7xx_hal_uart.h:191
UART_WakeUpTypeDef::WakeUpEvent
uint32_t WakeUpEvent
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart_ex.h:49
__UART_HandleTypeDef::FifoMode
uint32_t FifoMode
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart.h:234
__UART_HandleTypeDef::gState
__IO HAL_UART_StateTypeDef gState
Definition: stm32f4xx_hal_uart.h:165
UART_SetConfig
HAL_StatusTypeDef UART_SetConfig(UART_HandleTypeDef *huart)
IS_UART_WAKEUP_SELECTION
#define IS_UART_WAKEUP_SELECTION(__WAKE__)
Ensure that UART wake-up selection is valid.
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_uart.h:1541
HAL_TIMEOUT
@ HAL_TIMEOUT
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:45
IS_UART_DEASSERTIONTIME
#define IS_UART_DEASSERTIONTIME(__TIME__)
Check UART deassertion time.
Definition: stm32f7xx_hal_uart.h:1127
UART_WaitOnFlagUntilTimeout
HAL_StatusTypeDef UART_WaitOnFlagUntilTimeout(UART_HandleTypeDef *huart, uint32_t Flag, FlagStatus Status, uint32_t Tickstart, uint32_t Timeout)
HAL_UART_STATE_RESET
@ HAL_UART_STATE_RESET
Definition: stm32f4xx_hal_uart.h:119
UART_CR1_DEAT_ADDRESS_LSB_POS
#define UART_CR1_DEAT_ADDRESS_LSB_POS
Definition: stm32f7xx_hal_uart.h:617
USART_CR3_WUS
#define USART_CR3_WUS
Definition: stm32f769xx.h:15412
USART_CR3_RXFTCFG_Pos
#define USART_CR3_RXFTCFG_Pos
Definition: stm32h735xx.h:21593
USART_CR3_TXFTCFG
#define USART_CR3_TXFTCFG
Definition: stm32h735xx.h:21604
WRITE_REG
#define WRITE_REG(REG, VAL)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:220
HAL_UARTEx_SetTxFifoThreshold
HAL_StatusTypeDef HAL_UARTEx_SetTxFifoThreshold(UART_HandleTypeDef *huart, uint32_t Threshold)
HAL_RS485Ex_Init
HAL_StatusTypeDef HAL_RS485Ex_Init(UART_HandleTypeDef *huart, uint32_t Polarity, uint32_t AssertionTime, uint32_t DeassertionTime)
READ_REG
#define READ_REG(REG)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:222
SET_BIT
#define SET_BIT(REG, BIT)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:212
HAL_UARTEx_SetRxFifoThreshold
HAL_StatusTypeDef HAL_UARTEx_SetRxFifoThreshold(UART_HandleTypeDef *huart, uint32_t Threshold)
IS_UART_WAKEUP_FROMSTOP_INSTANCE
#define IS_UART_WAKEUP_FROMSTOP_INSTANCE(__INSTANCE__)
Definition: stm32f769xx.h:22025
__UART_HandleTypeDef::Instance
USART_TypeDef * Instance
Definition: stm32f4xx_hal_uart.h:143
UART_AdvFeatureInitTypeDef::AdvFeatureInit
uint32_t AdvFeatureInit
Definition: stm32f7xx_hal_uart.h:94
USART_CR3_TXFTCFG_Pos
#define USART_CR3_TXFTCFG_Pos
Definition: stm32h735xx.h:21602
HAL_UART_STATE_BUSY
@ HAL_UART_STATE_BUSY
Definition: stm32f4xx_hal_uart.h:123
HAL_UARTEx_WakeupCallback
void HAL_UARTEx_WakeupCallback(UART_HandleTypeDef *huart)
HAL_UARTEx_RxFifoFullCallback
void HAL_UARTEx_RxFifoFullCallback(UART_HandleTypeDef *huart)
HAL_UART_STATE_READY
@ HAL_UART_STATE_READY
Definition: stm32f4xx_hal_uart.h:121


picovoice_driver
Author(s):
autogenerated on Fri Apr 1 2022 02:14:55