华大单片机如何向MDK中加入头文件和库文件

  • 关键文件介绍
  • 加入头文件

大多数习惯于8位单片机开发的工程师,都会使用操作寄存器的方式来使用单片机。当初次接触华大单片机库开发的时候,会发现库里有好多的文件,不知道如何下手。本篇文章会先介绍库的结构和里面关键文件,之后会介绍如何向之前建立好的工程里加入文件,使工程能编译起来。
我们首先看下HC32F003芯片的DDL库里文件结构


关键文件介绍

startup_hc32f003.s文件为汇编格式的文件,是启动文件。启动文件主要是进行堆栈之类的初始化,中断向量表以及中断函数定义。启动文件要完成引导进入 main 函数。

system_hc32f003.c文件的功能是设置系统以及总线时钟,这个里面有一个非常重要的 SystemInit()函数,这个函数在我们系统启动的时候都会调用,用来设置系统的整个时钟系统。

hc32f003.h文件里面非常多的结构体以及宏定义。这个文件里面主要是系统寄存器定义的声明以及封装内存操作,对于这里是怎样声明以及怎样将内存操作封装起来的,我们在后面再做讲解。

ddl.c和ddl.h文件中包含了中断函数的定义、延时函数、清内存函数和格式化打印输出的相关函数。


加入头文件

打开之前建立的mdk_test工程。
点击“魔术棒”,弹出设置里C/C++项,选Inlcude Paths项后面的“…”进行设置,操作如下图所示:

在弹出设置框中按下图步骤进行操作,选中common文件夹。

重复上面的设置步骤加入inc文件夹和source文件夹。头文件全部加好后如下图所示:

头文件路径指好后,在项目中加入项目使用的文件。
Step1: 右键点击Target 1,在弹出框中选Add Group…,生成New Group文件夹



Step2: 把New Group文件夹改名为common。双击common文件夹,在弹出框中选中common文件夹中的startup_hc32f003.s和ststem_hc32f003.c文件。

Step3: 重复Step1和Step2步骤新建driver文件夹并向其文件夹内加入clk.c和ddl.c文件。并把Source Group 1文件夹名字改为source。这步完成后如下图

Step4: 单击Target 1 将其名字改为mdk_test

Step5: 在工具栏上先新建文件,并把文件存在source文件夹中,文件名存为main.c。在工程中把按Step2步骤把main.c文件加入到source文件夹中,此步骤完成后如下图

Step6: 在main.c文件中输入如下代码。

#include "ddl.h"int32_t main ()
{;
}

Step7:点击工具栏上的build按钮进行编译

编译成功后在编译输出窗口我们会看到目前的项目,0错误,0警告。

经过以上的步骤操作一个新的可以编译的工程我们就建好了。后面就可以在这个工程的基础上进行不同项目的开发。


关注微信公众号『芯缘意码』,查看更多内容,回复“加群”加入技术交流群。
淘宝 店铺 搜索 『芯缘意码』,购买开发学习板仿真器。


华大单片机如何向MDK中加入头文件和库文件相关推荐

  1. Linux下gcc编译中关于头文件与库文件搜索路径相关问题

    如何指定GCC的默认头文件路径 网上偶搜得之,以之为宝:) 原地址:http://blog.chinaunix.net/u/28781/showart.php?id=401631 ========== ...

  2. linux+C环境下动态管理头文件和库文件

    本文共分三个部分:首先给出了一个简单的Makefile的例子,然后分别详细阐述了头文件和库文件的相关知识 1.一个Makefile的例: -L是指定链接时搜索路径,比如-L./等: -l是指定具体的库 ...

  3. .h头文件 .lib库文件 .dll动态链接库文件关系

    .h头文件是编译时必须的,lib是链接时需要的,dll是运行时需要的. 附加依赖项的是.lib不是.dll,若生成了DLL,则肯定也生成 LIB文件.如果要完成源代码的编译和链接,有头文件和lib就够 ...

  4. C程序背后的故事--头文件、库文件的查找

    文章目录 1 C程序中头文件.库文件的查找 1.1 头文件有什么用 1.2 C文件有什么用 1.3 头文件在哪里 1.4 printf函数在哪里 1.5 如何指定自己的库 1 C程序中头文件.库文件的 ...

  5. 头文件和库文件的区别

    头文件中有函数的申明,库文件实现函数的定义. 比如,printf函数.使用时应包括stdio.h,打开stdio.h你只能看到,printf这 个函数的申明,却看不到printf具体是怎么实现的,而函 ...

  6. .h头文件 .lib库文件 .dll动态库文件之间的关系

     .h头文件是编译时必须的,lib是链接时需要的,dll是运行时需要的. 附加依赖项的是.lib不是.dll,若生成了DLL,则肯定也生成 LIB文件.如果要完成源代码的编译和链接,有头文件和li ...

  7. linux应用开发:头文件和库文件的路径及使用

    1. 头文件 1)系统标准头文件位置: /usr/include下,以及安装库的头文件位置:/usr/local/include/ 如 #include<linux/can.h> 对应 / ...

  8. linux-gcc 编译时头文件和库文件搜索路径

    linux-gcc 编译时头文件和库文件搜索路径 一.头文件    gcc 在编译时寻找所需要的头文件 :    ※搜寻会从-I开始    ※然后找gcc的环境变量 C_INCLUDE_PATH,CP ...

  9. Winsock网络编程头文件及库文件的设置

    Winsock是Windows下网络编程的规范.使用Winsock可以实现基于TCP或UDP的通信. 1 Winsock版本 Winsock主要包含两个版本,即Winsock1和Winsock2.Wi ...

最新文章

  1. python白名单验证-Python中XSS白名单过滤的实现
  2. 手机如何升级为鸿蒙系统,华为手机如何升级鸿蒙系统
  3. java filehelper_Spring 发送邮件 使用File指定附件
  4. 镜像公测招募啦!!!用镜像开通云服务器,限时免费体验!!
  5. ie6常见css bug
  6. php完整验证码代码
  7. 光端机图像出现噪点或者数据有时不通的情况
  8. Java 算法训练 一元三次方程求解
  9. 在vb中使用Iphlpapi.dll获取网络信息(上)
  10. NLP学习—7.CNN与TextCNN
  11. Python成长之路第一篇(1)__字符串初识
  12. 校内胡策 T9270 mjt树
  13. android后台进程隐藏手段
  14. Windows11 出现桌面管理器dwm.exe占用内存过高的解决方法
  15. 大数据Hive数据查询语言DQL
  16. scrapy异步爬取猫眼实时票房
  17. 应用内打开QQ,发送消息给指定联系人(临时会话),应用内加群
  18. JavaScript基础(4)_强制类型转换
  19. windows下,对opencv进行gcc/g++编译
  20. java时区问题_Java时区问题

热门文章

  1. Android程序安装包APK的制作
  2. bistuacm 2019年第⑦场新生训练赛题解
  3. springboot+jsp基于javaweb房地产销售系统
  4. USB/TTL/RS232/RS485
  5. 语音识别模块骚操作——基于LD3320的语音识别模块LD-V7——友军计划2
  6. ipad+html+全屏模式,无法设置全屏iPad的移动Safari浏览器从DIV HTML内容隐藏字段内容...
  7. 开关电源芯片TOP264vg
  8. 个推的appid是指什么_集成指南
  9. ninja 编译系统
  10. 如何锁定EXCEL表格而保留某些单元格可以编辑