ARM开发环境MDK5.0建立并简单编译STM32程序

    科技2025-12-02  15

    Keil uVision5 MDK(ARM)安装与注册

    因为我之前已经安装好了,此安装过程注册前图片及内容借用此博客https://blog.csdn.net/bornpride/article/details/88076124

    安装Keil uVision5

    软件链接百度网盘链接 分享链接:https://pan.baidu.com/s/19j_hPiN_beeXRwkjrde44Q 提取码:opnh

    1. 下载MDK5.0软件双击安装包,点“Next”

    2. 勾选“I agree to…”,点击“Next”

    3. 选择软件和支持包安装路径

    4. 填写信息(可以随便填写),点击“Next”

    5. 安装过程需要等待几分钟

    6. 安装结束时,会弹出如下提示,选择“安装”

    7. 安装完成,点击“Finish”

    注册Keil uVision5

    注册需要注册机,注册机网盘分享链接 链接:https://pan.baidu.com/s/1q__uyBv1x2iJ3lerWhJPjw 提取码:tzig

    1. 打开上面安装好的Keil MDK-ARM,若出现下图提示,请关闭软件,重新以管理员身份运行软件(选中Keil uVision5 -> 右键 ->以管理员身份运行)

    2. 打开“License Management”,复制CID

    3. 解压并双击key.exe文件

    4. (1)粘贴CID到Keygen相应位置(2)Target选择ARM,(3)点击Generate,生成注册码

    5. 回到“License Management” (1)粘贴上面生成的“注册码”到 ID Code(LIC)(2)点击“Add LIC”(3)看见显示信息说明注册成功

    STM32 pack安装

    1. 在线安装

    我的软件报错

    2. 离线安装

    依次点击上图三个pack文件 第三个pack文件安装报错 是因为我的keil版本比较低,不过初学者安装前两个pack已然够用

    STM32简单程序编译

    此编译过程参照原文https://jingyan.baidu.com/article/1e5468f901fa6f484961b797.html

    STM32标准库文件提取

    1. 创建一个总文件夹Stm32_project,在文件夹下创建四个子文件夹如下图

    2. 从STM标准库中,将如图所示文件夹里面的内容复制到建立好的CMSIS文件夹

    3. 从STM标准库中,将如图所示文件夹里面的内容复制到建立好的Startup文件夹

    4. 从STM标准库中,将如图所示文件夹里面的内容复制到建立好的Lib文件夹

    5. 从STM标准库中,将如图所示文件夹里面的内容复制到建立好的User文件夹

    简单程序编译

    1. 点击“New Project”,选择路径并输入文件名“test”

    2. 选择芯片,然后一直点击“OK”

    3. 点击“Manege Project”,弹出后修改相应名称,并在“Groups”中建立几个之前在磁盘建立的文件夹

    4. 添加文件(这一步很重要)

    点击上图中的“Add Files” 注意:Startup中选择md结尾的

    5. 配置keil工具的参数。点击如图所示按钮。

    晶振大小设置为8

    输出设置 处理器类型配置,输入USE_STDPERIPH_DRIVER,有的教程说明输入USE_STDPERIPH_DRIVER,STM32F10X_MD,会导致编译出错,后面会提到 包含文件的路径配置

    最后全部点击“OK”即可

    6. 呈现的项目如图

    点击打开User文件夹中的main.c文件,删除里面的内容,建立如图所示的简单内容

    7. 编译
    这是第一次编译,有一个错误

    参考解决方案:https://blog.csdn.net/weixin_42247553/article/details/97485271 删除Startup中一个.s文件

    排除错误后,这是上面说的:在处理器类型配置,输入USE_STDPERIPH_DRIVER,STM32F10X_MD时的编译结果,依旧出错

    这是在处理器类型配置,输入USE_STDPERIPH_DRIVER时的编译结果,正确

    总结

    这次作业让我第一次感受到嵌入式系统的魅力,虽然过程很艰辛,不过结果是好的,在不断查阅资料的过程中,也是感受到了知识的不足,继续加油

    Processed: 0.023, SQL: 9