Silicon Labs 集成开发环境用户手册
1. 概述
Silicon Labs 集成开发环境(以下简称 IDE)是一套完整独立的软件程序它为设计者提供
了用于开发和测试项目的所有工具。
程序的主要特点包括:
· 项目界面;
· 编辑器具有全功能窗口字体可配置;
· 调试器具有设置断点观察点单步等功能;
· 工具链接集成支持汇编器编译器和链接器;
· 可定制的工具菜单用于集成其它编译器或开发工具;
· Silicon Labs 配置向导可为指定的目标环境产生配置代码。
2.系统需求
IDE 要求系统最低配置为:
· 不低于 16MB 内存的奔腾 166PC 机(或兼容机);
· SVGA 视频视配器;
· 硬盘驱动器(12MB 空闲磁盘空间);
· CD-ROM 驱动器(如果可从网上下载 IDE 可不需要 CD-ROM 驱动器);
· USB 通讯端口;
· 鼠标;
· 微软“视窗”操作系统 95/98/ME/NT/2000。
3. IDE 入门
下面举例说明创建项目生成程序目标代码和下载程序到目标硬件系统的必要步骤这些都
是为调试做准备。如果你已经安装了完全版的 Keil 8051 工具(即带有完整专业版的 C51 编
译器),你可以用它来汇编、编译和链接程序, 但你必须在“Tool Chain Integration”(工
具链接集成)对话框中为 Keil 8051 工具重新设置路径。关于这方面的详细信息请参考应用
笔记 AN004 ―在 IDE 中集成 Keil 8051 工具。
3.1 创建一个新项目
(1) 打开 IDE,在 IDE 窗口左边的项目窗口中,右击 New Project(新项目项),在弹出
的快捷菜单中选择 Save project New Project,弹出 Save Workspace (保存工作区)
对话框。
(2) 在 Save Workspace 对话框中选择一个适当的目录来保存项目。键入项目文件名,
然后单击 Save(保存)按钮。这样 New Project 就被刚保存的项目名取代。
3.2 配置项目
(1) 缺省设置时:Keil 8051 汇编器和链接器适合大多数应用;改变工具配置或配置 C51
编译器,选择 Project─>Tool Chain Integration 来选择和设置汇编器、编译器和链
接器。
(2) 选择 File─>New File 打开一个编辑窗口。键入源文件并保存文件。(如果保存的
文件扩展名为.c、.h 或.asm,则源文件中的关键字符将彩色加亮。)
1
(3) 在项目窗口中右击项目名,在弹出的快捷菜单中选择 Add files to project (添
加文件到项目),弹出 Add files to project 对话框。选定要添加的文件并单击打开,
这样该文件就添加到项目中了。
(4) 在项目窗口中右击项目名,在弹出的快捷菜单中选择 Add groups to project (添
加组到项目),弹出 Project Groups(项目组对话框)。选定文件夹名后单击 Add Group
(添加组),则添加所选文件夹到项目;选择 Remove Group (移出组),则从项目中移
出文件夹,或在 Create New Group 后单击 Add (添加)按钮,则在项目中添加新文
件夹框中键入新组名。
(5) 如果想汇编、编译和链接项目窗口中的所有文件生成目标文件,则右击文件名,并
在弹出的快捷菜单中选择 Add file to build,所有文件将被汇编或编译(按其扩展名
不同)和链接生成绝对目标文件。
3.3 为调试生成和下载程序
(1)一旦所有的源文件已被加到目标 Build 中,在工具栏中单击 Build(生成)按钮(或
选择 Project->Build/Make Project)生成程序代码。在 Projects->Target Build
Configuration 对话框中,如果选择 Enable automatic connect/download after build
选项,如果生成程序成功,IDE 将自动与目标系统连接并下载程序到目标硬件,准备
调试,如果在生成代码过程中发生错误,就不会下载程序。
(2)保存项目也就保存了当前 IDE 配置,例如当前目标生成配置、编辑器设置和所有已
打开的调试窗口的位置等。
4. IDE 界面组成部分
IDE 界面(见图 A.1)由如下几部分组成: Silicon Labs IDE 窗口、调试窗口、菜单和工
具栏、编辑器、工具链接集成和调试器。
项目窗口
编辑窗口
寄存器窗口
存储器窗口
输出窗口
图 A.1 IDE 界面
2
4.1 IDE 窗口
集成开发环境 IDE 用户界面由 3 个主要窗口组成: 项目浏览窗口、编辑/调试窗口和输
出窗口,如图 A.2 所示。
项目浏览窗口
编辑/调试窗口
输出窗口
图 A.2 IDE 用户界面的 3 个主要窗口
4.1.1 项目浏览窗口
* 文件察看窗口:用于察看和管理与项目相关的文件,关于项目管理的详细信息请参考
项目界面一节。
* 符号察看窗口:用于察看项目中使用符号的地址关于符号观察窗口的详细信息请参考
符号窗口一节。
4.1.2 编辑/调试窗口
* 编辑窗口:用于项目中所选文件的编写或编辑,关于编辑器的详细信息请参考编辑器
组成部分一节。
* 调试窗口:代码下载后,在调试期间此窗口用于观察代码的执行。关于调试命令的详
细信息请参考调试器组成部分一节。
4.1.3 输出窗口
输出窗口是由几个复选窗口组成这些复选窗口用于显示开发过程中的信息:
* Build 选项窗口―显示由集成工具产生的输出:如果在汇编/编译过程中出错,用户
可以双击窗口中的一条错误信息,则在编辑器中就会显示发生错误的代码行。有关
集成工具的相关信息请参考工具链接集成一节
3
* List 选项窗口,用来显示最新编译或汇编所产生的列表文件。
* Tool 选项窗口,如果工具输出被重定向到 tool.out 文件名,此窗口将显示自定义
工具所产生的输出有,关自定义工具的相关信息请参看使用定制工具菜单一节。
4.2 调试窗口
集成开发环境包含很多调试窗口,在调试期间用它来察看和修改存储器和寄存器的信息,
关于如何修改存储器和寄存器的值请参看本节下面的叙述或选择相应(你希望修改的部分)
调试窗口,可以通过 View 菜单进入调试窗口,也可以单击工具栏中的图标按钮进入某些调
试窗口(如图 A.3)。
图 A.3 调试观察窗口
下面介绍调试窗口。包括:观察窗口、SFR(特殊功能寄存器)窗口、RAM 窗口、 外
扩 RAM 窗口、代码窗口、反汇编窗口、符号窗口、堆栈窗口和寄存器窗口。
修改存储器和寄存器值
可以在光标处键入数值来修改寄存器原值修改后的值,可以在执行用户代码点(击“Go”
或“Step”按钮)前下载到硬件。方法是用“Refresh”按钮(图 refreshbutton) 强制写
入,这样修改后的值被写入仿真器,寄存器窗口将重读仿真器,窗口将被刷新,所有变化的
值以红色显示。
注意:修改寄存器的值只能在调试器处于停止状态时进行。目标处理器正在执行用户代码
时,不允许写入。
4.2.1 观察窗口
4
图 A.4 变量观查窗口
观查窗口如图 A.4 所示。在生成和下载程序代码后可以将要观察的变量加到观察窗口将
变量加到观察窗口,有两种方法可观察窗口显示变量名和数值:
① 在符号观察窗口中找到要加入的变量,在变量上单击鼠标右键并选择变量类型。
图 A.5 符号观察窗口
② 在源程序代码中找到你要加入到观察窗口的变量,然后在变量上单击鼠标
右键(如图 A.6)。从弹出菜单选择 Add 变量名到观察窗口,并选择变量类型,窗
口大小是可调整的,在窗口中删除变量的方法是选定变量然后按下 Delete 键。
5
图 A.6 用右键选取变量进行观察
4.2.2 SFR (特殊功能寄存器)窗口
SFR 窗口按功能又分为:8051 (8051 寄存器)、ADC (模数转换)、DAC (数模转换)、
Flash (闪存)Interrupts (中断)、PCA (可编程计数器阵列)、Ports (端口)、SMBus (I2C
总线)、SPI (串行外设总线)和 Timers (定时器)窗口。
(1) 8051 SFR 窗口(见图 A.7)
图 A.7 8051SFR 窗口
8051SFR 窗口包含有用来配置 8051 的特殊功能寄存器,窗口大小是可调整的,可以在
光标处键入所需的值来修改寄存器原值,修改后的值可以在执行用户程序代码前下载到目标
硬件,方法是用 Refresh 按钮 强制写入,这样修改后的值被写入仿真器,寄存器窗口将
6
重读仿真器,窗口将被刷新,所有改变的值以红色显示。
注意:只有当调试器处于停止状态时,寄存器的值可被修改,当目标处理器正在执行用户
代程序代码时,不允许写入。
(2) ADC SFR 窗口(见图 A.8)
图 A.8 ADC SFR 窗口
ADC SFR 窗口包含模-数转换功能块的配置和数据寄存器。窗口大小是可调整的。可以在
光标处键入所需的值来修改寄存器原值。修改后的值可以在执行用户程序代码(单击 Go 或
Step 按钮)前下载到硬件。方法是用 Refresh 按钮 强制写入。这样修改后的值被写入仿
真器。寄存器窗口将重读仿真器,窗口将被刷新,所有改变的值以红色显示。
注意:只有当调试器处于停止状态时,寄存器的值可被修改。当目标处理器正在执行用户
代程序代码时,不允许写入。
(3) DAC SFR 窗口(见图 A.9)
图 A.9 DAC SFR 窗口
DAC SFR 窗口包含数-模转换功能模块的配置和数据寄存器。窗口大小是可调整的。可以
在光标处键入所需的值来修改寄存器原值。修改后的值可以在执行用户代码(单击 Go 或 Step
按钮)前下载到硬件。方法是用 Refresh 按钮 强制写入。这样修改后的值被写入仿真器。
寄存器窗口将重读仿真器,窗口将被刷新,所有改变的值以红色显示。
注意:只有当调试器处于停止状态时,寄存器的值可被修改。当目标处理器正在执行用户
代程序代码时,不允许写入。
(4) Flash SFR 窗口(见图 A.10)
图 A.10 Flash SFR 窗口
7
Flash SFR 窗口包含 Flash 存储器的配置和数据寄存器窗口,大小是可调整的。可以在
光标处键入所需的值来修改寄存器原值。修改后的值可以在执行用户代码(单击 Go 或 Step 按
钮)前下载到硬件。方法是用 Refresh 按钮 强制写入。这样修改后的值被写入仿真器。
寄存器窗口将重读仿真器,窗口将被刷新,所有改变的值以红色显示。
注意:只有当调试器处于停止状态时,寄存器的值可被修改。当目标处理器正在执行用
户代程序代码时,不允许写入。
(5) Interrupts(中断) SFR 窗口(见图 A.11)
图 A.11 Interrupts(中断) SFR 窗口
中断 SFR 窗口包含编程中断处理器的寄存器配置,窗口大小是可调整的。可以在光标处
键入所需的值来修改寄存器原值。修改后的值可以在执行用户代码(单击 Go 或 Step 按钮)
前下载到硬件。方法是用 Refresh 按钮 强制写入。这样修改后的值被写入仿真器。寄存
器窗口将重读仿真器,窗口将被刷新,所有改变的值以红色显示。
注意:只有当调试器处于停止状态时,寄存器的值可被修改。当目标处理器正在执行用户代
程序代码时,不允许写入。
(6) PCA SFR 窗口(见图 A.12)
图 A.12 PCA SFR 窗口
PCA SFR 窗口包含可编程计数器阵列的配置和数据寄存器窗口,大小是可调整的。可以
在光标处键入所需的值来修改寄存器原值。修改后的值可以在执行用户代码(单击 Go 或 Step
按钮)前下载到硬件。方法是用 Refresh 按钮 强制写入。这样修改后的值被写入仿真器。
8