STM32程序编写总流程及技巧

STM32程序编写总流程及技巧

  • 1 打开固件库工程模板(以点亮LED为例)
  • 2 在固件库模板 User里新建LED文件夹及led.c和led.h
  • 3 双击添加led.c文件到工程
  • 4 main.c文件里必须添加你写的led.h
  • 5 魔术棒里添加led.h的路径
  • 6 所有新建的led.h必须添加防止重复调用的宏定义
  • 7 在.c文件中写的函数都必须得在对应的.h文件中声明
  • 8 具体例程

1 打开固件库工程模板(以点亮LED为例)

2 在固件库模板 User里新建LED文件夹及led.c和led.h

3 双击添加led.c文件到工程

4 main.c文件里必须添加你写的led.h

5 魔术棒里添加led.h的路径

6 所有新建的led.h必须添加防止重复调用的宏定义

#define _LED_H
#include "stm32f10x.h"
这里写代码
#endif /*_BSP_LED_H*/

7 在.c文件中写的函数都必须得在对应的.h文件中声明

8 具体例程

**main.c文件**

#include "stm32f10x.h"
#include "bsp_led.h"



int main(void)
{
    LED_GPIO_config();
    while(1)
    {
        GPIO_SetBits(GPIOB, GPIO_Pin_0);
        
        GPIO_ResetBits(GPIOB, GPIO_Pin_0);
    }
}
----------------------------------------------------------------

**bsp_led.c文件**

#include "bsp_led.h"

void LED_GPIO_config(void)
{
    GPIO_InitTypeDef  GPIO_InitStruct;
  
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
  
    GPIO_InitStruct.GPIO_Pin = GPIO_Pin_0;
  
    GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;

    GPIO_InitStruct.GPIO_Speed = GPIO_Speed_10MHz;
  
    GPIO_Init(GPIOB, &GPIO_InitStruct);
  
}
--------------------------------------------------------------------------------------------------
**bsp_led.h文件**

#ifndef _BSP_LED_H
#define _BSP_LED_H

#include "stm32f10x.h"

void LED_GPIO_config(void);

#endif /*_BSP_LED_H*/

你可能感兴趣的:(STM32笔记)