如何配置Keil51开发环境.pdf

上传人:飞****9 文档编号:128035198 上传时间:2020-04-07 格式:PDF 页数:16 大小:3.64MB
返回 下载 相关 举报
如何配置Keil51开发环境.pdf_第1页
第1页 / 共16页
如何配置Keil51开发环境.pdf_第2页
第2页 / 共16页
如何配置Keil51开发环境.pdf_第3页
第3页 / 共16页
如何配置Keil51开发环境.pdf_第4页
第4页 / 共16页
如何配置Keil51开发环境.pdf_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《如何配置Keil51开发环境.pdf》由会员分享,可在线阅读,更多相关《如何配置Keil51开发环境.pdf(16页珍藏版)》请在金锄头文库上搜索。

1、1 如何配置 Keil51 开发环境 V1 0 2 0 0 7 8 20 我们将使用 Cy pres s 提供的固件框架来一步一步说明如何使用 Kei l C51 来建立我们的工程 如何配置工程并编译出我们想要的 he x 文件 以及如何通过 Cy p res s 提供的 hex 2 bix ex e 程序 将 he x 文件转换为 i i c 格式的文件 一 安装必备软件 1 首先确定你安装了光盘提供的 Kei l uVi si on 2 安装程序 这个破解的程序编译出来的代码 大小没有限制 如果你没有安装 Kei l uVi si on 2 那么在安装 EZ U SB devt ool s

2、 versi on 2 6 17 0 0 ex e 时会提示安装一个有限制版本的 Kei l C51 这个 Kei l C51 程序将限制你编译出来的文件最大 4K 字节 2 然后确定安装了 EZ U SB devtools vers ion 2 6 17 0 0 ex e 安装之后 在安装目录下你会看 到 Cypres s USB Target Fw Fx 2 目录 这个目录下的文件就是 Cy pres s 提供的固件框架程 序 如果你用过 VC 的向导生成过 MFC 的应用程序的话 这个框架有点类似于 MFC 的框架 标准的 U SB 通讯命令的响应 以及对重枚举的处理 程序的流程以及中断

3、的声明已经搭好 了 剩下的就是你在这个流程中合适的地方加入你自己的代码 根据你的设备属性修改配置 信息等就行了 关于框架的详细说明请见另一节 FX2 框架程序详细注释 二 建立 Kei l uVi si on 2 工程 安装了必备的工具后 我们就可以建立和编译我们的工程了 1 我们在 D 盘下建立一个 USB PRO JECT 目录 然后建立一个 SRC 子目录 将 Cypres s U SB Target Fw Fx 2 目录下的所有 C 和 A51 文件拷贝到 D U SB PRO JECT SRC 目录下 也就是将 dscr a51 fw c per ip h c 考过来 2 启动 Ke

4、i l uVi si on 2 程序 选择 Proje c t Ne w Projec t 出现如图一所示的对话框 图一 创建一个新工程 fw uv2 注意 我们将我们的工程保存到 d usb projec t 目录下 这样工程的结构比较清晰 点击保 存之后 出现入图二所示的对话框 提示我们选择目标板上我们使用的 CPU 这里我们选 通过电子邮件提交 2 择 Cpres s Semi c o n ducto r 数下的 EZ U SB FX2 CY7C6 8 XXX 即可 图二 选择 CPU 然后我们会看到入图三所示的提示 提示我们是否将标准的 8 0 51 启动代码拷贝到工程目录 并将代码文

5、件加入工程 图三 提示是否将 sta rtu p a 51 加入工程中 实际上就是问你是否加入 STARTUP A51 文件到你的工程中 这个文件是一段汇编代码 会 在程序复位之后首先执行 进行堆栈及内存的初始化等工作 然后将程序指针跳转到你的 mai n 函数处执行你的代码 如果你不想修改这段初始化程序 你就不用加了 这里我们选 择 否 这样在程序复位之后 在你的 mai n 函数执行之前 会执行默认的启动代码 我想 这个就是 bo otloade r 吧 这时 我们会发现在 d usb projec t 目录下会生成一个 fw uv 2 的文件 Kei l uVi si on 2 的工程

6、文件的扩展名为 u v 2 他管理整个工程中的文件以及配置信息 3 将代码文件加入到工程中 默认情况下 新创建的工程在 Kei l uVi si on 2 中的结构如图四 所示 3 图四 新工程的结构 我们可以理解为 Target 1 为你的工程名 So ur ce G roup 1 为你为代码所作的分类夹 我们可 以通过先选择 再点击一下名字 这 两 个 名 字 都 可 以处于编辑状态 我们可以将这两个 名字 改为我们更舒服的名字 这里我将 Target 1 改为 Firmwa r e Sourc e G r o up 1 改为 sr c 如图 五所示 4 图五 更改工程树 这时我们选择 s

7、r c 文件夹 点击鼠标右 键 出 现 如 图 六 的 画面 并选择 Add Files to G r ou p sr c 5 图六 添加文件到 sr c 组中 在弹出如图七所示的对话框之后 选择所有 sr c 目录下面我们拷贝过来的文件 并点击 Ad d 按钮 然后关闭此对话框 文件就添加到了工程 Firmwa r e 的 sr c 组里面了 见图八所示 图七 添加 sr c 目录下面的源文件 图八 源文件加入到工程的 sr c 组中 注意 sr c 组和 sr c 目录不一定要同名 不同名也可 Sr c 组只是 Kei l uVisio n 管理项目的组 织形式 而 sr c 目录是你自己

8、组织你的代码的形式 两者没什么关系 三 设置编译环境 6 我们应该知道 要想编译一个源文件 必须告诉 Kei l uVi si on 2 编译器用什么编译器 连接 器用什么 编译文件所需要的头文件 库文件等编译器要到哪里去找到 这 些对于所有的 开 发软件都会有这个要求 好多网友编译不出程序 都是这些设置没有设置好 或者不了解 编 译和联接的流程而出现的问题 再有就是编译程序并不一定需要用 ID E 环境来编译 直接 写一个批处理文件 直接调用编译程序 连接程序也可 但需要了解指令的参数 但可以参 考一些 BA T 文件来编写 实际上 Cy pres s 提供的每一个例程都有一个批处理文件来编

9、译程 序 但在编译之前 你 可 能 也 需 要 修改一下相关的设置以使路径以及一些设置符合你的要求 才能编译出代码 这里我们只介绍在 Kei l uVi si on 2 中的编译环境设置 首先 Kei l uVision 2 需要知道编译器 连接器在那里 C51 程序以及 A51 程序所用的标准头 文件及库文件在那里 对于安装了 Kei l uVi sio n 2 之后 那么编译 连接所需要的程序在 C Kei l C51 Bi n 目录下 假设我安装在 C 盘根目录下 头文件会在 C Kei l C51 In c 目 录下 库文件在 C Kei l C51 l i b 目录下 对于我们这个工

10、程 我们用到了 Cy pres s 提供的头文件 以 及库文件 我们也要将这些文件的路径告诉 Kei l uVi si on 2 那么我们这个工程用到了哪些头 文件和库文件呢 我们用到了 fx 2sdly h fx 2 h fx 2 r egs h 这三个头文件和一个 ezusb l i b 库 文件以及一个 Cy pres s 已经写好的 U SBJmpTb a 51 的中断向量定义文件 接下来我们为了更 清晰的组织我们的程序 我们在 d usb proje c t 目录下创建两个文件夹 分别是 in c 和 l i b 然后我们到 EZ U SB devt ool s versi on 2

11、 6 17 0 0 ex e 安装的目录下找到 ezusb l i b 拷贝到 l i b 目 录下 将 fx 2sdly h fx 2 h fx 2 regs h 拷贝到 in c 目录下 并且将 U SBJm p Tb a 51 文件拷贝到 我们之前的 sr c 目录下 回到 Kei l uVi si on 2 应用程序 在Fi rmwa r e 工程树下加入一个 l i b 组 右键点击 Firmwa r e 选择 Target s G roups File s 如图九所示 图九 添加新组 弹出如图十的对话框之后 选择 Groups Ad d Fi le s 页面 输入 l i b 电击

12、 Ad d 再点确定 这 样在 Firmwa r e 树下会增加一个 l i b 组 如图十一所示 7 图十 添加 l i b 组 图十一 l i b 组添加后 Firmwa r e 工程树 然后按照上面添加 SRC 组文件的方法 将 U SBJmpTb a 51 文件添加到 sr c 组里 将 ezusb l i b 添加到 l i b 组里 添加之后的工程树如图十二所示 8 图十二 工程树和文件组 Li b 文件要添加到工程的组里 而 h 文件可以在工程设置里指定路径就行了 进行如下操作 来设置工程中引用的头文件的位置 选择 Proje c t Fi le Extensi ons Book

13、s an d Envir o nme nt 打开如下对话框 见图十三 选择 En vir o nment Set u p 页面 在 INC Folde r 栏的后面添加一 个 in c 注意需要用 隔开 由于 in c 就在工程目录下 所以直接用 in c 就行 或者输入完 整路径也行 d usb porject in c 点击确定按钮 完成环境变量设置 9 图十三 设置环境变量 理论上讲 完成以上设置 你就可以编译程序了 但编译之前为了我们的文件组织结构清 晰 我们设置一下编译之后输出的文件夹 我们在 d usb proje c t 目录下再创建一个 ob j 文件 夹 选择 Proje c

14、 t O ptio ns for Target Firmwa r e 菜单 见下图 点击 Sele ct Folder for O bje ct s 按钮 选择 Outpu t 页面 见下图 10 选择 ob j 文件夹 点击 o k 按钮 见下图 可以为输出的 he x 文件改名 这里我们默认为 f w 选择 Create H EX Fi l e 这样我们编译之 后会得到一个 fw he x 文件 见下图所示 11 用以上的方法 我们再创建一个 l s t 文件夹 将 l i s t in g 页面的输出文件设置输出到 l s t 文件夹 下 如下面几幅图所示 12 O K 我们的工程基本设

15、置完成了 但是连接器需要根据我们指定的数据存储区以及程序存储 区来定位我们编译出来中间文件 所以我们还要给工程设置一下与硬件相关的内容 四 设置程序存储区和数据存储区 我们知道 Fx 2 内部有一个增强型的 8051 核 这个 8051 内部有有 12 8 字节的直接寻址空间 0 0 x 7F 有 12 8 字节的间接寻址空间 0 x80 0 xFF 还有 12 8 字节的寄存器空间 0 x8 0 0 xFF 由于间接寻址空间与寄存器空间地址重叠 但如果在高 12 8 字节用直接寻址 那么他会自动 取寄存器空间的地址 8051 的外部 fx 2 的内部从 0 x 00 0 0 0 x 1FFF

16、 空间的 8 K 字节 8 192 字 节 的 Ra m 空间可用来存储程序和数据 0XE0 00 0XE1FF 的 0 5K 字节 512 字节 ra m 空 间只能用来存储数据 其余的 RA M 是 FX2 已经定义好的寄存器空间和保留空间 这些空 间有的可读写 有些是只读的 具体的操作需要读 FX2 的寄存器手册 这些内容都要告诉 编译器和连接器 以使编译出来的代码能正确的放到正确的地址 选择工程 Firmwa r e 并点击鼠标右键 在 弹出的菜单中选择 Opt ions for Target Firmwa r e 打开 工程设置对话框 如下图所示 13 工程设置对话框 我们首先进入 Targe t 页面 1 在 Mem ory M ode l 中有三项内存模式的选择 Smal l 变量存储在内部 ra m 里 Comp act 变量存储在外部 r a m 里 使用页 8 位间接寻址 Large 变量存储在外部 Ra m 里 使用 16 位间接寻址 一 般 我们选择 Sma l l 内存模式 这 样我们定义 的变量编译器会根据内存的使用情况尽可能分配到 FX2 中 8 0 51

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号