add HAL for stm32f4