STM32F103xB HAL User Manual
Functions
HAL Control functions
HAL Exported Functions

HAL Control functions. More...

Functions

__weak void HAL_IncTick (void)
 This function is called to increment a global variable "uwTick" used as application time base.
__weak uint32_t HAL_GetTick (void)
 Provides a tick value in millisecond.
uint32_t HAL_GetTickPrio (void)
 This function returns a tick priority.
HAL_StatusTypeDef HAL_SetTickFreq (HAL_TickFreqTypeDef Freq)
 Set new tick Freq.
HAL_TickFreqTypeDef HAL_GetTickFreq (void)
 Return tick frequency.
__weak void HAL_Delay (uint32_t Delay)
 This function provides minimum delay (in milliseconds) based on variable incremented.
__weak void HAL_SuspendTick (void)
 Suspend Tick increment.
__weak void HAL_ResumeTick (void)
 Resume Tick increment.
uint32_t HAL_GetHalVersion (void)
 Returns the HAL revision.
uint32_t HAL_GetREVID (void)
 Returns the device revision identifier.
uint32_t HAL_GetDEVID (void)
 Returns the device identifier.
uint32_t HAL_GetUIDw0 (void)
 Returns first word of the unique device identifier (UID based on 96 bits)
uint32_t HAL_GetUIDw1 (void)
 Returns second word of the unique device identifier (UID based on 96 bits)
uint32_t HAL_GetUIDw2 (void)
 Returns third word of the unique device identifier (UID based on 96 bits)
void HAL_DBGMCU_EnableDBGSleepMode (void)
 Enable the Debug Module during SLEEP mode.
void HAL_DBGMCU_DisableDBGSleepMode (void)
 Disable the Debug Module during SLEEP mode Note: On devices STM32F10xx8 and STM32F10xxB, STM32F101xC/D/E and STM32F103xC/D/E, STM32F101xF/G and STM32F103xF/G STM32F10xx4 and STM32F10xx6 Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in debug mode (not accessible by the user software in normal mode).
void HAL_DBGMCU_EnableDBGStopMode (void)
 Enable the Debug Module during STOP mode Note: On devices STM32F10xx8 and STM32F10xxB, STM32F101xC/D/E and STM32F103xC/D/E, STM32F101xF/G and STM32F103xF/G STM32F10xx4 and STM32F10xx6 Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in debug mode (not accessible by the user software in normal mode).
void HAL_DBGMCU_DisableDBGStopMode (void)
 Disable the Debug Module during STOP mode Note: On devices STM32F10xx8 and STM32F10xxB, STM32F101xC/D/E and STM32F103xC/D/E, STM32F101xF/G and STM32F103xF/G STM32F10xx4 and STM32F10xx6 Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in debug mode (not accessible by the user software in normal mode).
void HAL_DBGMCU_EnableDBGStandbyMode (void)
 Enable the Debug Module during STANDBY mode Note: On devices STM32F10xx8 and STM32F10xxB, STM32F101xC/D/E and STM32F103xC/D/E, STM32F101xF/G and STM32F103xF/G STM32F10xx4 and STM32F10xx6 Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in debug mode (not accessible by the user software in normal mode).
void HAL_DBGMCU_DisableDBGStandbyMode (void)
 Disable the Debug Module during STANDBY mode Note: On devices STM32F10xx8 and STM32F10xxB, STM32F101xC/D/E and STM32F103xC/D/E, STM32F101xF/G and STM32F103xF/G STM32F10xx4 and STM32F10xx6 Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in debug mode (not accessible by the user software in normal mode).

Detailed Description

HAL Control functions.

 ===============================================================================
                      ##### HAL Control functions #####
 ===============================================================================
    [..]  This section provides functions allowing to:
      (+) Provide a tick value in millisecond
      (+) Provide a blocking delay in millisecond
      (+) Suspend the time base source interrupt
      (+) Resume the time base source interrupt
      (+) Get the HAL API driver version
      (+) Get the device identifier
      (+) Get the device revision identifier
      (+) Enable/Disable Debug module during SLEEP mode
      (+) Enable/Disable Debug module during STOP mode
      (+) Enable/Disable Debug module during STANDBY mode


Function Documentation

Disable the Debug Module during SLEEP mode Note: On devices STM32F10xx8 and STM32F10xxB, STM32F101xC/D/E and STM32F103xC/D/E, STM32F101xF/G and STM32F103xF/G STM32F10xx4 and STM32F10xx6 Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in debug mode (not accessible by the user software in normal mode).

Refer to errata sheet of these devices for more details.

Return values:
None

Definition at line 506 of file stm32f1xx_hal.c.

Disable the Debug Module during STANDBY mode Note: On devices STM32F10xx8 and STM32F10xxB, STM32F101xC/D/E and STM32F103xC/D/E, STM32F101xF/G and STM32F103xF/G STM32F10xx4 and STM32F10xx6 Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in debug mode (not accessible by the user software in normal mode).

Refer to errata sheet of these devices for more details.

Return values:
None

Definition at line 584 of file stm32f1xx_hal.c.

Disable the Debug Module during STOP mode Note: On devices STM32F10xx8 and STM32F10xxB, STM32F101xC/D/E and STM32F103xC/D/E, STM32F101xF/G and STM32F103xF/G STM32F10xx4 and STM32F10xx6 Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in debug mode (not accessible by the user software in normal mode).

Refer to errata sheet of these devices for more details.

Return values:
None

Definition at line 552 of file stm32f1xx_hal.c.

Enable the Debug Module during SLEEP mode.

Return values:
None

Definition at line 490 of file stm32f1xx_hal.c.

Enable the Debug Module during STANDBY mode Note: On devices STM32F10xx8 and STM32F10xxB, STM32F101xC/D/E and STM32F103xC/D/E, STM32F101xF/G and STM32F103xF/G STM32F10xx4 and STM32F10xx6 Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in debug mode (not accessible by the user software in normal mode).

Refer to errata sheet of these devices for more details.

Return values:
None

Definition at line 568 of file stm32f1xx_hal.c.

Enable the Debug Module during STOP mode Note: On devices STM32F10xx8 and STM32F10xxB, STM32F101xC/D/E and STM32F103xC/D/E, STM32F101xF/G and STM32F103xF/G STM32F10xx4 and STM32F10xx6 Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in debug mode (not accessible by the user software in normal mode).

Refer to errata sheet of these devices for more details. Note: On all STM32F1 devices: If the system tick timer interrupt is enabled during the Stop mode debug (DBG_STOP bit set in the DBGMCU_CR register ), it will wakeup the system from Stop mode. Workaround: To debug the Stop mode, disable the system tick timer interrupt. Refer to errata sheet of these devices for more details. Note: On all STM32F1 devices: If the system tick timer interrupt is enabled during the Stop mode debug (DBG_STOP bit set in the DBGMCU_CR register ), it will wakeup the system from Stop mode. Workaround: To debug the Stop mode, disable the system tick timer interrupt. Refer to errata sheet of these devices for more details.

Return values:
None

Definition at line 536 of file stm32f1xx_hal.c.

void HAL_Delay ( uint32_t  Delay)

This function provides minimum delay (in milliseconds) based on variable incremented.

Note:
In the default implementation , SysTick timer is the source of time base. It is used to generate interrupts at regular time intervals where uwTick is incremented.
This function is declared as __weak to be overwritten in case of other implementations in user file.
Parameters:
Delayspecifies the delay time length, in milliseconds.
Return values:
None

Definition at line 370 of file stm32f1xx_hal.c.

References HAL_GetTick(), and uwTickFreq.

uint32_t HAL_GetDEVID ( void  )

Returns the device identifier.

Note: On devices STM32F10xx8 and STM32F10xxB, STM32F101xC/D/E and STM32F103xC/D/E, STM32F101xF/G and STM32F103xF/G STM32F10xx4 and STM32F10xx6 Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in debug mode (not accessible by the user software in normal mode). Refer to errata sheet of these devices for more details.

Return values:
Deviceidentifier

Definition at line 454 of file stm32f1xx_hal.c.

References IDCODE_DEVID_MASK.

uint32_t HAL_GetHalVersion ( void  )

Returns the HAL revision.

Return values:
version0xXYZR (8bits for each decimal, R for RC)

Definition at line 422 of file stm32f1xx_hal.c.

References __STM32F1xx_HAL_VERSION.

uint32_t HAL_GetREVID ( void  )

Returns the device revision identifier.

Note: On devices STM32F10xx8 and STM32F10xxB, STM32F101xC/D/E and STM32F103xC/D/E, STM32F101xF/G and STM32F103xF/G STM32F10xx4 and STM32F10xx6 Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in debug mode (not accessible by the user software in normal mode). Refer to errata sheet of these devices for more details.

Return values:
Devicerevision identifier

Definition at line 438 of file stm32f1xx_hal.c.

uint32_t HAL_GetTick ( void  )

Provides a tick value in millisecond.

Note:
This function is declared as __weak to be overwritten in case of other implementations in user file.
Return values:
tickvalue

Definition at line 304 of file stm32f1xx_hal.c.

References uwTick.

Referenced by ADC_ConversionStop_Disable(), ADC_Enable(), FLASH_WaitForLastOperation(), HAL_ADC_PollForConversion(), HAL_ADC_PollForEvent(), HAL_ADCEx_Calibration_Start(), HAL_ADCEx_InjectedPollForConversion(), HAL_CAN_Init(), HAL_CAN_Start(), HAL_CAN_Stop(), HAL_Delay(), HAL_DMA_PollForTransfer(), HAL_I2C_IsDeviceReady(), HAL_I2C_Master_Receive(), HAL_I2C_Master_Transmit(), HAL_I2C_Mem_Read(), HAL_I2C_Mem_Read_DMA(), HAL_I2C_Mem_Write(), HAL_I2C_Mem_Write_DMA(), HAL_I2C_Slave_Receive(), HAL_I2C_Slave_Transmit(), HAL_IRDA_Receive(), HAL_IRDA_Transmit(), HAL_IWDG_Init(), HAL_RCC_ClockConfig(), HAL_RCC_DeInit(), HAL_RCC_OscConfig(), HAL_RCCEx_PeriphCLKConfig(), HAL_RTC_PollForAlarmAEvent(), HAL_RTC_WaitForSynchro(), HAL_RTCEx_PollForTamper1Event(), HAL_SMARTCARD_Receive(), HAL_SMARTCARD_Transmit(), HAL_SPI_Receive(), HAL_SPI_Transmit(), HAL_SPI_TransmitReceive(), HAL_UART_Receive(), HAL_UART_Transmit(), HAL_UARTEx_ReceiveToIdle(), HAL_USART_Receive(), HAL_USART_Transmit(), HAL_USART_TransmitReceive(), I2C_WaitOnBTFFlagUntilTimeout(), I2C_WaitOnFlagUntilTimeout(), I2C_WaitOnMasterAddressFlagUntilTimeout(), I2C_WaitOnRXNEFlagUntilTimeout(), I2C_WaitOnSTOPFlagUntilTimeout(), I2C_WaitOnTXEFlagUntilTimeout(), IRDA_WaitOnFlagUntilTimeout(), RTC_EnterInitMode(), RTC_ExitInitMode(), SMARTCARD_WaitOnFlagUntilTimeout(), SPI_CloseRx_ISR(), SPI_CloseRxTx_ISR(), SPI_CloseTx_ISR(), SPI_DMAReceiveCplt(), SPI_DMARxAbortCallback(), SPI_DMATransmitCplt(), SPI_DMATransmitReceiveCplt(), SPI_WaitFlagStateUntilTimeout(), UART_WaitOnFlagUntilTimeout(), and USART_WaitOnFlagUntilTimeout().

Return tick frequency.

Return values:
tickperiod in Hz

Definition at line 354 of file stm32f1xx_hal.c.

References uwTickFreq.

uint32_t HAL_GetTickPrio ( void  )

This function returns a tick priority.

Return values:
tickpriority

Definition at line 313 of file stm32f1xx_hal.c.

References uwTickPrio.

uint32_t HAL_GetUIDw0 ( void  )

Returns first word of the unique device identifier (UID based on 96 bits)

Return values:
Deviceidentifier

Definition at line 463 of file stm32f1xx_hal.c.

uint32_t HAL_GetUIDw1 ( void  )

Returns second word of the unique device identifier (UID based on 96 bits)

Return values:
Deviceidentifier

Definition at line 472 of file stm32f1xx_hal.c.

uint32_t HAL_GetUIDw2 ( void  )

Returns third word of the unique device identifier (UID based on 96 bits)

Return values:
Deviceidentifier

Definition at line 481 of file stm32f1xx_hal.c.

void HAL_IncTick ( void  )

This function is called to increment a global variable "uwTick" used as application time base.

Note:
In the default implementation, this variable is incremented each 1ms in SysTick ISR.
This function is declared as __weak to be overwritten in case of other implementations in user file.
Return values:
None

Definition at line 293 of file stm32f1xx_hal.c.

References uwTick, and uwTickFreq.

void HAL_ResumeTick ( void  )

Resume Tick increment.

Note:
In the default implementation , SysTick timer is the source of time base. It is used to generate interrupts at regular time intervals. Once HAL_ResumeTick() is called, the SysTick interrupt will be enabled and so Tick increment is resumed.
This function is declared as __weak to be overwritten in case of other implementations in user file.
Return values:
None

Definition at line 412 of file stm32f1xx_hal.c.

HAL_StatusTypeDef HAL_SetTickFreq ( HAL_TickFreqTypeDef  Freq)

Set new tick Freq.

Return values:
status

Definition at line 322 of file stm32f1xx_hal.c.

References assert_param, HAL_InitTick(), IS_TICKFREQ, uwTickFreq, and uwTickPrio.

void HAL_SuspendTick ( void  )

Suspend Tick increment.

Note:
In the default implementation , SysTick timer is the source of time base. It is used to generate interrupts at regular time intervals. Once HAL_SuspendTick() is called, the SysTick interrupt will be disabled and so Tick increment is suspended.
This function is declared as __weak to be overwritten in case of other implementations in user file.
Return values:
None

Definition at line 396 of file stm32f1xx_hal.c.