stm32f1xx HAL库配置说明

一、工程配置

  1. 将下载好的固件库添加到工程目录中,并在工程中添加相应的文件,以闪烁LED灯为例子。
  2. 新建user、proj文件夹。
  3. 复制 STM32Cube_FW_F1_V1.4.0\Drivers\STM32F1xx_HAL_Driver\Inc 里的 stm32f1xx_hal_conf_template.h 到user目录中,并重命名为stm32f1xx_hal_conf.h
  4. 复制 STM32Cube_FW_F1_V1.4.0\Projects\STM32F103RB-Nucleo\Templates\Src 文件夹里面的 stm32f1xx_it.c 以及 STM32Cube_FW_F1_V1.4.0\Projects\STM32F103RB-Nucleo\Templates\Inc 文件夹里面的 stm32f1xx_it.h 到user文件夹中。如果stm32f1xx_it.cSysTick_Handler 为空的话,请在该文件的放置头文件的地方添加#include "stm32f1xx.h" 如下图所示:
    图4-1
    并在SysTick_Handler 函数中添加HAL_IncTick(); ,如下图所示:
    图4-2
  5. 新建一个C文件,输入例程。
  6. 添加程序代码, STM32Cube_FW_F1_V1.4.0\Drivers\STM32F1xx_HAL_Driver\Src文件夹里面的单片机驱动程序(根据需要添加)、 STM32Cube_FW_F1_V1.4.0\Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates 文件夹里面的 system_stm32f1xx.cSTM32Cube_FW_F1_V1.4.0\Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\arm 文件夹里面的启动文件(根据实际情况添加)、 user 文件夹里面的 stm32f1xx_it.cgpio_demo.c 添加到工程的程序文件如下图所示:
    图4-3
  7. 添加的头文件路径如下图所示:
    图4-4
  8. 在c/c++编译器选项宏定义一栏中添加STM32F103xE,USE_HAL_DRIVER (查看stm32f1xx.h),如下图所示:
    图4-5
  9. 编译

二、例程

#include "stm32f1xx.h"  

void bsp_led_init( void )
{
    GPIO_InitTypeDef gpioInitStructure;

    __HAL_RCC_GPIOD_CLK_ENABLE();
    __HAL_RCC_GPIOG_CLK_ENABLE();

    gpioInitStructure.Mode  = GPIO_MODE_OUTPUT_PP;
    gpioInitStructure.Pull  = GPIO_NOPULL;
    gpioInitStructure.Speed = GPIO_SPEED_FREQ_LOW;
    gpioInitStructure.Pin   = GPIO_PIN_13;

    HAL_GPIO_Init(GPIOD, &gpioInitStructure);

    gpioInitStructure.Mode  = GPIO_MODE_OUTPUT_PP;
    gpioInitStructure.Pull  = GPIO_NOPULL;
    gpioInitStructure.Speed = GPIO_SPEED_FREQ_LOW;
    gpioInitStructure.Pin   = GPIO_PIN_14;

    HAL_GPIO_Init(GPIOG, &gpioInitStructure);
}

void bsp_led_run( void )
{
    HAL_GPIO_TogglePin(GPIOD, GPIO_PIN_13);
    HAL_Delay(30);

    HAL_GPIO_TogglePin(GPIOG, GPIO_PIN_14);
    HAL_Delay(70);
}

int main( void )
{
#ifdef USE_HAL_DRIVER
    HAL_Init();
#endif

    bsp_led_init();

    while(1)
    {
        bsp_led_run();
    }
}
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值