STM32新建模板之库文件

一、新建项目文件夹

  1. 在桌面创建项目文件夹,用于存放工程,命名为“stm32f10x_project”

  2. 在项目文件夹中创建3个文件夹,分别命名为:CMSIS、OUTPUT、STM32F10x_FWLib、USER,并在OUTPUT文件下创建Objects、Listings文件,在CMSIS文件下创建startup文件


    名称 作用
    CMSIS 系统文件
    OUTPUT 编译生成的相关文件
    STM32F10x_FWLib stm32相关源码和头文件
    USER 用户代码
  3. 创建README文件
    建议每个项目都创建README.txt或README.md文件,用于说明项目的相关信息,便于别人阅读,建议养成良好的习惯。

二、拷贝项目文件

通过购买开发版时提供的项目案例进行拷贝,这里以“STM32F103C8T6例程”为例

  1. 拷贝core_cm3.c、core_cm3.h、stm32f10x.h、system_stm32f10x.c、system_stm32f10x.h文件到CMSIS目录下

  2. 拷贝启动文件“startup_stm32f10x_hd.s”到CMSIS\startup目录下

  3. 拷贝stm32相关源码和头文件,将案例中FWlib文件下的inc、src文件夹拷贝到STM32F10x_FWLib目录下

  4. 将案例中USER文件下的main.c、stm32f10x_conf.h、stm32f10x_it.c、stm32f10x_it.h文件拷贝到USER目录下

三、创建工程项目

  1. 打开Keil软件,创建项目,项目名为STM32F10x_Temp


  2. 添加GROUP,添加四个GROUP,并改名为startup、STM32F10x_FWlib、CMSIS、USER


  3. 为每个GROUP添加文件

  • startup,将文件startup_stm32f10x_hd.s添加到startup下
  • STM32F10x_FWlib,将文件stm32f10x_rcc.c、stm32f10x_gpio.c添加到STM32F10x_FWlib下
    注意:这里添加需要的库文件即可,因为我只用到时钟和GPIO库文件,所以我只添加了两个文件,当然也可以全部添加
  • CMSIS,将文件core_cm3.c、system_stm32f10x.c文件添加到CMSIS下
  • USER,将文件main.c、stm32f10x_it.c文件添加到USER下
  • 添加完成后如下图所示:
  1. 设置编译文件的输出路径
  • Objects输出设置

  • Listings设置
  1. 设置默认编译版本

  2. 设置头文件路径

  3. 设置编译器
    在Define中填入内容:STM32F10X_HD,USE_STDPERIPH_DRIVER

四、编译

  1. 将main.c文件中的内容全部删除,替换成一下内用
#include "stm32f10x.h"

 /***************  配置LED用到的I/O口 *******************/
void LED_GPIO_Config(void)	
{
  GPIO_InitTypeDef GPIO_InitStructure;
	
  RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB, ENABLE); // 使能PC端口时钟  
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;	//选择对应的引脚
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;       
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_Init(GPIOB, &GPIO_InitStructure);  //初始化PC端口
  GPIO_SetBits(GPIOB, GPIO_Pin_12 );	 // 关闭LED
}

void Delay(__IO u32 nCount)
{
  for(; nCount != 0; nCount--);
} 

int main(void)
{
		LED_GPIO_Config(); //LED 端口初始化 
		while (1)
		{
				GPIO_SetBits(GPIOB,GPIO_Pin_12);
				Delay(0x200000);
				GPIO_ResetBits(GPIOB,GPIO_Pin_12);
				Delay(0x200000);
		}
		
}


  1. 编译程序

  2. 编译完成后下载运行,观察现象。到此项目模板已经创建完成,以后需要编写程序时只需要使用这里创建的模板直接开发即可。

参考文献

stm32新建立一个工程:https://blog.csdn.net/weixin_42490436/article/details/90751687

posted @ 2022-01-04 18:18  浇筑菜鸟  阅读(1041)  评论(1编辑  收藏  举报