STM32F439xx HAL User Manual
Data Structures | Defines | Enumerations | Functions
stm32f4xx_hal_irda.h File Reference

Header file of IRDA HAL module. More...

#include "stm32f4xx_hal_def.h"

Go to the source code of this file.

Data Structures

struct  IRDA_InitTypeDef
 IRDA Init Structure definition. More...
struct  IRDA_HandleTypeDef
 IRDA handle Structure definition. More...

Defines

#define HAL_IRDA_ERROR_NONE   0x00000000U
#define HAL_IRDA_ERROR_PE   0x00000001U
#define HAL_IRDA_ERROR_NE   0x00000002U
#define HAL_IRDA_ERROR_FE   0x00000004U
#define HAL_IRDA_ERROR_ORE   0x00000008U
#define HAL_IRDA_ERROR_DMA   0x00000010U
#define IRDA_WORDLENGTH_8B   0x00000000U
#define IRDA_WORDLENGTH_9B   ((uint32_t)USART_CR1_M)
#define IRDA_PARITY_NONE   0x00000000U
#define IRDA_PARITY_EVEN   ((uint32_t)USART_CR1_PCE)
#define IRDA_PARITY_ODD   ((uint32_t)(USART_CR1_PCE | USART_CR1_PS))
#define IRDA_MODE_RX   ((uint32_t)USART_CR1_RE)
#define IRDA_MODE_TX   ((uint32_t)USART_CR1_TE)
#define IRDA_MODE_TX_RX   ((uint32_t)(USART_CR1_TE |USART_CR1_RE))
#define IRDA_POWERMODE_LOWPOWER   ((uint32_t)USART_CR3_IRLP)
#define IRDA_POWERMODE_NORMAL   0x00000000U
#define IRDA_FLAG_TXE   0x00000080U
#define IRDA_FLAG_TC   0x00000040U
#define IRDA_FLAG_RXNE   0x00000020U
#define IRDA_FLAG_IDLE   0x00000010U
#define IRDA_FLAG_ORE   0x00000008U
#define IRDA_FLAG_NE   0x00000004U
#define IRDA_FLAG_FE   0x00000002U
#define IRDA_FLAG_PE   0x00000001U
#define IRDA_IT_PE   ((uint32_t)(IRDA_CR1_REG_INDEX << 28U | USART_CR1_PEIE))
#define IRDA_IT_TXE   ((uint32_t)(IRDA_CR1_REG_INDEX << 28U | USART_CR1_TXEIE))
#define IRDA_IT_TC   ((uint32_t)(IRDA_CR1_REG_INDEX << 28U | USART_CR1_TCIE))
#define IRDA_IT_RXNE   ((uint32_t)(IRDA_CR1_REG_INDEX << 28U | USART_CR1_RXNEIE))
#define IRDA_IT_IDLE   ((uint32_t)(IRDA_CR1_REG_INDEX << 28U | USART_CR1_IDLEIE))
#define IRDA_IT_LBD   ((uint32_t)(IRDA_CR2_REG_INDEX << 28U | USART_CR2_LBDIE))
#define IRDA_IT_CTS   ((uint32_t)(IRDA_CR3_REG_INDEX << 28U | USART_CR3_CTSIE))
#define IRDA_IT_ERR   ((uint32_t)(IRDA_CR3_REG_INDEX << 28U | USART_CR3_EIE))
#define __HAL_IRDA_RESET_HANDLE_STATE(__HANDLE__)
 Reset IRDA handle gstate & RxState.
#define __HAL_IRDA_FLUSH_DRREGISTER(__HANDLE__)   ((__HANDLE__)->Instance->DR)
 Flushs the IRDA DR register.
#define __HAL_IRDA_GET_FLAG(__HANDLE__, __FLAG__)   (((__HANDLE__)->Instance->SR & (__FLAG__)) == (__FLAG__))
 Checks whether the specified IRDA flag is set or not.
#define __HAL_IRDA_CLEAR_FLAG(__HANDLE__, __FLAG__)   ((__HANDLE__)->Instance->SR = ~(__FLAG__))
 Clears the specified IRDA pending flag.
#define __HAL_IRDA_CLEAR_PEFLAG(__HANDLE__)
 Clear the IRDA PE pending flag.
#define __HAL_IRDA_CLEAR_FEFLAG(__HANDLE__)   __HAL_IRDA_CLEAR_PEFLAG(__HANDLE__)
 Clear the IRDA FE pending flag.
#define __HAL_IRDA_CLEAR_NEFLAG(__HANDLE__)   __HAL_IRDA_CLEAR_PEFLAG(__HANDLE__)
 Clear the IRDA NE pending flag.
#define __HAL_IRDA_CLEAR_OREFLAG(__HANDLE__)   __HAL_IRDA_CLEAR_PEFLAG(__HANDLE__)
 Clear the IRDA ORE pending flag.
#define __HAL_IRDA_CLEAR_IDLEFLAG(__HANDLE__)   __HAL_IRDA_CLEAR_PEFLAG(__HANDLE__)
 Clear the IRDA IDLE pending flag.
#define __HAL_IRDA_ENABLE_IT(__HANDLE__, __INTERRUPT__)
 Enables or disables the specified IRDA interrupt.
#define __HAL_IRDA_DISABLE_IT(__HANDLE__, __INTERRUPT__)
#define __HAL_IRDA_GET_IT_SOURCE(__HANDLE__, __IT__)
 Checks whether the specified IRDA interrupt has occurred or not.
#define __HAL_IRDA_ONE_BIT_SAMPLE_ENABLE(__HANDLE__)   ((__HANDLE__)->Instance->CR3|= USART_CR3_ONEBIT)
 Macro to enable the IRDA's one bit sample method.
#define __HAL_IRDA_ONE_BIT_SAMPLE_DISABLE(__HANDLE__)   ((__HANDLE__)->Instance->CR3 &= (uint16_t)~((uint16_t)USART_CR3_ONEBIT))
 Macro to disable the IRDA's one bit sample method.
#define __HAL_IRDA_ENABLE(__HANDLE__)   ((__HANDLE__)->Instance->CR1 |= USART_CR1_UE)
 Enable UART/USART associated to IRDA Handle.
#define __HAL_IRDA_DISABLE(__HANDLE__)   ((__HANDLE__)->Instance->CR1 &= ~USART_CR1_UE)
 Disable UART/USART associated to IRDA Handle.
#define IRDA_IT_MASK
 IRDA interruptions flag mask.
#define IRDA_CR1_REG_INDEX   1U
#define IRDA_CR2_REG_INDEX   2U
#define IRDA_CR3_REG_INDEX   3U
#define IS_IRDA_WORD_LENGTH(LENGTH)
#define IS_IRDA_PARITY(PARITY)
#define IS_IRDA_MODE(MODE)   ((((MODE) & 0x0000FFF3U) == 0x00U) && ((MODE) != 0x00000000U))
#define IS_IRDA_POWERMODE(MODE)
#define IS_IRDA_BAUDRATE(BAUDRATE)   ((BAUDRATE) < 115201U)
#define IRDA_DIV(_PCLK_, _BAUD_)   (((_PCLK_)*25U)/(4U*(_BAUD_)))
#define IRDA_DIVMANT(_PCLK_, _BAUD_)   (IRDA_DIV((_PCLK_), (_BAUD_))/100U)
#define IRDA_DIVFRAQ(_PCLK_, _BAUD_)   (((IRDA_DIV((_PCLK_), (_BAUD_)) - (IRDA_DIVMANT((_PCLK_), (_BAUD_)) * 100U)) * 16U + 50U) / 100U)
#define IRDA_BRR(_PCLK_, _BAUD_)

Enumerations

enum  HAL_IRDA_StateTypeDef {
  HAL_IRDA_STATE_RESET = 0x00U, HAL_IRDA_STATE_READY = 0x20U, HAL_IRDA_STATE_BUSY = 0x24U, HAL_IRDA_STATE_BUSY_TX = 0x21U,
  HAL_IRDA_STATE_BUSY_RX = 0x22U, HAL_IRDA_STATE_BUSY_TX_RX = 0x23U, HAL_IRDA_STATE_TIMEOUT = 0xA0U, HAL_IRDA_STATE_ERROR = 0xE0U
}
 HAL IRDA State structures definition. More...

Functions

HAL_StatusTypeDef HAL_IRDA_Init (IRDA_HandleTypeDef *hirda)
 Initializes the IRDA mode according to the specified parameters in the IRDA_InitTypeDef and create the associated handle.
HAL_StatusTypeDef HAL_IRDA_DeInit (IRDA_HandleTypeDef *hirda)
 DeInitializes the IRDA peripheral.
__weak void HAL_IRDA_MspInit (IRDA_HandleTypeDef *hirda)
 IRDA MSP Init.
__weak void HAL_IRDA_MspDeInit (IRDA_HandleTypeDef *hirda)
 IRDA MSP DeInit.
HAL_StatusTypeDef HAL_IRDA_Transmit (IRDA_HandleTypeDef *hirda, uint8_t *pData, uint16_t Size, uint32_t Timeout)
 Sends an amount of data in blocking mode.
HAL_StatusTypeDef HAL_IRDA_Receive (IRDA_HandleTypeDef *hirda, uint8_t *pData, uint16_t Size, uint32_t Timeout)
 Receive an amount of data in blocking mode.
HAL_StatusTypeDef HAL_IRDA_Transmit_IT (IRDA_HandleTypeDef *hirda, uint8_t *pData, uint16_t Size)
 Send an amount of data in non blocking mode.
HAL_StatusTypeDef HAL_IRDA_Receive_IT (IRDA_HandleTypeDef *hirda, uint8_t *pData, uint16_t Size)
 Receives an amount of data in non blocking mode.
HAL_StatusTypeDef HAL_IRDA_Transmit_DMA (IRDA_HandleTypeDef *hirda, uint8_t *pData, uint16_t Size)
 Sends an amount of data in non blocking mode.
HAL_StatusTypeDef HAL_IRDA_Receive_DMA (IRDA_HandleTypeDef *hirda, uint8_t *pData, uint16_t Size)
 Receives an amount of data in non blocking mode.
HAL_StatusTypeDef HAL_IRDA_DMAPause (IRDA_HandleTypeDef *hirda)
 Pauses the DMA Transfer.
HAL_StatusTypeDef HAL_IRDA_DMAResume (IRDA_HandleTypeDef *hirda)
 Resumes the DMA Transfer.
HAL_StatusTypeDef HAL_IRDA_DMAStop (IRDA_HandleTypeDef *hirda)
 Stops the DMA Transfer.
HAL_StatusTypeDef HAL_IRDA_Abort (IRDA_HandleTypeDef *hirda)
 Abort ongoing transfers (blocking mode).
HAL_StatusTypeDef HAL_IRDA_AbortTransmit (IRDA_HandleTypeDef *hirda)
 Abort ongoing Transmit transfer (blocking mode).
HAL_StatusTypeDef HAL_IRDA_AbortReceive (IRDA_HandleTypeDef *hirda)
 Abort ongoing Receive transfer (blocking mode).
HAL_StatusTypeDef HAL_IRDA_Abort_IT (IRDA_HandleTypeDef *hirda)
 Abort ongoing transfers (Interrupt mode).
HAL_StatusTypeDef HAL_IRDA_AbortTransmit_IT (IRDA_HandleTypeDef *hirda)
 Abort ongoing Transmit transfer (Interrupt mode).
HAL_StatusTypeDef HAL_IRDA_AbortReceive_IT (IRDA_HandleTypeDef *hirda)
 Abort ongoing Receive transfer (Interrupt mode).
void HAL_IRDA_IRQHandler (IRDA_HandleTypeDef *hirda)
 This function handles IRDA interrupt request.
__weak void HAL_IRDA_TxCpltCallback (IRDA_HandleTypeDef *hirda)
 Tx Transfer complete callbacks.
__weak void HAL_IRDA_RxCpltCallback (IRDA_HandleTypeDef *hirda)
 Rx Transfer complete callbacks.
__weak void HAL_IRDA_TxHalfCpltCallback (IRDA_HandleTypeDef *hirda)
 Tx Half Transfer completed callbacks.
__weak void HAL_IRDA_RxHalfCpltCallback (IRDA_HandleTypeDef *hirda)
 Rx Half Transfer complete callbacks.
__weak void HAL_IRDA_ErrorCallback (IRDA_HandleTypeDef *hirda)
 IRDA error callbacks.
__weak void HAL_IRDA_AbortCpltCallback (IRDA_HandleTypeDef *hirda)
 IRDA Abort Complete callback.
__weak void HAL_IRDA_AbortTransmitCpltCallback (IRDA_HandleTypeDef *hirda)
 IRDA Abort Transmit Complete callback.
__weak void HAL_IRDA_AbortReceiveCpltCallback (IRDA_HandleTypeDef *hirda)
 IRDA Abort ReceiveComplete callback.
HAL_IRDA_StateTypeDef HAL_IRDA_GetState (IRDA_HandleTypeDef *hirda)
 Returns the IRDA state.
uint32_t HAL_IRDA_GetError (IRDA_HandleTypeDef *hirda)
 Return the IARDA error code.

Detailed Description

Header file of IRDA HAL module.

Author:
MCD Application Team
Attention:

© COPYRIGHT(c) 2017 STMicroelectronics

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of STMicroelectronics nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file stm32f4xx_hal_irda.h.