bf0_hal.h
This file contains all the functions prototypes for the HAL module driver.
- Author
- Sifli software development team 
Unnamed Group
- 
MAKE_REG_VAL(val, mask, offset)
- 
GET_REG_VAL(reg, mask, offset)
- 
SYSCFG_BOOT_NORMAL
- Normal boot 
- 
SYSCFG_BOOT_UART
- Boot with UART loop for DFU 
Defines
- 
SYSCFG_SWD_HCPU
- SWD interface connect to HCPU 
- 
SYSCFG_SWD_LCPU
- SWD interface connect to LCPU 
- 
SYSCFG_SWD_BCPU
- SWD interface connect to BCPU 
- 
__HAL_SYSCFG_GET_BOOT_MODE()
- Get Current boot mode. - 返回值:
- The – boot mode as configured by user 
 
- 
__HAL_SYSCFG_SET_SWD(COREID)
- Set SWD interface. - 参数:
- COREID – core id for SWD 
 
 
- 
__HAL_SYSCFG_SET_SECURITY()
- Set Security Key control. 
- 
__HAL_SYSCFG_CLEAR_SECURITY()
- Clear Security Key control. 
- 
__HAL_SYSCFG_GET_SID()
- Get serial ID 
- 
__HAL_SYSCFG_GET_CID()
- Get Chip ID 
- 
__HAL_SYSCFG_GET_PID()
- Get Package ID 
- 
__HAL_SYSCFG_GET_REVID()
- Get Revision ID 
- 
__HAL_SYSCFG_CHECK_REVID()
- 
__HAL_SYSCFG_Enable_USB()
- Enable USB module 
- 
__HAL_SYSCFG_USB_DM_PD()
- Pull Down USB DM pin, host only 
- 
__HAL_SYSCFG_Enable_WDT_REBOOT(enable)
- 
__HAL_SYSCFG_Enable_Assert_Trigger(enable)
- 
__HAL_SYSCFG_Trigger_Assert()
- 
__HAL_SYSCFG_Get_Trigger_Assert_Flag()
- 
__HAL_SYSCFG_HPBG_EN()
- 
__HAL_SYSCFG_HPBG_VDDPSW_EN()
- 
SystemFixClock
- 
__HAL_ROM_USED
- 
HAL_ALIGN(size, align)
- 
HAL_ALIGN_DOWN(size, align)
- 
HAL_MIN(a, b)
- 
HAL_MAX(a, b)
- 
HAL_ABS(x)
- 
HAL_CHIP_REV_ID_A3
- CHIP ID for A3. 
- 
HAL_CHIP_REV_ID_A4
- 
HAL_LXT_ENABLED()
- 
HAL_LXT_DISABLED()
- 
HAL_ASSERT(expr)
Functions
- 
HAL_StatusTypeDef HAL_Init(void)
- Configure the Flash prefetch, the Instruction and Data caches, the time base source, NVIC and any required global low level hardware by calling the HAL_PreInit() callback function to be optionally defined in user file. - 备注 - HAL_Init() function is called at the beginning of program after reset and before the clock configuration. - 备注 - In the default implementation the System Timer (Systick) is used as source of time base. The Systick configuration is based on MSI clock, as MSI is the clock used after a system Reset and the NVIC configuration is set to Priority group 4. Once done, time base tick starts incrementing: the tick variable counter is incremented each 1ms in the SysTick_Handler() interrupt handler. - 返回值:
- HAL – status 
 
- 
void HAL_PreInit(void)
- Before HAL_Init is called, board specific initialization. - 返回值:
- None – 
 
- 
void HAL_PostMspInit(void)
- It’s called after HAL_PreInit in HAL_Init. - 返回值:
- None – 
 
- 
HAL_StatusTypeDef HAL_DeInit(void)
- De-initialize common part of the HAL and stop the source of time base. - 备注 - This function is optional. - 返回值:
- HAL – status 
 
- 
void HAL_MspDeInit(void)
- DeInitialize the MSP. - 返回值:
- None – 
 
- 
HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority)
- This function configures the source of the time base: The time source is configured to have 1ms time base with a dedicated Tick interrupt priority. - 备注 - This function is called automatically at the beginning of program after reset by HAL_Init() or at any time when clock is reconfigured by HAL_RCC_ClockConfig(). - 备注 - In the default implementation, SysTick timer is the source of time base. It is used to generate interrupts at regular time intervals. Care must be taken if HAL_Delay() is called from a peripheral ISR process, The SysTick interrupt must have higher priority (numerically lower) than the peripheral interrupt. Otherwise the caller ISR process will be blocked. The function is declared as __weak to be overwritten in case of other implementation in user file. - 参数:
- TickPriority – Tick interrupt priority. 
 
- 返回值:
- HAL – status 
 
- 
void HAL_IncTick(void)
- This function is called to increment a global variable “uwTick” used as application time base. - 备注 - 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. - 返回值:
- None – 
 
- 
void HAL_Delay(uint32_t Delay)
- This function provides minimum delay (in milliseconds) based on variable incremented. - 备注 - 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. - 参数:
- Delay – specifies the delay time length, in milliseconds. 
 
- 返回值:
- None – 
 
- 
void HAL_Delay_us(uint32_t us)
- void HAL_Delay_us_ (1 uint32_t us)
- 
uint32_t HAL_GetTick(void)
- Provide a tick value in millisecond. - 备注 - This function is declared as __weak to be overwritten in case of other implementations in user file. - 返回值:
- tick – value 
 
- 
void HAL_SuspendTick(void)
- Suspend Tick increment. - 备注 - 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. - 返回值:
- None – 
 
- 
void HAL_ResumeTick(void)
- Resume Tick increment. - 备注 - 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. - 返回值:
- None – 
 
- 
void HAL_AssertFailed(char *file, uint32_t line)
- The assert failure printing. If BSP_USING_FULL_ASSERT is defined, the asser_failed function need to be implemented. - 参数:
- file – file name of source code for the failed assert 
- line – code line number for the failed assert 
 
- 返回值:
- None – 
 
- 
void HAL_sw_breakpoint(void)
- Debug function to stop current thread execution. - 返回值:
- None – 
 
- 
uint32_t HAL_DisableInterrupt(void)
- 
void HAL_EnableInterrupt(uint32_t mask)
- 
uint32_t HAL_GetLXTEnabled(void)
- 
uint32_t HAL_GetElapsedTick(uint32_t prev_tick, uint32_t curr_tick)
