39 #ifndef __STM32F7xx_HAL_UART_H 40 #define __STM32F7xx_HAL_UART_H 271 #define HAL_UART_ERROR_NONE ((uint32_t)0x00000000U) 272 #define HAL_UART_ERROR_PE ((uint32_t)0x00000001U) 273 #define HAL_UART_ERROR_NE ((uint32_t)0x00000002U) 274 #define HAL_UART_ERROR_FE ((uint32_t)0x00000004U) 275 #define HAL_UART_ERROR_ORE ((uint32_t)0x00000008U) 276 #define HAL_UART_ERROR_DMA ((uint32_t)0x00000010U) 283 #define UART_STOPBITS_1 ((uint32_t)0x00000000U) 284 #define UART_STOPBITS_2 ((uint32_t)USART_CR2_STOP_1) 292 #define UART_PARITY_NONE ((uint32_t)0x00000000U) 293 #define UART_PARITY_EVEN ((uint32_t)USART_CR1_PCE) 294 #define UART_PARITY_ODD ((uint32_t)(USART_CR1_PCE | USART_CR1_PS)) 302 #define UART_HWCONTROL_NONE ((uint32_t)0x00000000U) 303 #define UART_HWCONTROL_RTS ((uint32_t)USART_CR3_RTSE) 304 #define UART_HWCONTROL_CTS ((uint32_t)USART_CR3_CTSE) 305 #define UART_HWCONTROL_RTS_CTS ((uint32_t)(USART_CR3_RTSE | USART_CR3_CTSE)) 313 #define UART_MODE_RX ((uint32_t)USART_CR1_RE) 314 #define UART_MODE_TX ((uint32_t)USART_CR1_TE) 315 #define UART_MODE_TX_RX ((uint32_t)(USART_CR1_TE |USART_CR1_RE)) 323 #define UART_STATE_DISABLE ((uint32_t)0x00000000U) 324 #define UART_STATE_ENABLE ((uint32_t)USART_CR1_UE) 332 #define UART_OVERSAMPLING_16 ((uint32_t)0x00000000U) 333 #define UART_OVERSAMPLING_8 ((uint32_t)USART_CR1_OVER8) 341 #define UART_ONE_BIT_SAMPLE_DISABLE ((uint32_t)0x00000000U) 342 #define UART_ONE_BIT_SAMPLE_ENABLE ((uint32_t)USART_CR3_ONEBIT) 350 #define UART_ADVFEATURE_AUTOBAUDRATE_ONSTARTBIT ((uint32_t)0x0000U) 351 #define UART_ADVFEATURE_AUTOBAUDRATE_ONFALLINGEDGE ((uint32_t)USART_CR2_ABRMODE_0) 352 #define UART_ADVFEATURE_AUTOBAUDRATE_ON0X7FFRAME ((uint32_t)USART_CR2_ABRMODE_1) 353 #define UART_ADVFEATURE_AUTOBAUDRATE_ON0X55FRAME ((uint32_t)USART_CR2_ABRMODE) 361 #define UART_RECEIVER_TIMEOUT_DISABLE ((uint32_t)0x00000000U) 362 #define UART_RECEIVER_TIMEOUT_ENABLE ((uint32_t)USART_CR2_RTOEN) 370 #define UART_LIN_DISABLE ((uint32_t)0x00000000U) 371 #define UART_LIN_ENABLE ((uint32_t)USART_CR2_LINEN) 379 #define UART_LINBREAKDETECTLENGTH_10B ((uint32_t)0x00000000U) 380 #define UART_LINBREAKDETECTLENGTH_11B ((uint32_t)USART_CR2_LBDL) 388 #define UART_DMA_TX_DISABLE ((uint32_t)0x00000000U) 389 #define UART_DMA_TX_ENABLE ((uint32_t)USART_CR3_DMAT) 397 #define UART_DMA_RX_DISABLE ((uint32_t)0x0000U) 398 #define UART_DMA_RX_ENABLE ((uint32_t)USART_CR3_DMAR) 406 #define UART_HALF_DUPLEX_DISABLE ((uint32_t)0x0000U) 407 #define UART_HALF_DUPLEX_ENABLE ((uint32_t)USART_CR3_HDSEL) 415 #define UART_WAKEUPMETHOD_IDLELINE ((uint32_t)0x00000000U) 416 #define UART_WAKEUPMETHOD_ADDRESSMARK ((uint32_t)USART_CR1_WAKE) 424 #define UART_AUTOBAUD_REQUEST ((uint32_t)USART_RQR_ABRRQ) 425 #define UART_SENDBREAK_REQUEST ((uint32_t)USART_RQR_SBKRQ) 426 #define UART_MUTE_MODE_REQUEST ((uint32_t)USART_RQR_MMRQ) 427 #define UART_RXDATA_FLUSH_REQUEST ((uint32_t)USART_RQR_RXFRQ) 428 #define UART_TXDATA_FLUSH_REQUEST ((uint32_t)USART_RQR_TXFRQ) 436 #define UART_ADVFEATURE_NO_INIT ((uint32_t)0x00000000U) 437 #define UART_ADVFEATURE_TXINVERT_INIT ((uint32_t)0x00000001U) 438 #define UART_ADVFEATURE_RXINVERT_INIT ((uint32_t)0x00000002U) 439 #define UART_ADVFEATURE_DATAINVERT_INIT ((uint32_t)0x00000004U) 440 #define UART_ADVFEATURE_SWAP_INIT ((uint32_t)0x00000008U) 441 #define UART_ADVFEATURE_RXOVERRUNDISABLE_INIT ((uint32_t)0x00000010U) 442 #define UART_ADVFEATURE_DMADISABLEONERROR_INIT ((uint32_t)0x00000020U) 443 #define UART_ADVFEATURE_AUTOBAUDRATE_INIT ((uint32_t)0x00000040U) 444 #define UART_ADVFEATURE_MSBFIRST_INIT ((uint32_t)0x00000080U) 452 #define UART_ADVFEATURE_TXINV_DISABLE ((uint32_t)0x00000000U) 453 #define UART_ADVFEATURE_TXINV_ENABLE ((uint32_t)USART_CR2_TXINV) 461 #define UART_ADVFEATURE_RXINV_DISABLE ((uint32_t)0x00000000U) 462 #define UART_ADVFEATURE_RXINV_ENABLE ((uint32_t)USART_CR2_RXINV) 470 #define UART_ADVFEATURE_DATAINV_DISABLE ((uint32_t)0x00000000U) 471 #define UART_ADVFEATURE_DATAINV_ENABLE ((uint32_t)USART_CR2_DATAINV) 479 #define UART_ADVFEATURE_SWAP_DISABLE ((uint32_t)0x00000000U) 480 #define UART_ADVFEATURE_SWAP_ENABLE ((uint32_t)USART_CR2_SWAP) 488 #define UART_ADVFEATURE_OVERRUN_ENABLE ((uint32_t)0x00000000U) 489 #define UART_ADVFEATURE_OVERRUN_DISABLE ((uint32_t)USART_CR3_OVRDIS) 497 #define UART_ADVFEATURE_AUTOBAUDRATE_DISABLE ((uint32_t)0x00000000U) 498 #define UART_ADVFEATURE_AUTOBAUDRATE_ENABLE ((uint32_t)USART_CR2_ABREN) 506 #define UART_ADVFEATURE_DMA_ENABLEONRXERROR ((uint32_t)0x00000000U) 507 #define UART_ADVFEATURE_DMA_DISABLEONRXERROR ((uint32_t)USART_CR3_DDRE) 515 #define UART_ADVFEATURE_MSBFIRST_DISABLE ((uint32_t)0x00000000U) 516 #define UART_ADVFEATURE_MSBFIRST_ENABLE ((uint32_t)USART_CR2_MSBFIRST) 524 #define UART_ADVFEATURE_MUTEMODE_DISABLE ((uint32_t)0x00000000U) 525 #define UART_ADVFEATURE_MUTEMODE_ENABLE ((uint32_t)USART_CR1_MME) 533 #define UART_CR2_ADDRESS_LSB_POS ((uint32_t) 24U) 541 #define UART_DE_POLARITY_HIGH ((uint32_t)0x00000000U) 542 #define UART_DE_POLARITY_LOW ((uint32_t)USART_CR3_DEP) 550 #define UART_CR1_DEAT_ADDRESS_LSB_POS ((uint32_t) 21U) 558 #define UART_CR1_DEDT_ADDRESS_LSB_POS ((uint32_t) 16U) 566 #define UART_IT_MASK ((uint32_t)0x001FU) 574 #define HAL_UART_TIMEOUT_VALUE 0x1FFFFFFU 584 #define UART_FLAG_TEACK ((uint32_t)0x00200000U) 585 #define UART_FLAG_SBKF ((uint32_t)0x00040000U) 586 #define UART_FLAG_CMF ((uint32_t)0x00020000U) 587 #define UART_FLAG_BUSY ((uint32_t)0x00010000U) 588 #define UART_FLAG_ABRF ((uint32_t)0x00008000U) 589 #define UART_FLAG_ABRE ((uint32_t)0x00004000U) 590 #define UART_FLAG_EOBF ((uint32_t)0x00001000U) 591 #define UART_FLAG_RTOF ((uint32_t)0x00000800U) 592 #define UART_FLAG_CTS ((uint32_t)0x00000400U) 593 #define UART_FLAG_CTSIF ((uint32_t)0x00000200U) 594 #define UART_FLAG_LBDF ((uint32_t)0x00000100U) 595 #define UART_FLAG_TXE ((uint32_t)0x00000080U) 596 #define UART_FLAG_TC ((uint32_t)0x00000040U) 597 #define UART_FLAG_RXNE ((uint32_t)0x00000020U) 598 #define UART_FLAG_IDLE ((uint32_t)0x00000010U) 599 #define UART_FLAG_ORE ((uint32_t)0x00000008U) 600 #define UART_FLAG_NE ((uint32_t)0x00000004U) 601 #define UART_FLAG_FE ((uint32_t)0x00000002U) 602 #define UART_FLAG_PE ((uint32_t)0x00000001U) 617 #define UART_IT_PE ((uint32_t)0x0028U) 618 #define UART_IT_TXE ((uint32_t)0x0727U) 619 #define UART_IT_TC ((uint32_t)0x0626U) 620 #define UART_IT_RXNE ((uint32_t)0x0525U) 621 #define UART_IT_IDLE ((uint32_t)0x0424U) 622 #define UART_IT_LBD ((uint32_t)0x0846U) 623 #define UART_IT_CTS ((uint32_t)0x096AU) 624 #define UART_IT_CM ((uint32_t)0x112EU) 633 #define UART_IT_ERR ((uint32_t)0x0060U) 638 #define UART_IT_ORE ((uint32_t)0x0300U) 639 #define UART_IT_NE ((uint32_t)0x0200U) 640 #define UART_IT_FE ((uint32_t)0x0100U) 648 #define UART_CLEAR_PEF USART_ICR_PECF 649 #define UART_CLEAR_FEF USART_ICR_FECF 650 #define UART_CLEAR_NEF USART_ICR_NCF 651 #define UART_CLEAR_OREF USART_ICR_ORECF 652 #define UART_CLEAR_IDLEF USART_ICR_IDLECF 653 #define UART_CLEAR_TCF USART_ICR_TCCF 654 #define UART_CLEAR_LBDF USART_ICR_LBDCF 655 #define UART_CLEAR_CTSF USART_ICR_CTSCF 656 #define UART_CLEAR_RTOF USART_ICR_RTOCF 657 #define UART_CLEAR_EOBF USART_ICR_EOBCF 658 #define UART_CLEAR_CMF USART_ICR_CMCF 677 #define __HAL_UART_RESET_HANDLE_STATE(__HANDLE__) do{ \ 678 (__HANDLE__)->gState = HAL_UART_STATE_RESET; \ 679 (__HANDLE__)->RxState = HAL_UART_STATE_RESET; \ 685 #define __HAL_UART_FLUSH_DRREGISTER(__HANDLE__) \ 687 SET_BIT((__HANDLE__)->Instance->RQR, UART_RXDATA_FLUSH_REQUEST); \ 688 SET_BIT((__HANDLE__)->Instance->RQR, UART_TXDATA_FLUSH_REQUEST); \ 709 #define __HAL_UART_CLEAR_IT(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->ICR = (uint32_t)(__FLAG__)) 715 #define __HAL_UART_CLEAR_PEFLAG(__HANDLE__) __HAL_UART_CLEAR_IT((__HANDLE__),UART_CLEAR_PEF) 721 #define __HAL_UART_CLEAR_FEFLAG(__HANDLE__) __HAL_UART_CLEAR_IT((__HANDLE__),UART_CLEAR_FEF) 727 #define __HAL_UART_CLEAR_NEFLAG(__HANDLE__) __HAL_UART_CLEAR_IT((__HANDLE__),UART_CLEAR_NEF) 733 #define __HAL_UART_CLEAR_OREFLAG(__HANDLE__) __HAL_UART_CLEAR_IT((__HANDLE__),UART_CLEAR_OREF) 739 #define __HAL_UART_CLEAR_IDLEFLAG(__HANDLE__) __HAL_UART_CLEAR_IT((__HANDLE__),UART_CLEAR_IDLEF) 768 #define __HAL_UART_GET_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->ISR & (__FLAG__)) == (__FLAG__)) 786 #define __HAL_UART_ENABLE_IT(__HANDLE__, __INTERRUPT__) (((((uint8_t)(__INTERRUPT__)) >> 5U) == 1)? ((__HANDLE__)->Instance->CR1 |= (1U << ((__INTERRUPT__) & UART_IT_MASK))): \ 787 ((((uint8_t)(__INTERRUPT__)) >> 5U) == 2)? ((__HANDLE__)->Instance->CR2 |= (1U << ((__INTERRUPT__) & UART_IT_MASK))): \ 788 ((__HANDLE__)->Instance->CR3 |= (1U << ((__INTERRUPT__) & UART_IT_MASK)))) 806 #define __HAL_UART_DISABLE_IT(__HANDLE__, __INTERRUPT__) (((((uint8_t)(__INTERRUPT__)) >> 5U) == 1)? ((__HANDLE__)->Instance->CR1 &= ~ (1U << ((__INTERRUPT__) & UART_IT_MASK))): \ 807 ((((uint8_t)(__INTERRUPT__)) >> 5U) == 2)? ((__HANDLE__)->Instance->CR2 &= ~ (1U << ((__INTERRUPT__) & UART_IT_MASK))): \ 808 ((__HANDLE__)->Instance->CR3 &= ~ (1U << ((__INTERRUPT__) & UART_IT_MASK)))) 827 #define __HAL_UART_GET_IT(__HANDLE__, __IT__) ((__HANDLE__)->Instance->ISR & ((uint32_t)1 << ((__IT__)>> 0x08))) 845 #define __HAL_UART_GET_IT_SOURCE(__HANDLE__, __IT__) ((((((uint8_t)(__IT__)) >> 5U) == 1)? (__HANDLE__)->Instance->CR1:(((((uint8_t)(__IT__)) >> 5U) == 2)? \ 846 (__HANDLE__)->Instance->CR2 : (__HANDLE__)->Instance->CR3)) & ((uint32_t)1 << (((uint16_t)(__IT__)) & UART_IT_MASK))) 859 #define __HAL_UART_SEND_REQ(__HANDLE__, __REQ__) ((__HANDLE__)->Instance->RQR |= (uint32_t)(__REQ__)) 865 #define __HAL_UART_ONE_BIT_SAMPLE_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR3|= USART_CR3_ONEBIT) 871 #define __HAL_UART_ONE_BIT_SAMPLE_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR3 &= (uint32_t)~((uint32_t)USART_CR3_ONEBIT)) 877 #define __HAL_UART_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1 |= USART_CR1_UE) 883 #define __HAL_UART_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1 &= ~USART_CR1_UE) 898 #define __HAL_UART_HWCONTROL_CTS_ENABLE(__HANDLE__) \ 900 SET_BIT((__HANDLE__)->Instance->CR3, USART_CR3_CTSE); \ 901 (__HANDLE__)->Init.HwFlowCtl |= USART_CR3_CTSE; \ 917 #define __HAL_UART_HWCONTROL_CTS_DISABLE(__HANDLE__) \ 919 CLEAR_BIT((__HANDLE__)->Instance->CR3, USART_CR3_CTSE); \ 920 (__HANDLE__)->Init.HwFlowCtl &= ~(USART_CR3_CTSE); \ 936 #define __HAL_UART_HWCONTROL_RTS_ENABLE(__HANDLE__) \ 938 SET_BIT((__HANDLE__)->Instance->CR3, USART_CR3_RTSE); \ 939 (__HANDLE__)->Init.HwFlowCtl |= USART_CR3_RTSE; \ 955 #define __HAL_UART_HWCONTROL_RTS_DISABLE(__HANDLE__) \ 957 CLEAR_BIT((__HANDLE__)->Instance->CR3, USART_CR3_RTSE);\ 958 (__HANDLE__)->Init.HwFlowCtl &= ~(USART_CR3_RTSE); \ 974 #define UART_DIV_LPUART(_PCLK_, _BAUD_) ((((_PCLK_)*256)+((_BAUD_)/2))/((_BAUD_))) 981 #define UART_DIV_SAMPLING8(_PCLK_, _BAUD_) ((((_PCLK_)*2)+((_BAUD_)/2))/((_BAUD_))) 988 #define UART_DIV_SAMPLING16(_PCLK_, _BAUD_) ((((_PCLK_))+((_BAUD_)/2))/((_BAUD_))) 996 #define IS_UART_BAUDRATE(BAUDRATE) ((BAUDRATE) < 9000001) 1002 #define IS_UART_ASSERTIONTIME(TIME) ((TIME) <= 0x1F) 1008 #define IS_UART_DEASSERTIONTIME(TIME) ((TIME) <= 0x1F) 1010 #define IS_UART_STOPBITS(STOPBITS) (((STOPBITS) == UART_STOPBITS_1) || \ 1011 ((STOPBITS) == UART_STOPBITS_2)) 1013 #define IS_UART_PARITY(PARITY) (((PARITY) == UART_PARITY_NONE) || \ 1014 ((PARITY) == UART_PARITY_EVEN) || \ 1015 ((PARITY) == UART_PARITY_ODD)) 1017 #define IS_UART_HARDWARE_FLOW_CONTROL(CONTROL)\ 1018 (((CONTROL) == UART_HWCONTROL_NONE) || \ 1019 ((CONTROL) == UART_HWCONTROL_RTS) || \ 1020 ((CONTROL) == UART_HWCONTROL_CTS) || \ 1021 ((CONTROL) == UART_HWCONTROL_RTS_CTS)) 1023 #define IS_UART_MODE(MODE) ((((MODE) & (~((uint32_t)(UART_MODE_TX_RX)))) == (uint32_t)0x00) && ((MODE) != (uint32_t)0x00)) 1025 #define IS_UART_STATE(STATE) (((STATE) == UART_STATE_DISABLE) || \ 1026 ((STATE) == UART_STATE_ENABLE)) 1028 #define IS_UART_OVERSAMPLING(SAMPLING) (((SAMPLING) == UART_OVERSAMPLING_16) || \ 1029 ((SAMPLING) == UART_OVERSAMPLING_8)) 1031 #define IS_UART_ONE_BIT_SAMPLE(ONEBIT) (((ONEBIT) == UART_ONE_BIT_SAMPLE_DISABLE) || \ 1032 ((ONEBIT) == UART_ONE_BIT_SAMPLE_ENABLE)) 1034 #define IS_UART_ADVFEATURE_AUTOBAUDRATEMODE(MODE) (((MODE) == UART_ADVFEATURE_AUTOBAUDRATE_ONSTARTBIT) || \ 1035 ((MODE) == UART_ADVFEATURE_AUTOBAUDRATE_ONFALLINGEDGE) || \ 1036 ((MODE) == UART_ADVFEATURE_AUTOBAUDRATE_ON0X7FFRAME) || \ 1037 ((MODE) == UART_ADVFEATURE_AUTOBAUDRATE_ON0X55FRAME)) 1039 #define IS_UART_RECEIVER_TIMEOUT(TIMEOUT) (((TIMEOUT) == UART_RECEIVER_TIMEOUT_DISABLE) || \ 1040 ((TIMEOUT) == UART_RECEIVER_TIMEOUT_ENABLE)) 1042 #define IS_UART_LIN(LIN) (((LIN) == UART_LIN_DISABLE) || \ 1043 ((LIN) == UART_LIN_ENABLE)) 1045 #define IS_UART_WAKEUPMETHOD(WAKEUP) (((WAKEUP) == UART_WAKEUPMETHOD_IDLELINE) || \ 1046 ((WAKEUP) == UART_WAKEUPMETHOD_ADDRESSMARK)) 1048 #define IS_UART_LIN_BREAK_DETECT_LENGTH(LENGTH) (((LENGTH) == UART_LINBREAKDETECTLENGTH_10B) || \ 1049 ((LENGTH) == UART_LINBREAKDETECTLENGTH_11B)) 1051 #define IS_UART_DMA_TX(DMATX) (((DMATX) == UART_DMA_TX_DISABLE) || \ 1052 ((DMATX) == UART_DMA_TX_ENABLE)) 1054 #define IS_UART_DMA_RX(DMARX) (((DMARX) == UART_DMA_RX_DISABLE) || \ 1055 ((DMARX) == UART_DMA_RX_ENABLE)) 1057 #define IS_UART_HALF_DUPLEX(HDSEL) (((HDSEL) == UART_HALF_DUPLEX_DISABLE) || \ 1058 ((HDSEL) == UART_HALF_DUPLEX_ENABLE)) 1060 #define IS_UART_REQUEST_PARAMETER(PARAM) (((PARAM) == UART_AUTOBAUD_REQUEST) || \ 1061 ((PARAM) == UART_SENDBREAK_REQUEST) || \ 1062 ((PARAM) == UART_MUTE_MODE_REQUEST) || \ 1063 ((PARAM) == UART_RXDATA_FLUSH_REQUEST) || \ 1064 ((PARAM) == UART_TXDATA_FLUSH_REQUEST)) 1066 #define IS_UART_ADVFEATURE_INIT(INIT) ((INIT) <= (UART_ADVFEATURE_NO_INIT | \ 1067 UART_ADVFEATURE_TXINVERT_INIT | \ 1068 UART_ADVFEATURE_RXINVERT_INIT | \ 1069 UART_ADVFEATURE_DATAINVERT_INIT | \ 1070 UART_ADVFEATURE_SWAP_INIT | \ 1071 UART_ADVFEATURE_RXOVERRUNDISABLE_INIT | \ 1072 UART_ADVFEATURE_DMADISABLEONERROR_INIT | \ 1073 UART_ADVFEATURE_AUTOBAUDRATE_INIT | \ 1074 UART_ADVFEATURE_MSBFIRST_INIT)) 1076 #define IS_UART_ADVFEATURE_TXINV(TXINV) (((TXINV) == UART_ADVFEATURE_TXINV_DISABLE) || \ 1077 ((TXINV) == UART_ADVFEATURE_TXINV_ENABLE)) 1079 #define IS_UART_ADVFEATURE_RXINV(RXINV) (((RXINV) == UART_ADVFEATURE_RXINV_DISABLE) || \ 1080 ((RXINV) == UART_ADVFEATURE_RXINV_ENABLE)) 1082 #define IS_UART_ADVFEATURE_DATAINV(DATAINV) (((DATAINV) == UART_ADVFEATURE_DATAINV_DISABLE) || \ 1083 ((DATAINV) == UART_ADVFEATURE_DATAINV_ENABLE)) 1085 #define IS_UART_ADVFEATURE_SWAP(SWAP) (((SWAP) == UART_ADVFEATURE_SWAP_DISABLE) || \ 1086 ((SWAP) == UART_ADVFEATURE_SWAP_ENABLE)) 1088 #define IS_UART_OVERRUN(OVERRUN) (((OVERRUN) == UART_ADVFEATURE_OVERRUN_ENABLE) || \ 1089 ((OVERRUN) == UART_ADVFEATURE_OVERRUN_DISABLE)) 1091 #define IS_UART_ADVFEATURE_AUTOBAUDRATE(AUTOBAUDRATE) (((AUTOBAUDRATE) == UART_ADVFEATURE_AUTOBAUDRATE_DISABLE) || \ 1092 ((AUTOBAUDRATE) == UART_ADVFEATURE_AUTOBAUDRATE_ENABLE)) 1094 #define IS_UART_ADVFEATURE_DMAONRXERROR(DMA) (((DMA) == UART_ADVFEATURE_DMA_ENABLEONRXERROR) || \ 1095 ((DMA) == UART_ADVFEATURE_DMA_DISABLEONRXERROR)) 1097 #define IS_UART_ADVFEATURE_MSBFIRST(MSBFIRST) (((MSBFIRST) == UART_ADVFEATURE_MSBFIRST_DISABLE) || \ 1098 ((MSBFIRST) == UART_ADVFEATURE_MSBFIRST_ENABLE)) 1100 #define IS_UART_MUTE_MODE(MUTE) (((MUTE) == UART_ADVFEATURE_MUTEMODE_DISABLE) || \ 1101 ((MUTE) == UART_ADVFEATURE_MUTEMODE_ENABLE)) 1103 #define IS_UART_DE_POLARITY(POLARITY) (((POLARITY) == UART_DE_POLARITY_HIGH) || \ 1104 ((POLARITY) == UART_DE_POLARITY_LOW)) uint32_t DMADisableonRxError
HAL_StatusTypeDef HAL_UART_DMAStop(UART_HandleTypeDef *huart)
HAL_StatusTypeDef HAL_MultiProcessor_EnableMuteMode(UART_HandleTypeDef *huart)
HAL_StatusTypeDef HAL_MultiProcessor_Init(UART_HandleTypeDef *huart, uint8_t Address, uint32_t WakeUpMethod)
uint32_t AutoBaudRateMode
HAL_StatusTypeDef HAL_UART_DMAPause(UART_HandleTypeDef *huart)
void UART_AdvFeatureConfig(UART_HandleTypeDef *huart)
UART_AdvFeatureInitTypeDef AdvancedInit
void HAL_UART_IRQHandler(UART_HandleTypeDef *huart)
HAL_StatusTypeDef HAL_HalfDuplex_EnableReceiver(UART_HandleTypeDef *huart)
HAL_StatusTypeDef HAL_UART_Receive(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout)
HAL_StatusTypeDef UART_WaitOnFlagUntilTimeout(UART_HandleTypeDef *huart, uint32_t Flag, FlagStatus Status, uint32_t Tickstart, uint32_t Timeout)
HAL_StatusTypeDef HAL_UART_Transmit_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
HAL_LockTypeDef
HAL Lock structures definition.
__IO HAL_UART_StateTypeDef RxState
DMA_HandleTypeDef * hdmatx
void HAL_UART_MspDeInit(UART_HandleTypeDef *huart)
void HAL_MultiProcessor_EnterMuteMode(UART_HandleTypeDef *huart)
DMA_HandleTypeDef * hdmarx
Header file of UART HAL Extension module.
HAL_StatusTypeDef HAL_MultiProcessorEx_AddressLength_Set(UART_HandleTypeDef *huart, uint32_t AddressLength)
HAL_StatusTypeDef HAL_HalfDuplex_Init(UART_HandleTypeDef *huart)
HAL_StatusTypeDef HAL_UART_Receive_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
HAL_StatusTypeDef HAL_UART_DeInit(UART_HandleTypeDef *huart)
__IO HAL_UART_StateTypeDef gState
UART Advanced Features initialization structure definition.
UART_ClockSourceTypeDef
UART clock sources definition.
Universal Synchronous Asynchronous Receiver Transmitter.
uint32_t RxPinLevelInvert
HAL_StatusTypeDef HAL_HalfDuplex_EnableTransmitter(UART_HandleTypeDef *huart)
uint32_t TxPinLevelInvert
HAL_StatusTypeDef UART_SetConfig(UART_HandleTypeDef *huart)
HAL_StatusTypeDef HAL_LIN_Init(UART_HandleTypeDef *huart, uint32_t BreakDetectLength)
HAL_StatusTypeDef UART_CheckIdleState(UART_HandleTypeDef *huart)
HAL_StatusTypeDef HAL_UART_DMAResume(UART_HandleTypeDef *huart)
HAL_StatusTypeDef HAL_RS485Ex_Init(UART_HandleTypeDef *huart, uint32_t Polarity, uint32_t AssertionTime, uint32_t DeassertionTime)
uint32_t HAL_UART_GetError(UART_HandleTypeDef *huart)
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
HAL_StatusTypeDef HAL_UART_Init(UART_HandleTypeDef *huart)
HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout)
HAL_UART_StateTypeDef
HAL UART State structures definition.
DMA handle Structure definition.
HAL_StatusTypeDef HAL_LIN_SendBreak(UART_HandleTypeDef *huart)
void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart)
This file contains HAL common defines, enumeration, macros and structures definitions.
HAL_StatusTypeDef HAL_UART_Transmit_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
void HAL_UART_ErrorCallback(UART_HandleTypeDef *huart)
void HAL_UART_MspInit(UART_HandleTypeDef *huart)
void HAL_UART_TxHalfCpltCallback(UART_HandleTypeDef *huart)
void HAL_UART_RxHalfCpltCallback(UART_HandleTypeDef *huart)
HAL_UART_StateTypeDef HAL_UART_GetState(UART_HandleTypeDef *huart)
UART Init Structure definition.
HAL_StatusTypeDef HAL_MultiProcessor_DisableMuteMode(UART_HandleTypeDef *huart)
HAL_StatusTypeDef
HAL Status structures definition.
uint32_t AutoBaudRateEnable
UART handle Structure definition.
HAL_StatusTypeDef HAL_UART_Receive_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)