5加载stm32 keil_STM32入门——Keil开发环境搭建和基础使用

本文详细介绍了如何使用Keil搭建STM32开发环境,包括新建工程、配置设置、编译程序、调试、底层程序开发、代码下载及查看寄存器地址等步骤。
摘要由CSDN通过智能技术生成

博客地址:Keil开发环境搭建和基础使用​jason-xy.cn6022a0e10865241b9fb326ec2a4cf893.png

任务目标如何建工程。

如何配置与设置工程。

如何编译自己开发的程序。

如何调试。

如何用KEIL开发stm32开发底层程序。

如何下载编译过后的代码。

如何查看寄存器。

如何知道生成代码的地址。

......

keil的安装

默认已经安装完成。

keil的使用

1.如何新建工程(以STM32F1xx为例)

准备工作新建工程文件夹

下载并解压官方的标准外设库

在1.中新建的文件夹下新建Libraries文件夹,用于存放标准外设库。

在Libraries下新建CMSIS并将STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport中的文件复制到CMSIS中;

再将STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x中的文件全部复制到CMSIS中。最终CMSIS中的文件如图。

将STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver复制进Libraries文件夹,并将STM32F10x_StdPeriph_Driver改为FWLIB。

在工程文件夹目录下新建User文件夹,随便写一个main.c放进去也行。

准备基本完成

新建工程

在keil中新建一个工程文件,如图:

保存到刚刚新建的文件夹中,如图:

随即选择所开发的芯片型号,如图(STM32F103C8为例):

确定之后跳出一个窗口,直接关掉(这是让选择启动引导等的,我们已经下载的库里有,所以跳过这一步)。点箭头指出的图表,然后删除掉SourceGroup1。

配置与设置工程

依次添加CMSIS、USER、FWLIB、STARTUP,并把刚刚复制在对应文件夹下的文件添加。注意的是STARTUP要选择NewProject\CMSIS\startup\arm中startup_stm32f10x_hd.s、startup_stm32f10x_ld.s、startup_stm32f10x_md.s三个中的一个,根据需要选取。文件类型选择所有。 FWLIB中只需要添加src中的.c文件即可。 CMSIS中不需要添加STARTUP中的文件。 添加完毕点击OK。

然后点击魔法棒,进入C/C++设置界面,在define一栏输入 USE_STDPERIPH_DRIVER ,并在includepath栏加入头文件路径。

至此,工程创建完毕。

*1.如何新建工程(以STM32F1xx为例 & 使用keil包管理器)

*1.1新建工程

*1.2选择芯片

*1.3添加组件

以点灯为例,只需要用到这三个标准库模块

*1.4添加用户文件夹并编写点灯程序

*1.5配置魔术棒

点击魔法棒,进入C/C++设置界面,在define一栏输入 USE_STDPERIPH_DRIVER

工程创建完成

2.编译程序

根据需求选择编译的方式,在下方输出窗口可以看到报错和警告。

3.调试

3.1硬件仿真调试

进入调试模式:

调试面板详解:调试选项

面板内容

3.2软件仿真调试

修改魔法棒中Debug选项卡,如图:

Dialog DLL改为 DARMSTM.DLL

Parameter改为 -pSTM32F103C8(此项根据具体型号而定)

以引脚的逻辑分析为例

设置想要检测的引脚:

点击run即可查看引脚电平图像:

4.用KEIL开发stm32开发底层程序

在User文件夹下编写程序。

以点灯为例(使用库函数):

#include "stm32f10x.h"​

int main(void)

{

GPIO_InitTypeDef GPIO_InitStructure; //定义GPIO初始化结构体 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);//开启对应时钟 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;//选择控制引脚 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//设置引脚模式为通用推挽输出 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//设置引脚速率为50MHz GPIO_Init(GPIOC, &GPIO_InitStructure);//初始化GPIO

GPIO_ResetBits(GPIOC, GPIO_Pin_13);//点灯 return 0;

}

5.下载编译过后的代码

以ST-Link仿真器为例。安装并更新仿真器驱动。

用仿真器连接开发板。

设置魔法棒

选择ST-Link进行调试

Flash下载设置

点击下载

查看运行情况

灯泡点亮,程序正在运行。

6.查看寄存器

在左侧寄存器面板查看:

具体的寄存器含义:

7.查看生成代码的地址

也可以在右下方Memory1选项卡中查看和修改内存中存储的数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值