Hal Drivers for L4

Dependents:   BSP OneHopeOnePrayer FINAL_AUDIO_RECORD AudioDemo

Fork of STM32L4xx_HAL_Driver by Senior Design: Sound Monitor

Embed: (wiki syntax)

« Back to documentation index

Configuration

Functions

__STATIC_INLINE void LL_I2C_Enable (I2C_TypeDef *I2Cx)
 Enable I2C peripheral (PE = 1).
__STATIC_INLINE void LL_I2C_Disable (I2C_TypeDef *I2Cx)
 Disable I2C peripheral (PE = 0).
__STATIC_INLINE uint32_t LL_I2C_IsEnabled (I2C_TypeDef *I2Cx)
 Check if the I2C peripheral is enabled or disabled.
__STATIC_INLINE void LL_I2C_SetDigitalFilter (I2C_TypeDef *I2Cx, uint32_t DigitalFilter)
 Configure Digital Noise Filter.
__STATIC_INLINE uint32_t LL_I2C_GetDigitalFilter (I2C_TypeDef *I2Cx)
 Get the current Digital Noise Filter configuration.
__STATIC_INLINE void LL_I2C_EnableAnalogFilter (I2C_TypeDef *I2Cx)
 Enable Analog Noise Filter.
__STATIC_INLINE void LL_I2C_DisableAnalogFilter (I2C_TypeDef *I2Cx)
 Disable Analog Noise Filter.
__STATIC_INLINE uint32_t LL_I2C_IsEnabledAnalogFilter (I2C_TypeDef *I2Cx)
 Check if Analog Noise Filter is enabled or disabled.
__STATIC_INLINE void LL_I2C_EnableDMAReq_TX (I2C_TypeDef *I2Cx)
 Enable DMA transmission requests.
__STATIC_INLINE void LL_I2C_DisableDMAReq_TX (I2C_TypeDef *I2Cx)
 Disable DMA transmission requests.
__STATIC_INLINE uint32_t LL_I2C_IsEnabledDMAReq_TX (I2C_TypeDef *I2Cx)
 Check if DMA transmission requests are enabled or disabled.
__STATIC_INLINE void LL_I2C_EnableDMAReq_RX (I2C_TypeDef *I2Cx)
 Enable DMA reception requests.
__STATIC_INLINE void LL_I2C_DisableDMAReq_RX (I2C_TypeDef *I2Cx)
 Disable DMA reception requests.
__STATIC_INLINE uint32_t LL_I2C_IsEnabledDMAReq_RX (I2C_TypeDef *I2Cx)
 Check if DMA reception requests are enabled or disabled.
__STATIC_INLINE uint32_t LL_I2C_DMA_GetRegAddr (I2C_TypeDef *I2Cx, uint32_t Direction)
 Get the data register address used for DMA transfer TXDR TXDATA LL_I2C_DMA_GetRegAddr
RXDR RXDATA LL_I2C_DMA_GetRegAddr.
__STATIC_INLINE void LL_I2C_EnableClockStretching (I2C_TypeDef *I2Cx)
 Enable Clock stretching.
__STATIC_INLINE void LL_I2C_DisableClockStretching (I2C_TypeDef *I2Cx)
 Disable Clock stretching.
__STATIC_INLINE uint32_t LL_I2C_IsEnabledClockStretching (I2C_TypeDef *I2Cx)
 Check if Clock stretching is enabled or disabled.
__STATIC_INLINE void LL_I2C_EnableWakeUpFromStop (I2C_TypeDef *I2Cx)
 Enable Wakeup from STOP.
__STATIC_INLINE void LL_I2C_DisableWakeUpFromStop (I2C_TypeDef *I2Cx)
 Disable Wakeup from STOP.
__STATIC_INLINE uint32_t LL_I2C_IsEnabledWakeUpFromStop (I2C_TypeDef *I2Cx)
 Check if Wakeup from STOP is enabled or disabled.
__STATIC_INLINE void LL_I2C_EnableGeneralCall (I2C_TypeDef *I2Cx)
 Enable General Call.
__STATIC_INLINE void LL_I2C_DisableGeneralCall (I2C_TypeDef *I2Cx)
 Disable General Call.
__STATIC_INLINE uint32_t LL_I2C_IsEnabledGeneralCall (I2C_TypeDef *I2Cx)
 Check if General Call is enabled or disabled.
__STATIC_INLINE void LL_I2C_SetMasterAddressingMode (I2C_TypeDef *I2Cx, uint32_t AddressingMode)
 Configure the Master to operate in 7-bit or 10-bit addressing mode.
__STATIC_INLINE uint32_t LL_I2C_GetMasterAddressingMode (I2C_TypeDef *I2Cx)
 Get the Master addressing mode.
__STATIC_INLINE void LL_I2C_SetOwnAddress1 (I2C_TypeDef *I2Cx, uint32_t OwnAddr, uint32_t OwnAddrSize)
 Set the Own Address1.
__STATIC_INLINE void LL_I2C_EnableOwnAddress1 (I2C_TypeDef *I2Cx)
 Enable acknowledge on Own Address1 match address.
__STATIC_INLINE void LL_I2C_DisableOwnAddress1 (I2C_TypeDef *I2Cx)
 Disable acknowledge on Own Address1 match address.
__STATIC_INLINE uint32_t LL_I2C_IsEnabledOwnAddress1 (I2C_TypeDef *I2Cx)
 Check if Own Address1 acknowledge is enabled or disabled.
__STATIC_INLINE void LL_I2C_SetOwnAddress2 (I2C_TypeDef *I2Cx, uint32_t OwnAddr, uint32_t OwnAddrMask)
 Set the 7bits Own Address2.
__STATIC_INLINE void LL_I2C_EnableOwnAddress2 (I2C_TypeDef *I2Cx)
 Enable acknowledge on Own Address2 match address.
__STATIC_INLINE void LL_I2C_DisableOwnAddress2 (I2C_TypeDef *I2Cx)
 Disable acknowledge on Own Address2 match address.
__STATIC_INLINE uint32_t LL_I2C_IsEnabledOwnAddress2 (I2C_TypeDef *I2Cx)
 Check if Own Address1 acknowledge is enabled or disabled.
__STATIC_INLINE void LL_I2C_SetTiming (I2C_TypeDef *I2Cx, uint32_t TimingValue)
 Configure the SDA setup, hold time and the SCL high, low period.
__STATIC_INLINE uint32_t LL_I2C_GetTimingPrescaler (I2C_TypeDef *I2Cx)
 Get the Timing Prescaler setting.
__STATIC_INLINE uint32_t LL_I2C_GetClockLowPeriod (I2C_TypeDef *I2Cx)
 Get the SCL low period setting.
__STATIC_INLINE uint32_t LL_I2C_GetClockHighPeriod (I2C_TypeDef *I2Cx)
 Get the SCL high period setting.
__STATIC_INLINE uint32_t LL_I2C_GetDataHoldTime (I2C_TypeDef *I2Cx)
 Get the SDA hold time.
__STATIC_INLINE uint32_t LL_I2C_GetDataSetupTime (I2C_TypeDef *I2Cx)
 Get the SDA setup time.

Function Documentation

__STATIC_INLINE void LL_I2C_Disable ( I2C_TypeDef *  I2Cx )

Disable I2C peripheral (PE = 0).

Note:
When PE = 0, the I2C SCL and SDA lines are released. Internal state machines and status bits are put back to their reset value. When cleared, PE must be kept low for at least 3 APB clock cycles. CR1 PE LL_I2C_Disable
Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 303 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_DisableAnalogFilter ( I2C_TypeDef *  I2Cx )

Disable Analog Noise Filter.

Note:
This filter can only be programmed when the I2C is disabled (PE = 0). CR1 ANFOFF LL_I2C_DisableAnalogFilter
Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 363 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_DisableClockStretching ( I2C_TypeDef *  I2Cx )

Disable Clock stretching.

Note:
This bit can only be programmed when the I2C is disabled (PE = 0). CR1 NOSTRETCH LL_I2C_DisableClockStretching
Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 492 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_DisableDMAReq_RX ( I2C_TypeDef *  I2Cx )

Disable DMA reception requests.

CR1 RXDMAEN LL_I2C_DisableDMAReq_RX

Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 429 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_DisableDMAReq_TX ( I2C_TypeDef *  I2Cx )

Disable DMA transmission requests.

CR1 TXDMAEN LL_I2C_DisableDMAReq_TX

Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 396 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_DisableGeneralCall ( I2C_TypeDef *  I2Cx )

Disable General Call.

Note:
When disabled the Address 0x00 is NACKed. CR1 GCEN LL_I2C_DisableGeneralCall
Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 561 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_DisableOwnAddress1 ( I2C_TypeDef *  I2Cx )

Disable acknowledge on Own Address1 match address.

OAR1 OA1EN LL_I2C_DisableOwnAddress1

Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 638 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_DisableOwnAddress2 ( I2C_TypeDef *  I2Cx )

Disable acknowledge on Own Address2 match address.

OAR2 OA2EN LL_I2C_DisableOwnAddress2

Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 694 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_DisableWakeUpFromStop ( I2C_TypeDef *  I2Cx )

Disable Wakeup from STOP.

CR1 WUPEN LL_I2C_DisableWakeUpFromStop

Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 526 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_DMA_GetRegAddr ( I2C_TypeDef *  I2Cx,
uint32_t  Direction 
)

Get the data register address used for DMA transfer TXDR TXDATA LL_I2C_DMA_GetRegAddr
RXDR RXDATA LL_I2C_DMA_GetRegAddr.

Parameters:
I2CxI2C Instance
DirectionThis parameter can be one of the following values:

  • LL_I2C_DMA_REG_DATA_TRANSMIT
  • LL_I2C_DMA_REG_DATA_RECEIVE
Return values:
Addressof data register

Definition at line 455 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_Enable ( I2C_TypeDef *  I2Cx )

Enable I2C peripheral (PE = 1).

CR1 PE LL_I2C_Enable

Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 289 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_EnableAnalogFilter ( I2C_TypeDef *  I2Cx )

Enable Analog Noise Filter.

Note:
This filter can only be programmed when the I2C is disabled (PE = 0). CR1 ANFOFF LL_I2C_EnableAnalogFilter
Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 351 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_EnableClockStretching ( I2C_TypeDef *  I2Cx )

Enable Clock stretching.

Note:
This bit can only be programmed when the I2C is disabled (PE = 0). CR1 NOSTRETCH LL_I2C_EnableClockStretching
Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 480 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_EnableDMAReq_RX ( I2C_TypeDef *  I2Cx )

Enable DMA reception requests.

CR1 RXDMAEN LL_I2C_EnableDMAReq_RX

Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 418 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_EnableDMAReq_TX ( I2C_TypeDef *  I2Cx )

Enable DMA transmission requests.

CR1 TXDMAEN LL_I2C_EnableDMAReq_TX

Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 385 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_EnableGeneralCall ( I2C_TypeDef *  I2Cx )

Enable General Call.

Note:
When enabled the Address 0x00 is ACKed. CR1 GCEN LL_I2C_EnableGeneralCall
Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 549 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_EnableOwnAddress1 ( I2C_TypeDef *  I2Cx )

Enable acknowledge on Own Address1 match address.

OAR1 OA1EN LL_I2C_EnableOwnAddress1

Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 627 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_EnableOwnAddress2 ( I2C_TypeDef *  I2Cx )

Enable acknowledge on Own Address2 match address.

OAR2 OA2EN LL_I2C_EnableOwnAddress2

Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 683 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_EnableWakeUpFromStop ( I2C_TypeDef *  I2Cx )

Enable Wakeup from STOP.

Note:
This bit can only be programmed when Digital Filter is disabled. CR1 WUPEN LL_I2C_EnableWakeUpFromStop
Parameters:
I2CxI2C Instance.
Return values:
None

Definition at line 515 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_GetClockHighPeriod ( I2C_TypeDef *  I2Cx )

Get the SCL high period setting.

TIMINGR SCLH LL_I2C_GetClockHighPeriod

Parameters:
I2CxI2C Instance.
Return values:
0..0xFF

Definition at line 752 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_GetClockLowPeriod ( I2C_TypeDef *  I2Cx )

Get the SCL low period setting.

TIMINGR SCLL LL_I2C_GetClockLowPeriod

Parameters:
I2CxI2C Instance.
Return values:
0..0xFF

Definition at line 741 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_GetDataHoldTime ( I2C_TypeDef *  I2Cx )

Get the SDA hold time.

TIMINGR SDADEL LL_I2C_GetDataHoldTime

Parameters:
I2CxI2C Instance.
Return values:
0..0xF

Definition at line 763 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_GetDataSetupTime ( I2C_TypeDef *  I2Cx )

Get the SDA setup time.

TIMINGR SCLDEL LL_I2C_GetDataSetupTime

Parameters:
I2CxI2C Instance.
Return values:
0..0xF

Definition at line 774 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_GetDigitalFilter ( I2C_TypeDef *  I2Cx )

Get the current Digital Noise Filter configuration.

CR1 DNF LL_I2C_GetDigitalFilter

Parameters:
I2CxI2C Instance.
Return values:
0..0xF

Definition at line 339 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_GetMasterAddressingMode ( I2C_TypeDef *  I2Cx )

Get the Master addressing mode.

CR2 ADD10 LL_I2C_GetMasterAddressingMode

Parameters:
I2CxI2C Instance.
Return values:
Returnedvalue can be one of the following values:

  • LL_I2C_ADDRESSING_MODE_7BIT
  • LL_I2C_ADDRESSING_MODE_10BIT

Definition at line 600 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_GetTimingPrescaler ( I2C_TypeDef *  I2Cx )

Get the Timing Prescaler setting.

TIMINGR PRESC LL_I2C_GetTimingPrescaler

Parameters:
I2CxI2C Instance.
Return values:
0..0xF

Definition at line 730 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_IsEnabled ( I2C_TypeDef *  I2Cx )

Check if the I2C peripheral is enabled or disabled.

CR1 PE LL_I2C_IsEnabled

Parameters:
I2CxI2C Instance.
Return values:
Stateof bit (1 or 0).

Definition at line 314 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_IsEnabledAnalogFilter ( I2C_TypeDef *  I2Cx )

Check if Analog Noise Filter is enabled or disabled.

CR1 ANFOFF LL_I2C_IsEnabledAnalogFilter

Parameters:
I2CxI2C Instance.
Return values:
Stateof bit (1 or 0).

Definition at line 374 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_IsEnabledClockStretching ( I2C_TypeDef *  I2Cx )

Check if Clock stretching is enabled or disabled.

CR1 NOSTRETCH LL_I2C_IsEnabledClockStretching

Parameters:
I2CxI2C Instance.
Return values:
Stateof bit (1 or 0).

Definition at line 503 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_IsEnabledDMAReq_RX ( I2C_TypeDef *  I2Cx )

Check if DMA reception requests are enabled or disabled.

CR1 RXDMAEN LL_I2C_IsEnabledDMAReq_RX

Parameters:
I2CxI2C Instance.
Return values:
Stateof bit (1 or 0).

Definition at line 440 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_IsEnabledDMAReq_TX ( I2C_TypeDef *  I2Cx )

Check if DMA transmission requests are enabled or disabled.

CR1 TXDMAEN LL_I2C_IsEnabledDMAReq_TX

Parameters:
I2CxI2C Instance.
Return values:
Stateof bit (1 or 0).

Definition at line 407 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_IsEnabledGeneralCall ( I2C_TypeDef *  I2Cx )

Check if General Call is enabled or disabled.

CR1 GCEN LL_I2C_IsEnabledGeneralCall

Parameters:
I2CxI2C Instance.
Return values:
Stateof bit (1 or 0).

Definition at line 572 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_IsEnabledOwnAddress1 ( I2C_TypeDef *  I2Cx )

Check if Own Address1 acknowledge is enabled or disabled.

OAR1 OA1EN LL_I2C_IsEnabledOwnAddress1

Parameters:
I2CxI2C Instance.
Return values:
Stateof bit (1 or 0).

Definition at line 649 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_IsEnabledOwnAddress2 ( I2C_TypeDef *  I2Cx )

Check if Own Address1 acknowledge is enabled or disabled.

OAR2 OA2EN LL_I2C_IsEnabledOwnAddress2

Parameters:
I2CxI2C Instance.
Return values:
Stateof bit (1 or 0).

Definition at line 705 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE uint32_t LL_I2C_IsEnabledWakeUpFromStop ( I2C_TypeDef *  I2Cx )

Check if Wakeup from STOP is enabled or disabled.

CR1 WUPEN LL_I2C_IsEnabledWakeUpFromStop

Parameters:
I2CxI2C Instance.
Return values:
Stateof bit (1 or 0).

Definition at line 537 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_SetDigitalFilter ( I2C_TypeDef *  I2Cx,
uint32_t  DigitalFilter 
)

Configure Digital Noise Filter.

Note:
If the analog filter is also enabled, the digital filter is added to analog filter. This filter can only be programmed when the I2C is disabled (PE = 0). CR1 DNF LL_I2C_SetDigitalFilter
Parameters:
I2CxI2C Instance.
DigitalFilterThis parameter must be a value between 0x00 (Digital filter disabled) and 0x0F (Digital filter enabled and filtering capability up to 15*ti2cclk). This parameter is used to configure the digital noise filter on SDA and SCL input. The digital filter will filter spikes with a length of up to DNF[3:0]*ti2cclk.
Return values:
None

Definition at line 328 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_SetMasterAddressingMode ( I2C_TypeDef *  I2Cx,
uint32_t  AddressingMode 
)

Configure the Master to operate in 7-bit or 10-bit addressing mode.

Note:
Changing this bit is not allowed, when the START bit is set. CR2 ADD10 LL_I2C_SetMasterAddressingMode
Parameters:
I2CxI2C Instance.
AddressingModeThis parameter can be one of the following values:

  • LL_I2C_ADDRESSING_MODE_7BIT
  • LL_I2C_ADDRESSING_MODE_10BIT
Return values:
None

Definition at line 587 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_SetOwnAddress1 ( I2C_TypeDef *  I2Cx,
uint32_t  OwnAddr,
uint32_t  OwnAddrSize 
)

Set the Own Address1.

OAR1 OA1 LL_I2C_SetOwnAddress1
OAR1 OA1MODE LL_I2C_SetOwnAddress1

Parameters:
I2CxI2C Instance.
OwnAddrThis parameter must be a value between 0 and 0x7F.
OwnAddrSizeThis parameter can be one of the following values:

  • LL_I2C_OWNADDRESS1_7BIT
  • LL_I2C_OWNADDRESS1_10BIT
Return values:
None

Definition at line 616 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_SetOwnAddress2 ( I2C_TypeDef *  I2Cx,
uint32_t  OwnAddr,
uint32_t  OwnAddrMask 
)

Set the 7bits Own Address2.

Note:
This action has no effect if own address2 is enabled. OAR2 OA2 LL_I2C_SetOwnAddress2
OAR2 OA2MSK LL_I2C_SetOwnAddress2
Parameters:
I2CxI2C Instance.
OwnAddrValue between 0 and 0x7F.
OwnAddrMaskThis parameter can be one of the following values:

  • LL_I2C_OWNADDRESS2_NOMASK
  • LL_I2C_OWNADDRESS2_MASK01
  • LL_I2C_OWNADDRESS2_MASK02
  • LL_I2C_OWNADDRESS2_MASK03
  • LL_I2C_OWNADDRESS2_MASK04
  • LL_I2C_OWNADDRESS2_MASK05
  • LL_I2C_OWNADDRESS2_MASK06
  • LL_I2C_OWNADDRESS2_MASK07
Return values:
None

Definition at line 672 of file stm32l4xx_ll_i2c.h.

__STATIC_INLINE void LL_I2C_SetTiming ( I2C_TypeDef *  I2Cx,
uint32_t  TimingValue 
)

Configure the SDA setup, hold time and the SCL high, low period.

Note:
This bit can only be programmed when the I2C is disabled (PE = 0). TIMINGR TIMINGR LL_I2C_SetTiming
Parameters:
I2CxI2C Instance.
TimingValueThis parameter must be a value between 0 and 0xFFFFFFFF.
Note:
This parameter is computed with the STM32CubeMX Tool.
Return values:
None

Definition at line 719 of file stm32l4xx_ll_i2c.h.