MM32系列MDK5工程从0到1

1. 前言
灵动微官方已经给出库函数和寄存器例程,请点击传送门MM32例程下载,下载后的工程代码如下图所示,MBL073PF_n_lib和MBL073PF_n_reg分别对应着库函数和寄存器版本例程,因为其共用了部分文件,每个工程目录里不包含所有的驱动文件,直接把此目录下的工程代码复制到电脑其他位置则无法完成编译,作为一个有点强迫症的同学,我必须重0开始搭建自己熟悉的工程架构(感觉受到了原子哥的影响,┗|`O′|┛ 嗷~~)。


2. 开始盖楼
2.1地基工程
前往前言部分下载文件以及MDK5的兼容包(吐槽一下:MM32系列的MDK兼容包分的太细了),安装之后新建文件夹MM32L06xxDemo,包含子文件CORE,HARDWARE,OBJ,USER,STARTUP,SYSTEM以及MM32L06x_Lib。


2.2筑墙工程
首先需要一直M0内核相关文件,右侧\Device\CMSIS\KEIL_CORE中文件复制到左侧CORE文件;Device\MM32L0xx\HAL_lib文件下所有东西全部复制到MM32L06x_Lib;Device\MM32L0xx\Include文件复制到USER目录下;Device\MM32L0xx\Source目录下system_MM32L0xx.c复制到USER中;打开BLINK例程复制文件SYSTEM文件,HARWARE文件完全复制以及复制main.c到USER中,文件复制完毕。

有好奇心的同学马上就会提出疑问,你怎么知道需要复制哪些文件呢?大家可以随便用MDK5打开一个官方给出的例程,找到下图所示的内容可以看出其共用的文件路径,我们只要把此文件路径下的全部文件复制到我们新创建的文件目录下,并在此处添加对应的包含路径即可。(比较熟悉MDK5的同学可以直接把例程拷贝处理单独处理共用的文件即可)


2.3封顶工程

添加所有的.c文件到工程中,并且点击Option在C/C++中添加.h对应的包含路径,本人是把MM32L06x_Lib/src中的全部文件添加进工程中,朋友们可以根据自己的需求选择性添加对应的驱动文件。(注意一定要包含全部的头文件路径,如果出现cannot open source input file “HAL_device.h”: No such file or directory,则查看工程目录下是否有该文件以及此文件路径是否包含进去)
上述操作完成之后编译整个工程,出现 0 Error,1 Warning,说明文件编译OK,祝你大功告成。

但是前文有说到作者本人是一个有点强迫症的人,因此要把这个Warning消灭掉,双击Warning代码会跳到如下函数处。此Warning仅仅需要把函数设置程void类型即可完美解决这个问题。

_sys_exit(int x)
{ x = x;
}

在Keil5中创建MM32工程相关推荐

  1. 配置Tomcat和在Eclipse中创建Web工程

    配置Tomcat服务器信息: 在Tomcat的安装目录下有一个conf目录,里面存放着Tomcat服务器的配置文件,其中最为核心的配置文件是server.xml,在这个文件里我们可以配置服务器的各种参 ...

  2. 【Groovy】IntelliJ IDEA 中创建 Gradle 工程 ( Gradle 工程目录文件分析 )

    文章目录 一.IntelliJ IDEA 中创建 Gradle 工程 二.Gradle 工程目录文件分析 一.IntelliJ IDEA 中创建 Gradle 工程 在 IntelliJ IDEA 中 ...

  3. 【开发环境】Windows 安装 PyCharm 开发环境 ( 下载 PyCharm | 安装 PyCharm | 在 PyCharm 中创建 Python 工程 )

    文章目录 一.下载 PyCharm 二.安装 PyCharm 三.在 PyCharm 中创建 Python 工程 一.下载 PyCharm 到 PyCharm 主页 https://www.jetbr ...

  4. Maven学习记录之maven基本操作命令,maven本地工厂的创建,maven骨架的生成,以及在eclipse中创建maven工程:...

    摘要:今天又学习了一下maven,之前是下载并安装和配置好了maven的环境,今天主要学习的内容包括:maven本地工厂的创建,maven骨架的生成命令,maven在dos下创建maven工程,以及在 ...

  5. idea创建父子工程module_在IDEA中创建父工程和子模块module的方法步骤

    在IDEA中创建父工程和子模块module的方法步骤 1.右键选择你所创建的空文件夹,然后new,再点击Module 2.依次选择maven,这里不要点击"create from arche ...

  6. DEA中创建父子工程与maven打包Springboot聚合工程报错程序包不存在

    DEA中创建父子工程与maven打包Springboot聚合工程报错程序包不存在 问题描述 springboot 项目打包(package)或安装到仓库(install)的时候报错:程序包com.fu ...

  7. eclipse 中创建maven工程问题(常见)

    1.创建maven 工程的时候 Failed to read artifact descriptor for org.apache.maven.plugins:maven-resources-plug ...

  8. matlab中创建一个工程,从文件夹创建新工程

    从文件夹创建新工程 如果您有许多文件并希望将它们整理为一个工程(无论是否进行源代码管理),请按照以下步骤创建一个新工程. 使用 Simulink® Start Page 中的 Folder to Pr ...

  9. Maven的Pom文件 ( Eclipse中创建Maven工程, 使用注意点,DevOps相关)

    ■POM Eclipse 使用注意点 修改POM之后 step1:右键点击工程,Maven,プロジェクトの更新 (project 更新) step2:点击 [プロジェクト](project )⇒[すべ ...

  10. 在Keil5中如何删除工程

    在MDK5中,并没有直接删除工程的功能(至少我没有找到),后来上网查了资料,发现只要在MDK5中点击Project -> Close Project,关闭当前工程,然后在当前工程路径中找到该工程 ...

最新文章

  1. 阿里云域名注册和虚拟云主机
  2. 使用js对来判断一个字符串中括号是否平衡匹配
  3. flink运行原理_浅谈Flink分布式运行时和数据流图的并行化
  4. times(NULL) Segmentation fault
  5. 51nod 1379 索函数
  6. Debian11服务器系统默认不存在sudo命令的解决办法
  7. Springboot(java)程序部署到k8s
  8. 海思烧写工具需要java_HiTool(海思芯片烧录工具)下载
  9. java数组和集合的区别_java中数组和集合的区别是什么?
  10. Ubuntu安装tftpd服务器
  11. lecture 16:DID双重差分方法
  12. 2018第五届“云鼎奖”申报启动
  13. 重装系统ie无法解析服务器名称,教你解决ie浏览器打不开的方法
  14. 如何解决仓库无线网络覆盖问题?
  15. 2022-06-29 AndroidR 获取接近传感器Proximity Sensor的信号,休眠和唤醒。
  16. ICCV2021 | Vision Transformer中相对位置编码的反思与改进
  17. 热经-北京中地时空数码科技有限公司-研发工程师(WEBGIS方向)
  18. 第8章 对象引用、可变性和垃圾回收
  19. 双边滤波去噪matlab代码,双边滤波器原理及其matlab实现
  20. 看看成功例子 四款iPhone音乐APP应用赏析

热门文章

  1. 模糊粗糙集及数据降维
  2. 安装pyHive报错
  3. 如何阅读mysql源代码_我是如何开始阅读MySQL源码的?
  4. 如何在物理机上安装Centos操作系统(实体机物理机)
  5. 安装centos7.3操作系统
  6. 【证明】—— 矩阵秩的相关证明
  7. 板绘萌新拿到数位板之后,不知道先做什么?这些板绘学习小技巧必须要知道
  8. 应用案例 | 2018款奥迪 A4 Avant 车发动机无法起动故障诊断
  9. 基本知识 100024
  10. 电子海图数据购买、安装、更新及使用注意事项