MDK 5.25下载链接:https://pan.baidu.com/s/1Sr1qPNNNzyqKC4OrTbXjwg 提取码:htp9
1、安装mdk525.exe,然后破解即可
2、下载离线的.pack
器件支持包,点击右侧按钮下载
3、下载后双击文件,按照默认路径安装(当前keil 5安装路径)
4、新建【TEST】工程文件夹,再新建【子文件夹】
序号 | 目录 | 作用 |
---|---|---|
1 | CMSIS | 固件库核心core_cm3、启动文件startup |
2 | HARDWARE | 硬件外设 |
3 | OBJ | 目标文件 |
4 | STM32F10x_FWLib | 固件库文件 |
5 | SYSTEM | 系统 |
6 | USER | 工程文件 |
5、新建MDK 5工程,打开MDK 5,单击【Project】—>【New Uvision Project】,【保存】到预先建立的【TEST】工程文件夹的子文件夹【USER】
6、选择对应的开发器件
7、MDK会弹出【Manage Run-Time Environment 】对话框,单击【Cancel】
8、打开官方固件库包【STM32F10x_StdPeriph_Lib_V3.5.0】,把Libraries\CMSIS\CM3\CoreSupport下的core_cm3.c和core_cm3.h复制到【CMSIS】,DeviceSupport下的startup_stm32f10x_hd.s,stm32f10x.h,system_stm32f10x.c,system_stm32f10x.h复制到【CMSIS】,如图所示:
9、把【STM32F10x_StdPeriph_Driver】下的【inc】和【src】文件夹复制到【STM32F10x_FWLib】,如图所示:
10、把【Project】的【STM32F10x_StdPeriph_Template】下的stm32f10x_conf.h,stm32f10x_it.c,stm32f10x_it.h,system_stm32f10x.c复制到【USER】目录
11、开发板例程的【SYSTEM】的3个文件夹【delay】、【sys】、【usart】复制到【SYSTEM】
序号 | 目录 | 作用 |
---|---|---|
1 | delay | 实现系统的延时功能 (1)void delay_init(void) (2)void delay_us(u32 nus) (3)void delay_ms(u16 nms) |
2 | sys | (1)sys.c,sys.h (2)stm32f10x.h (3)system_stm32f10x.h |
3 | usart | usart.c,usart.h 用于串口的初始化和中断接收 |
12、修改Project下的【Target 1】为【TEST】,【TEST】下新建目录
13、新建【main.c】文件,保存到【USER】目录
#include "led.h"
#include "delay.h"
int main(void)
{
delay_init();
LED_Init();
while(1)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_8);
GPIO_SetBits(GPIOD, GPIO_Pin_2);
delay_ms(300);
GPIO_SetBits(GPIOA, GPIO_Pin_8);
GPIO_ResetBits(GPIOD, GPIO_Pin_2);
delay_ms(300);
}
}
14、新建【led.c】和【led.h】文件,保存到【HARDWARE】—>【LED】目录
led.c:
#include "led.h"
void LED_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOD, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_SetBits(GPIOA, GPIO_Pin_8);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
GPIO_Init(GPIOD, &GPIO_InitStructure);
GPIO_SetBits(GPIOD, GPIO_Pin_2);
}
led.h:
#ifndef __LED_H
#define __LED_H
#include "sys.h"
void LED_Init(void);//初始化
#endif
15、如图所示添加文件到【TEST】工程目录
16、点击魔术棒 ,出来一个对话框,然后点击【C/C++】选项,在【Preprocessor Symbols】的【Define】框填入【STM32F10X_HD,USE_STDPERIPH_DRIVER】
17、把工程中引用到的所有头文件的路径都包含到进来,点击【Include Paths】右边的按钮。弹出一个添加 path 的对话框,然后我们将图上面的3个目录添加进去。
18、更改【目标文件】输出目录为【OBJ】
19、编译通过
20、选择调试工具,然后在【Setting】—>【Flash Download】对话框,勾选【Reset and Run】
21、单击【F8】下载固件,STM32自动运行【LED】程序。
Keil 5 常用快捷键如下:
序号 | 快捷键 | 功能 |
---|---|---|
1 | F7 |
编译 (Build) |
2 | F8 |
下载 (Download) |
3 | F12 |
跳转到定义 (Go to Definition) |
4 | Ctrl + F5 |
开始 调试 / 退出 调试 |
5 | F10 |
逐过程调试(Step Over ) |
6 | F11 |
逐语句调试(Step ) |
7 | F9 |
插入 断点 / 取消 断点 |
8 | Ctrl + - |
返回上个 界面 |
9 | Ctrl + + |
下个 界面 |
10 | Ctrl + Shift +F |
全局查找 |
11 | Ctrl + G |
跳到指定行 (Line) |
12 | Ctrl + H |
替换 字符串 |