1,首先,打开Keil5软件,选择工程,新建项目(下图第一个)
选择一个专门的工程文件,然后在下面新建一个工程。
在后面要用到F103C8T6最小系统板。
这里弹出的是Keil软件新建工程的小组手,这里暂时不用。
2,打开下面的参考路径,开始配置工程
D:\ECGproject\固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm
在刚刚那个文件夹下新建一个Start文件夹,将上面的内容复制进去。
接着将这个路径下这三个文件也复制进去。
内核寄存器也放入其中
总的来说,你应该有这些文件:
给下面的重命名之后,选择添加现有文件:
现在md.s文件,其余全部的.s和.h文件都有添加进来。
上面出现了小钥匙的图标,表示这个文件只读,无法进行修改。然后将start路径添加进来,这样才能导入我们的头文件。
在工程文件夹下新建目录User,然后在Keil中添加目录并修改为User
外部路径也能看到这个文件。
main文件中右键插入头文件:
点击魔术棒修改调试器,这里我使用的是Jlink。
完成后点击Settings
使用的是ST-link,就是勾选上Reset and run。
再新建一个Library文件夹,在大概是下面这个路径中,将src和inc里面的内容全部复制到Library中。
固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver
将其添加到工程项目当中去(包括.h和.c文件):
但目前这个库函数还无法使用,这里就需要使用到配置文件,进入下面的目录复制到User文件夹中。
打开宏定义,复制该字符串:
库函数测试代码:
#include "stm32f10x.h" // Device header
int main(void){
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOC, &GPIO_InitStructure);
GPIO_SetBits(GPIOC, GPIO_Pin_13);
//GPIO_ResetBits(GPIOC, GPIO_Pin_13);
}