keil如何添加h文件_ECBM系列教程1:如何搭建ECBM库环境。
STC8属于8051单片机,发展到现在已经是带流水线的版本了,不过依然还是支持8051的指令集。因此任何支持8051的IDE都可以用来开发STC8单片机。
不过由于ECBM库的一些特性,我们只使用KEIL for C51来编程。所以第一步就是需要从网上下载KEIL的安装包。尽量选择基于KEIL4的KEIL for C51版本,那些基于KEIL2的已经太老了。也可以加群778916610获取。ECBM库2.0版也可以通过QQ群获取,也可以通过码云克隆、下载。
ECBM库2.0版gitee.com
安装方面的细节,这里就不细谈,只是ZZZQ的说一声尽量使用正版软件。安装完成后,可以看到图标是这样的。
![](/assets/blank.gif)
KEIL的作用有2个:1.提供一个包含各种工具的编辑环境;2.将代码从C语言编译成机器码(HEX文件)。所以我们还需要一个能把机器码装进单片机的烧录软件:STC-ISP。
![](/assets/blank.gif)
打开STC-ISP文件,界面如下:
![](/assets/blank.gif)
如图所示,先找到Keil仿真设置的选项卡,然后点击“添加型号和头文件到Keil中”。
![](/assets/blank.gif)
在浏览文件夹中,选择Keil的安装地址,点击Keil文件夹使其呈选中状态,然后点“确定”。
![](/assets/blank.gif)
添加型号成功后,Keil就能编译STC的单片机了。接下来,从群里或者码云那里弄到一份ECBM的库文件,文件结构如下:
![](/assets/blank.gif)
device文件夹里存放着一些外设模块的驱动文件(不断更新中)。ECBM_LIB文件夹里存放着单片机内部资源的库函数。stc.h则是STC8的头文件,作用相当于reg51.h。
一切准备就绪后,开始新建工程。打开KEIL,点击Project,选择New uVision Project。你可以任意指定一个位置来存放工程文件,但是在路径中不要包含中文!选择好路径、输入工程名字后,点击“保存”。此时会弹出一个框让你选择CPU类型。
![](/assets/blank.gif)
选择STC MCU Database,然后点OK。
![](/assets/blank.gif)
在型号选择框里,寻找STC8A8K64S4A12。STC8的内核都是一样的,所以也可以选择其他STC8开头的型号。而STC8A8K64S4A12是STC8里资源最丰富的型号,推荐选择这个。然后点OK。
![](/assets/blank.gif)
之后会弹出这个框说要不要复制STARTUP.A51到工程中,这个文件对于C语言编程来说是必须的,所以我们选择“是”。如果是使用汇编编程,就点“否”。
![](/assets/blank.gif)
新建好的工程什么都没有,在Target 1上点击右键选择Add Group。然后输入组的名字,比如LIB。这个名字当然是自定义的。
![](/assets/blank.gif)
然后双击刚才新建的组,在弹出的文件选择框里进入ECBM_LIB文件夹,全选里面所有的文件,然后点击“Add”。
![](/assets/blank.gif)
库文件搞定后,点击File->New...新建一个文件,CTRL+S保存为main.c文件。然后双击Source Group 1,和添加库文件一样把main.c添加进来。最终的工程结构是这样的:
![](/assets/blank.gif)
然后点击选项栏的魔术棒图标,
![](/assets/blank.gif)
在Target选项卡中,将Memory Model选择为Large,这是为了默认把变量都存到XDATA区,充分利用STC8的大内存。Code Rom Size也可以选择Large。
![](/assets/blank.gif)
在output选项卡中,勾选Create HEX File。这样才能生成HEX文件。
![](/assets/blank.gif)
在BL51 Misc选项卡中,在Warning里输入16。因为16号警告是警告一些函数定义了却没有被使用。对于库函数来说,因为你不会用到所有的库函数,所以不关掉这个警告的话,会比较烦人。
![](/assets/blank.gif)
还剩最后一步,在C51选项卡中,找到Include Paths,点击右侧的“...”按键,然后在路径选择框里点新建(箭头3指的图标),把device和ECBM_LIB文件夹都添加进来。这样在加载库函数和外设模块头文件的时候,Keil才知道去哪里去找头文件。
![](/assets/blank.gif)
大功告成!打开main.c输入
#include
按F7编译。出现如下的输出,说明工程搭建完毕!
![](/assets/blank.gif)
图中信息显示了目前工程占用了15.7字节的data,这个区一般有128字节~256字节。xdata区占用了449字节。根据型号不同,该区域的大小由1K~8K不等。Code区占用了6424字节,库函数还是比较占空间的,所以不推荐使用16K以下ROM空间的STC8单片机。
预告:下一章里,将会介绍如果使用GPIO库点亮一个LED灯。
keil如何添加h文件_ECBM系列教程1:如何搭建ECBM库环境。相关推荐
- keil如何添加h文件_【专栏】Keil系列教程
置顶/星标公众号,不错过每一条重要消息! 本教程由作者strongerHuang原创发布. 版权所有:禁止商用 申明:该文档仅供个人学习使用,转载请公众号联系作者授权. 该系列教程结合MDK-ARM整 ...
- keil如何添加h文件_如何给PDF文件添加水印?分享给PDF批量加水印的方法
如何给PDF文件添加水印?在处理一些重要的商业文件中,很多人害怕文件内容被抄袭盗用,就会在文件中添加水印,其中包括Word.Excel.PPT.图片.PDF等多种不同的文件.那如果是PDF文件,你知道 ...
- keil如何添加h文件_被Keil坑了一天!实在太意外了!用Keil的来瞅瞅看
在前面的文章和视频里,我一直是以STM32F303VCTx为基础给大家介绍的,项目上也一直用着,没出现任何问题.但是前几天在探索建立基于GNU ARM+Cygwin+VSCODE的免费开发环境的时候, ...
- keil如何添加h文件_如何给PDF文件添加水印?分享给PDF批量加水印的方法-PDF ——快科技(驱动之家旗下媒体)-...
如何给PDF文件添加水印?在处理一些重要的商业文件中,很多人害怕文件内容被抄袭盗用,就会在文件中添加水印,其中包括Word.Excel.PPT.图片.PDF等多种不同的文件.那如果是PDF文件,你知道 ...
- stm32cubemx生成不了keil工程文件_STM32CubeMX系列教程03_创建并生成代码工程
说明: 本文原创作者『strongerHuang』 首发于微信公众号『嵌入式专栏』,同时也更新在我的个人网站:EmbeddedDevelop 标签:STM32. STM32CubeMX. LL库. H ...
- 使用keil软件添加.C文件和.H文件到工程
使用keil软件添加.C文件和.H文件到工程 1.第一步 在所建工程的文件夹下的HARDWARE子文件夹下创建一个所要添加文件名称,例如要添加led.c和led.h文件,可以先在HARDWARE文件目 ...
- Keil uVision添加新文件夹
Keil uVision5是款比较优秀的IDE编译器 最近接手一个项目,代码已经形成一个版本,在此基础上新增一些新功能 由于不破坏原先结构的目的,因此新增的部分采用独立方式(存放在独立的文件夹),一开 ...
- 系列教程 | 用Jina搭建PDF搜索引擎Part 1
PDF Search 系列教程来咯,在 Part 1 中,我们将演示如何从 PDF 中提取.处理并存储图像及文本. 随着神经搜索 (Neural Search) 技术的普及,越来越多开发者,开始尝试用 ...
- 王姨劝我学HarmonyOS鸿蒙2.0系列教程之四Git搭建下载实例!
原创PDF |<Android 深入系统完全讲解>免费开源,可能价值百万! 王姨劝我学HarmonyOS鸿蒙2.0系列教程之三Ability概述&&调用方法! 相信大家看了 ...
最新文章
- ×××技术在ATM机无线组网中的应用
- G6 图可视化引擎——入门教程——插件与工具
- python笔记之序列(list的基本使用和常用操作)
- tmpfs 文件系统介绍
- `object.__init__`
- AndroidStudio_解决butterknife在module中使用BindView Attribute value must be constant---Android原生开发工作笔记229
- Vue2.0入门系列——父子组件间通信
- 解决Uncaught (in promise) reason的问题
- 【hdoj1021】类斐波那契数列的循环节(f[i]能否mod3?找规律)
- 什么是电子元器件 电子元件和电子器件的区别
- 玉柴spn码故障对照表_玉柴电控柴油机故障代码及读码方法
- Linux 用户必须知道的 14 个常用 Linux 终端快捷键
- linux打开终端的快捷键是什么?
- MXF视频文件损坏的修复方法
- python 两点曲线_圆锥曲线第八节:直线与椭圆的相交
- 网站 下载 整个_如何下载整个网站?
- MPI聚合通信之MPI_Bcast函数
- 免费在线汉信码识别(Online Hanxin Decoder)
- 【VR游戏】封神榜传
- 移动通信各制式、调制的速率及频谱利用率(2G-4G)