STM32F4xx HAL Documentation
Hardware Abstraction Layer for STM32F4 familiy
Loading...
Searching...
No Matches
stm32f4xx_hal_fmpsmbus.h File Reference

Header file of FMPSMBUS HAL module. More...

Include dependency graph for stm32f4xx_hal_fmpsmbus.h:

Go to the source code of this file.

Data Structures

struct  FMPSMBUS_InitTypeDef
 
struct  FMPSMBUS_HandleTypeDef
 

Macros

#define HAL_FMPSMBUS_STATE_RESET   (0x00000000U)
 
#define HAL_FMPSMBUS_STATE_READY   (0x00000001U)
 
#define HAL_FMPSMBUS_STATE_BUSY   (0x00000002U)
 
#define HAL_FMPSMBUS_STATE_MASTER_BUSY_TX   (0x00000012U)
 
#define HAL_FMPSMBUS_STATE_MASTER_BUSY_RX   (0x00000022U)
 
#define HAL_FMPSMBUS_STATE_SLAVE_BUSY_TX   (0x00000032U)
 
#define HAL_FMPSMBUS_STATE_SLAVE_BUSY_RX   (0x00000042U)
 
#define HAL_FMPSMBUS_STATE_LISTEN   (0x00000008U)
 
#define HAL_FMPSMBUS_ERROR_NONE   (0x00000000U)
 
#define HAL_FMPSMBUS_ERROR_BERR   (0x00000001U)
 
#define HAL_FMPSMBUS_ERROR_ARLO   (0x00000002U)
 
#define HAL_FMPSMBUS_ERROR_ACKF   (0x00000004U)
 
#define HAL_FMPSMBUS_ERROR_OVR   (0x00000008U)
 
#define HAL_FMPSMBUS_ERROR_HALTIMEOUT   (0x00000010U)
 
#define HAL_FMPSMBUS_ERROR_BUSTIMEOUT   (0x00000020U)
 
#define HAL_FMPSMBUS_ERROR_ALERT   (0x00000040U)
 
#define HAL_FMPSMBUS_ERROR_PECERR   (0x00000080U)
 
#define HAL_FMPSMBUS_ERROR_INVALID_PARAM   (0x00000200U)
 
#define FMPSMBUS_ANALOGFILTER_ENABLE   (0x00000000U)
 
#define FMPSMBUS_ANALOGFILTER_DISABLE   FMPI2C_CR1_ANFOFF
 
#define FMPSMBUS_ADDRESSINGMODE_7BIT   (0x00000001U)
 
#define FMPSMBUS_ADDRESSINGMODE_10BIT   (0x00000002U)
 
#define FMPSMBUS_DUALADDRESS_DISABLE   (0x00000000U)
 
#define FMPSMBUS_DUALADDRESS_ENABLE   FMPI2C_OAR2_OA2EN
 
#define FMPSMBUS_OA2_NOMASK   ((uint8_t)0x00U)
 
#define FMPSMBUS_OA2_MASK01   ((uint8_t)0x01U)
 
#define FMPSMBUS_OA2_MASK02   ((uint8_t)0x02U)
 
#define FMPSMBUS_OA2_MASK03   ((uint8_t)0x03U)
 
#define FMPSMBUS_OA2_MASK04   ((uint8_t)0x04U)
 
#define FMPSMBUS_OA2_MASK05   ((uint8_t)0x05U)
 
#define FMPSMBUS_OA2_MASK06   ((uint8_t)0x06U)
 
#define FMPSMBUS_OA2_MASK07   ((uint8_t)0x07U)
 
#define FMPSMBUS_GENERALCALL_DISABLE   (0x00000000U)
 
#define FMPSMBUS_GENERALCALL_ENABLE   FMPI2C_CR1_GCEN
 
#define FMPSMBUS_NOSTRETCH_DISABLE   (0x00000000U)
 
#define FMPSMBUS_NOSTRETCH_ENABLE   FMPI2C_CR1_NOSTRETCH
 
#define FMPSMBUS_PEC_DISABLE   (0x00000000U)
 
#define FMPSMBUS_PEC_ENABLE   FMPI2C_CR1_PECEN
 
#define FMPSMBUS_PERIPHERAL_MODE_FMPSMBUS_HOST   FMPI2C_CR1_SMBHEN
 
#define FMPSMBUS_PERIPHERAL_MODE_FMPSMBUS_SLAVE   (0x00000000U)
 
#define FMPSMBUS_PERIPHERAL_MODE_FMPSMBUS_SLAVE_ARP   FMPI2C_CR1_SMBDEN
 
#define FMPSMBUS_SOFTEND_MODE   (0x00000000U)
 
#define FMPSMBUS_RELOAD_MODE   FMPI2C_CR2_RELOAD
 
#define FMPSMBUS_AUTOEND_MODE   FMPI2C_CR2_AUTOEND
 
#define FMPSMBUS_SENDPEC_MODE   FMPI2C_CR2_PECBYTE
 
#define FMPSMBUS_NO_STARTSTOP   (0x00000000U)
 
#define FMPSMBUS_GENERATE_STOP   (uint32_t)(0x80000000U | FMPI2C_CR2_STOP)
 
#define FMPSMBUS_GENERATE_START_READ   (uint32_t)(0x80000000U | FMPI2C_CR2_START | FMPI2C_CR2_RD_WRN)
 
#define FMPSMBUS_GENERATE_START_WRITE   (uint32_t)(0x80000000U | FMPI2C_CR2_START)
 
#define FMPSMBUS_FIRST_FRAME   FMPSMBUS_SOFTEND_MODE
 
#define FMPSMBUS_NEXT_FRAME   ((uint32_t)(FMPSMBUS_RELOAD_MODE | FMPSMBUS_SOFTEND_MODE))
 
#define FMPSMBUS_FIRST_AND_LAST_FRAME_NO_PEC   FMPSMBUS_AUTOEND_MODE
 
#define FMPSMBUS_LAST_FRAME_NO_PEC   FMPSMBUS_AUTOEND_MODE
 
#define FMPSMBUS_FIRST_FRAME_WITH_PEC   ((uint32_t)(FMPSMBUS_SOFTEND_MODE | FMPSMBUS_SENDPEC_MODE))
 
#define FMPSMBUS_FIRST_AND_LAST_FRAME_WITH_PEC   ((uint32_t)(FMPSMBUS_AUTOEND_MODE | FMPSMBUS_SENDPEC_MODE))
 
#define FMPSMBUS_LAST_FRAME_WITH_PEC   ((uint32_t)(FMPSMBUS_AUTOEND_MODE | FMPSMBUS_SENDPEC_MODE))
 
#define FMPSMBUS_OTHER_FRAME_NO_PEC   (0x000000AAU)
 
#define FMPSMBUS_OTHER_FRAME_WITH_PEC   (0x0000AA00U)
 
#define FMPSMBUS_OTHER_AND_LAST_FRAME_NO_PEC   (0x00AA0000U)
 
#define FMPSMBUS_OTHER_AND_LAST_FRAME_WITH_PEC   (0xAA000000U)
 
#define FMPSMBUS_IT_ERRI   FMPI2C_CR1_ERRIE
 
#define FMPSMBUS_IT_TCI   FMPI2C_CR1_TCIE
 
#define FMPSMBUS_IT_STOPI   FMPI2C_CR1_STOPIE
 
#define FMPSMBUS_IT_NACKI   FMPI2C_CR1_NACKIE
 
#define FMPSMBUS_IT_ADDRI   FMPI2C_CR1_ADDRIE
 
#define FMPSMBUS_IT_RXI   FMPI2C_CR1_RXIE
 
#define FMPSMBUS_IT_TXI   FMPI2C_CR1_TXIE
 
#define FMPSMBUS_IT_TX
 
#define FMPSMBUS_IT_RX
 
#define FMPSMBUS_IT_ALERT   (FMPSMBUS_IT_ERRI)
 
#define FMPSMBUS_IT_ADDR   (FMPSMBUS_IT_ADDRI | FMPSMBUS_IT_STOPI | FMPSMBUS_IT_NACKI)
 
#define FMPSMBUS_FLAG_TXE   FMPI2C_ISR_TXE
 
#define FMPSMBUS_FLAG_TXIS   FMPI2C_ISR_TXIS
 
#define FMPSMBUS_FLAG_RXNE   FMPI2C_ISR_RXNE
 
#define FMPSMBUS_FLAG_ADDR   FMPI2C_ISR_ADDR
 
#define FMPSMBUS_FLAG_AF   FMPI2C_ISR_NACKF
 
#define FMPSMBUS_FLAG_STOPF   FMPI2C_ISR_STOPF
 
#define FMPSMBUS_FLAG_TC   FMPI2C_ISR_TC
 
#define FMPSMBUS_FLAG_TCR   FMPI2C_ISR_TCR
 
#define FMPSMBUS_FLAG_BERR   FMPI2C_ISR_BERR
 
#define FMPSMBUS_FLAG_ARLO   FMPI2C_ISR_ARLO
 
#define FMPSMBUS_FLAG_OVR   FMPI2C_ISR_OVR
 
#define FMPSMBUS_FLAG_PECERR   FMPI2C_ISR_PECERR
 
#define FMPSMBUS_FLAG_TIMEOUT   FMPI2C_ISR_TIMEOUT
 
#define FMPSMBUS_FLAG_ALERT   FMPI2C_ISR_ALERT
 
#define FMPSMBUS_FLAG_BUSY   FMPI2C_ISR_BUSY
 
#define FMPSMBUS_FLAG_DIR   FMPI2C_ISR_DIR
 
#define __HAL_FMPSMBUS_RESET_HANDLE_STATE(__HANDLE__)
 Reset FMPSMBUS handle state.
 
#define __HAL_FMPSMBUS_ENABLE_IT(__HANDLE__, __INTERRUPT__)
 Enable the specified FMPSMBUS interrupts.
 
#define __HAL_FMPSMBUS_DISABLE_IT(__HANDLE__, __INTERRUPT__)
 Disable the specified FMPSMBUS interrupts.
 
#define __HAL_FMPSMBUS_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)
 Check whether the specified FMPSMBUS interrupt source is enabled or not.
 
#define FMPSMBUS_FLAG_MASK   (0x0001FFFFU)
 Check whether the specified FMPSMBUS flag is set or not.
 
#define __HAL_FMPSMBUS_GET_FLAG(__HANDLE__, __FLAG__)
 
#define __HAL_FMPSMBUS_CLEAR_FLAG(__HANDLE__, __FLAG__)
 Clear the FMPSMBUS pending flags which are cleared by writing 1 in a specific bit.
 
#define __HAL_FMPSMBUS_ENABLE(__HANDLE__)
 Enable the specified FMPSMBUS peripheral.
 
#define __HAL_FMPSMBUS_DISABLE(__HANDLE__)
 Disable the specified FMPSMBUS peripheral.
 
#define __HAL_FMPSMBUS_GENERATE_NACK(__HANDLE__)
 Generate a Non-Acknowledge FMPSMBUS peripheral in Slave mode.
 
#define IS_FMPSMBUS_ANALOG_FILTER(FILTER)
 
#define IS_FMPSMBUS_DIGITAL_FILTER(FILTER)
 
#define IS_FMPSMBUS_ADDRESSING_MODE(MODE)
 
#define IS_FMPSMBUS_DUAL_ADDRESS(ADDRESS)
 
#define IS_FMPSMBUS_OWN_ADDRESS2_MASK(MASK)
 
#define IS_FMPSMBUS_GENERAL_CALL(CALL)
 
#define IS_FMPSMBUS_NO_STRETCH(STRETCH)
 
#define IS_FMPSMBUS_PEC(PEC)
 
#define IS_FMPSMBUS_PERIPHERAL_MODE(MODE)
 
#define IS_FMPSMBUS_TRANSFER_MODE(MODE)
 
#define IS_FMPSMBUS_TRANSFER_REQUEST(REQUEST)
 
#define IS_FMPSMBUS_TRANSFER_OPTIONS_REQUEST(REQUEST)
 
#define IS_FMPSMBUS_TRANSFER_OTHER_OPTIONS_REQUEST(REQUEST)
 
#define FMPSMBUS_RESET_CR1(__HANDLE__)
 
#define FMPSMBUS_RESET_CR2(__HANDLE__)
 
#define FMPSMBUS_GENERATE_START(__ADDMODE__, __ADDRESS__)
 
#define FMPSMBUS_GET_ADDR_MATCH(__HANDLE__)
 
#define FMPSMBUS_GET_DIR(__HANDLE__)
 
#define FMPSMBUS_GET_STOP_MODE(__HANDLE__)
 
#define FMPSMBUS_GET_PEC_MODE(__HANDLE__)
 
#define FMPSMBUS_GET_ALERT_ENABLED(__HANDLE__)
 
#define FMPSMBUS_CHECK_FLAG(__ISR__, __FLAG__)
 
#define FMPSMBUS_CHECK_IT_SOURCE(__CR1__, __IT__)
 
#define IS_FMPSMBUS_OWN_ADDRESS1(ADDRESS1)
 
#define IS_FMPSMBUS_OWN_ADDRESS2(ADDRESS2)
 

Functions

HAL_StatusTypeDef HAL_FMPSMBUS_Init (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Initialize the FMPSMBUS according to the specified parameters in the FMPSMBUS_InitTypeDef and initialize the associated handle.
 
HAL_StatusTypeDef HAL_FMPSMBUS_DeInit (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 DeInitialize the FMPSMBUS peripheral.
 
void HAL_FMPSMBUS_MspInit (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Initialize the FMPSMBUS MSP.
 
void HAL_FMPSMBUS_MspDeInit (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 DeInitialize the FMPSMBUS MSP.
 
HAL_StatusTypeDef HAL_FMPSMBUS_ConfigAnalogFilter (FMPSMBUS_HandleTypeDef *hfmpsmbus, uint32_t AnalogFilter)
 Configure Analog noise filter.
 
HAL_StatusTypeDef HAL_FMPSMBUS_ConfigDigitalFilter (FMPSMBUS_HandleTypeDef *hfmpsmbus, uint32_t DigitalFilter)
 Configure Digital noise filter.
 
HAL_StatusTypeDef HAL_FMPSMBUS_IsDeviceReady (FMPSMBUS_HandleTypeDef *hfmpsmbus, uint16_t DevAddress, uint32_t Trials, uint32_t Timeout)
 Check if target device is ready for communication.
 
HAL_StatusTypeDef HAL_FMPSMBUS_Master_Transmit_IT (FMPSMBUS_HandleTypeDef *hfmpsmbus, uint16_t DevAddress, uint8_t *pData, uint16_t Size, uint32_t XferOptions)
 Transmit in master/host FMPSMBUS mode an amount of data in non-blocking mode with Interrupt.
 
HAL_StatusTypeDef HAL_FMPSMBUS_Master_Receive_IT (FMPSMBUS_HandleTypeDef *hfmpsmbus, uint16_t DevAddress, uint8_t *pData, uint16_t Size, uint32_t XferOptions)
 Receive in master/host FMPSMBUS mode an amount of data in non-blocking mode with Interrupt.
 
HAL_StatusTypeDef HAL_FMPSMBUS_Master_Abort_IT (FMPSMBUS_HandleTypeDef *hfmpsmbus, uint16_t DevAddress)
 Abort a master/host FMPSMBUS process communication with Interrupt.
 
HAL_StatusTypeDef HAL_FMPSMBUS_Slave_Transmit_IT (FMPSMBUS_HandleTypeDef *hfmpsmbus, uint8_t *pData, uint16_t Size, uint32_t XferOptions)
 Transmit in slave/device FMPSMBUS mode an amount of data in non-blocking mode with Interrupt.
 
HAL_StatusTypeDef HAL_FMPSMBUS_Slave_Receive_IT (FMPSMBUS_HandleTypeDef *hfmpsmbus, uint8_t *pData, uint16_t Size, uint32_t XferOptions)
 Receive in slave/device FMPSMBUS mode an amount of data in non-blocking mode with Interrupt.
 
HAL_StatusTypeDef HAL_FMPSMBUS_EnableAlert_IT (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Enable the FMPSMBUS alert mode with Interrupt.
 
HAL_StatusTypeDef HAL_FMPSMBUS_DisableAlert_IT (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Disable the FMPSMBUS alert mode with Interrupt.
 
HAL_StatusTypeDef HAL_FMPSMBUS_EnableListen_IT (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Enable the Address listen mode with Interrupt.
 
HAL_StatusTypeDef HAL_FMPSMBUS_DisableListen_IT (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Disable the Address listen mode with Interrupt.
 
void HAL_FMPSMBUS_EV_IRQHandler (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Handle FMPSMBUS event interrupt request.
 
void HAL_FMPSMBUS_ER_IRQHandler (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Handle FMPSMBUS error interrupt request.
 
void HAL_FMPSMBUS_MasterTxCpltCallback (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Master Tx Transfer completed callback.
 
void HAL_FMPSMBUS_MasterRxCpltCallback (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Master Rx Transfer completed callback.
 
void HAL_FMPSMBUS_SlaveTxCpltCallback (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Slave Tx Transfer completed callback.
 
void HAL_FMPSMBUS_SlaveRxCpltCallback (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Slave Rx Transfer completed callback.
 
void HAL_FMPSMBUS_AddrCallback (FMPSMBUS_HandleTypeDef *hfmpsmbus, uint8_t TransferDirection, uint16_t AddrMatchCode)
 Slave Address Match callback.
 
void HAL_FMPSMBUS_ListenCpltCallback (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Listen Complete callback.
 
void HAL_FMPSMBUS_ErrorCallback (FMPSMBUS_HandleTypeDef *hfmpsmbus)
 FMPSMBUS error callback.
 
uint32_t HAL_FMPSMBUS_GetState (const FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Return the FMPSMBUS handle state.
 
uint32_t HAL_FMPSMBUS_GetError (const FMPSMBUS_HandleTypeDef *hfmpsmbus)
 Return the FMPSMBUS error code.
 

Detailed Description

Header file of FMPSMBUS HAL module.

Author
MCD Application Team
Attention

Copyright (c) 2016 STMicroelectronics. All rights reserved.

This software is licensed under terms that can be found in the LICENSE file in the root directory of this software component. If no LICENSE file comes with this software, it is provided AS-IS.

Definition in file stm32f4xx_hal_fmpsmbus.h.