嵌入式系统与单片机
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MPLAB-ICD是Microchip公司针对具有片内 FLASH程序存储器的PIC16F87X系列单片机所研 制的一套廉价的学习和开发工具。 MPLAB-ICD既是一个编程器(既程序烧写器), 又是一个实时在线调试器。 MPLAB-ICD利用了PIC16F87X片内集成的在线 调试器能力和Microchip公司的在线串行编程技术。
第五讲 PIC单片机的开发工具
MPLAB IDE集成开发软件 MPLAB ICD2在线调试器
一、 MPLAB IDE集成开发软件
一、 MPLAB IDE集成开发软件
MPLAB IDE 是一种在PC 机上运行的软件,用来为 Microchip 单片机开发应用程序。由于它提供了一种单一 的集成环境来为嵌入式单片机开发程序代码,因此被称为 集成开发环境或 IDE。 MPLAB IDE是在台式计算机上运行的程序系统,它有助 于编写、编辑和调试程序代码,并将其烧写到单片机中。 MPLAB IDE 在PC机上运行,包含设计和部署嵌入式系 统应用所需的全部组件。
(12)32.768KHz晶体用于Timer1计时器 (13)J7跳线开关,用来断开板上RC振荡器 (14)256×8的EEPROM (15)LCD显示屏 (16)蜂鸣器,J9用来断开蜂鸣器 (17)用户可使用的区域板 (18)TC74温度传感器
MPLAB ICD2在线调试器
二、 MPLAB ICD2在线调试器
一、 MPLAB IDE集成开发软件 MPLAB-SIM的局限性:
一是它还不能模拟PIC16F87X片内一些特殊的外围模块; 二是不能查找目标板上的电路错误;
三是执行速度慢,只适合那些实时性要求不高的程序。
一、 MPLAB IDE集成开发软件 MPLAB-ICD2 Debugger(在线调试工具ICD的 支持程序)
一、 MPLAB IDE集成开发软件 汇编器/ 链接器和语言工具
汇编器可以单独使用来汇编单个文件,也可以与链接 器配合使用,以从不同的源文件、库和重新编译的目标文 件生成一个项目。链接器负责将编译后的代码分配到目标 单片机的存储区中。
一、 MPLAB IDE集成开发软件
一、 MPLAB IDE集成开发软件 调试器
这是一种专门与ICD配合使用的支持程序,ICD是 Microchip公司专为PIC16F87X设计的一种廉价在线调试工 具套件,在下一节中介绍。
另外,还包含一些其他工具软件。
例如:程序模块连接器、库程序管理器、C语言编译 器、硬件在线仿真器的支持程序、目标程序烧录器的支持 程序等。
一、 MPLAB IDE集成开发软件
MPLAB-ICD工作于MPLAB集成开发环境软件包 之下,其仿真头直接连接到目标电路板上,如同 将一片PIC16F87X插入到目标板内一样去运行用 户编制的程序。
MPLAB ICD2的功能特点
能以实时或单步方式运行用户程序 断电设置功能 在线调试功能 在线编程功能 工作电压范围:3.0~5.5V 可从目标板上获取工作电源 对源程序直接进行代码级的调试 可工作于MPLAB-IDE环境下 可以用USB口或RS-232串行接口方式与微机系统相连
★ 程序存储器的最后256或288个单元被保留用来存放调试监控程序
习题
1 MPLAB_IDE集成开发软件包主要由哪些软件工
具组成? 2 编辑器的主要用途是什么? 3 软件模拟器的主要用途是什么?它有哪些优点和 局限性? 4 MPLAB ICD2有哪些功能? 5 MPLAB ICD2存在哪些局限性?
一、 MPLAB IDE集成开发软件 语言工具
PIC汇编语言、C语言
目标调试
在开发环境中,代码的执行是在调试器中测试的。调试 器可以是软件程序,用来模拟单片机的操作以便进行测试, 也可以是特殊的仪器,用来分析在应用程序中执行的代码。 MPLAB IDE 中内置了软件模拟器,因此不需要任何其他 硬件就可以对程序进行测试。 软件模拟器是一种软件调试器,软件模拟器的调试功能 与硬件调试器的功能几乎完全相同,学习起来非常容易。由 于软件模拟器使用PC 机中的 CPU 来模拟单片机的操作,因 此它通常比实际单片机运行得要慢一些。MPLAB IDE 为所 有的PICmicro 和dsPIC 处理器提供了许多软件模拟器。
一、 MPLAB IDE集成开发软件
如前所述,软件模拟器可以用于测试代码的运行,但是一旦 向单片机烧写了固件,就由软件模拟器之外的很多因素发挥 作用了。 仅使用编程器,虽然可以更改代码,并将其重新烧写到单片 机,然后插入目标进行重新测试,但如果代码比较复杂,这 个过程就非常费时费力,而且很难弄清楚硬件中究竟发生了 什么问题。
一、 MPLAB IDE集成开发软件 编辑器
文本编辑器用于编写代码。这不是普通的文本编辑 器,而是专门为编写 MicrochipMCU 的代码而设计的编 辑器。 它可以识别文本中的语法结构,并采用彩色编码来区 分各种元素,如指令助记符、C 语言结构和注释。编辑器 支持编写源代码常用的操作,如查找 C 语言中的匹配花 括号、注释和取消注释代码段、查找多个文件中的文本以 及添加特殊书签等。
嵌入式系统与单片机
北京科技大学电子信息系
PIC单片机部分主要内容
PIC单片机微处理器体系结构 PIC单片机存储器组织与寻址方式 PIC单片机指令系统与汇编语言
集成开发环境MPLAB_IDE PIC单片机常用的周边功能模块
参考书
1 刘和平主编,单片机原理及应用,重庆大 学出版社 ,2002年(www.toopoo.com) 2 刘和平等编著,PIC16F87X单片机实用 软件与接口技术,北航出版社,2002年 3 刘笃仁著. PIC软硬件系统设计. 北京:电 子工业出版社,2004年 4 李学海编,PIC单片机实用教程(基础 篇、提高篇),北航出版社,2002年
单片机系统开发周期如下:
这一过程需要多种工具:编写代码的编辑器、管理 文件及设置的项目管理器、将源代码转换为机器码的编译器,以 及多种连接到目标单片机的硬件或用来模拟单片机运行的软件。
MPLAB IDE的内置组件 项目管理器
项目管理器管理要编辑的文件和其他相关文件,以便 将这些文件送至语言工具进行汇编或编译,并最终送至链 接器。 链接器的任务是将来自汇编器、编译器和库的目标代 码片段存放到嵌入式控制器的恰当存储区,并确保各个模 块之间可以相互协调(或“链接在一起”)。从汇编、编 译到链接的整个操作过程被称为项目“build”。 使用MPLAB 项目管理器,每个文件可以根据需要调用 不同的语言工具。并且编译过程会将所有的语言工具操作 集成到一起。
一、 MPLAB IDE集成开发软件 MPLAB-SIM(Software Simulator)
这是一种代替价格较贵的硬件仿真器的调试工具,
也是一种非实时、非线性的纯软件的调试工具。借助这个 工具软件,我们可以不需要任何额外的附加硬件,仅用软 件的手段,来模仿PIC系列单片机的指令的执行和信号的 输入/输出,从而实现对用户自编单片机源程序的模拟运 行、功能调试和深层次逻辑错误查找。相当于提供了一种 虚拟的实战环境。
在MPLAB IDE 中,可以使用两种类型的硬件:编程器和硬 件调试器。 编程器直接将机器码从PC 机传送到目标单片机的片内存储 器中。然后就可以将单片机插入到应用中了,并希望单片机 中的程序能够按设计运行。 但是,代码通常都不会完全按照预期运行,设计人员需要检 查代码及其在应用中的运行状况,以决定如何修改源代码, 使之能够按预期运行。这个过程被称为调试。
二、 MPLAB ICD2在线调试器
PICDEM2目标电路板
(1)分别为18、28、40引脚的IC插座 (2)9V的电源输入插座和一个电池插座, 板上工作电压为5V (3)RS-232串行接口可以直接连接RS232接口 (4)电缆连接插座,可以通过电缆直接 连接到ICD2调试器 (5)5K可调电位器,用来作为模拟信号 的输入 (6)3个按钮开关,分别为复位按钮和外部开关信号的输入按钮 (7)绿色电源指示灯 (8)4个红色指示灯,分别与PORTB口的RB0~RB3连接 (9)J6跳线开关,用来断开4个红色指示灯和PORTB口 (10)4MHz晶振 (11)晶体连接口
一、 MPLAB IDE集成开发软件
在这种情况下,硬件调试器就非常有用了。
硬件调试器可以是在线仿真器,它使用专用硬件来代替实 际的目标单片机。它也可以是在线调试器,使用具有特殊 内置调试功能的单片机。
硬件调试器和软件模拟器一样,允许设计人员检查当代码 执行到各个点时的变量,单步调试程序以检查硬件与专用 电路交互时的指令。
一、 MPLAB IDE集成开发软件
一、 MPLAB IDE集成开发软件 MPLAB IDE的功能:
编写程序 调试程序 在调试过程中,可以测试代码,以观察变量在程序 执行过程中各个点的值、进行检查、更改变量值和单步调 试程序。 编译程序 使用编译器以及链接器汇编、编译和链接软件,以将 程序代码翻译成二进制机器代码。 将二进制代码“烧写”到单片机中
Microchip 调试器允许使用断点、单步调试、watch 窗口以及目前 MPLAB IDE 调试器中的所有功能。将它与 编辑器配合使用,可以将正在调试的目标中的信息与源代 码相关联。
一、 MPLAB IDE集成开发软件 执行引擎
MPLAB IDE 中具有适用于所有 PICmicro 和 dsPIC 器件的软件模拟器。这些软件模拟器使用PC 机来模拟 PICmicro 和 dsPIC 器件的指令和某些外设功能。还可以 使用可选的在线仿真器和在线调试器通过在应用硬件中运 行代码来测试代码。
借助于MPLAB-ICD工具套件,用户可以实现: 软件调试
即在自己设计的PIC16F87X的应用电路中实时运行和 调试自己的源程序。
硬件调试 即用自己编制的程序来调试和检验自制目标板上的电
路。
程序固化
即利用在线串行编程技术将自己设计的目标程序烧写 到目标单片机中。
MPLAB ICD2的局限性
MPLAB ICD2工作过程中将会占用目标单片机的 片内和引脚中的部分资源,这部分资源用户就不 能再使用了。
MPLAB ICD2所占用的目标单片机的部分资源如下:
★ 系统复位引脚 MCLR
,用于编程电压VPP(约为13V)输入脚
★ 禁止采用低电压方式进行在线串行编程 ★ RB6和RB7引脚保留为在线编程和在线调试时的通信专用 ★ 程序存储器中的首条指令(地址0X0000)必须放置一条空操作指令NOP ★ 占用了8级堆栈中的一级堆栈 ★ SLEEP指令在调试期间不能使用 ★ 6个通用寄存器单元保留给调试监控程序使用
百度文库
第五讲 PIC单片机的开发工具
MPLAB IDE集成开发软件 MPLAB ICD2在线调试器
一、 MPLAB IDE集成开发软件
一、 MPLAB IDE集成开发软件
MPLAB IDE 是一种在PC 机上运行的软件,用来为 Microchip 单片机开发应用程序。由于它提供了一种单一 的集成环境来为嵌入式单片机开发程序代码,因此被称为 集成开发环境或 IDE。 MPLAB IDE是在台式计算机上运行的程序系统,它有助 于编写、编辑和调试程序代码,并将其烧写到单片机中。 MPLAB IDE 在PC机上运行,包含设计和部署嵌入式系 统应用所需的全部组件。
(12)32.768KHz晶体用于Timer1计时器 (13)J7跳线开关,用来断开板上RC振荡器 (14)256×8的EEPROM (15)LCD显示屏 (16)蜂鸣器,J9用来断开蜂鸣器 (17)用户可使用的区域板 (18)TC74温度传感器
MPLAB ICD2在线调试器
二、 MPLAB ICD2在线调试器
一、 MPLAB IDE集成开发软件 MPLAB-SIM的局限性:
一是它还不能模拟PIC16F87X片内一些特殊的外围模块; 二是不能查找目标板上的电路错误;
三是执行速度慢,只适合那些实时性要求不高的程序。
一、 MPLAB IDE集成开发软件 MPLAB-ICD2 Debugger(在线调试工具ICD的 支持程序)
一、 MPLAB IDE集成开发软件 汇编器/ 链接器和语言工具
汇编器可以单独使用来汇编单个文件,也可以与链接 器配合使用,以从不同的源文件、库和重新编译的目标文 件生成一个项目。链接器负责将编译后的代码分配到目标 单片机的存储区中。
一、 MPLAB IDE集成开发软件
一、 MPLAB IDE集成开发软件 调试器
这是一种专门与ICD配合使用的支持程序,ICD是 Microchip公司专为PIC16F87X设计的一种廉价在线调试工 具套件,在下一节中介绍。
另外,还包含一些其他工具软件。
例如:程序模块连接器、库程序管理器、C语言编译 器、硬件在线仿真器的支持程序、目标程序烧录器的支持 程序等。
一、 MPLAB IDE集成开发软件
MPLAB-ICD工作于MPLAB集成开发环境软件包 之下,其仿真头直接连接到目标电路板上,如同 将一片PIC16F87X插入到目标板内一样去运行用 户编制的程序。
MPLAB ICD2的功能特点
能以实时或单步方式运行用户程序 断电设置功能 在线调试功能 在线编程功能 工作电压范围:3.0~5.5V 可从目标板上获取工作电源 对源程序直接进行代码级的调试 可工作于MPLAB-IDE环境下 可以用USB口或RS-232串行接口方式与微机系统相连
★ 程序存储器的最后256或288个单元被保留用来存放调试监控程序
习题
1 MPLAB_IDE集成开发软件包主要由哪些软件工
具组成? 2 编辑器的主要用途是什么? 3 软件模拟器的主要用途是什么?它有哪些优点和 局限性? 4 MPLAB ICD2有哪些功能? 5 MPLAB ICD2存在哪些局限性?
一、 MPLAB IDE集成开发软件 语言工具
PIC汇编语言、C语言
目标调试
在开发环境中,代码的执行是在调试器中测试的。调试 器可以是软件程序,用来模拟单片机的操作以便进行测试, 也可以是特殊的仪器,用来分析在应用程序中执行的代码。 MPLAB IDE 中内置了软件模拟器,因此不需要任何其他 硬件就可以对程序进行测试。 软件模拟器是一种软件调试器,软件模拟器的调试功能 与硬件调试器的功能几乎完全相同,学习起来非常容易。由 于软件模拟器使用PC 机中的 CPU 来模拟单片机的操作,因 此它通常比实际单片机运行得要慢一些。MPLAB IDE 为所 有的PICmicro 和dsPIC 处理器提供了许多软件模拟器。
一、 MPLAB IDE集成开发软件
如前所述,软件模拟器可以用于测试代码的运行,但是一旦 向单片机烧写了固件,就由软件模拟器之外的很多因素发挥 作用了。 仅使用编程器,虽然可以更改代码,并将其重新烧写到单片 机,然后插入目标进行重新测试,但如果代码比较复杂,这 个过程就非常费时费力,而且很难弄清楚硬件中究竟发生了 什么问题。
一、 MPLAB IDE集成开发软件 编辑器
文本编辑器用于编写代码。这不是普通的文本编辑 器,而是专门为编写 MicrochipMCU 的代码而设计的编 辑器。 它可以识别文本中的语法结构,并采用彩色编码来区 分各种元素,如指令助记符、C 语言结构和注释。编辑器 支持编写源代码常用的操作,如查找 C 语言中的匹配花 括号、注释和取消注释代码段、查找多个文件中的文本以 及添加特殊书签等。
嵌入式系统与单片机
北京科技大学电子信息系
PIC单片机部分主要内容
PIC单片机微处理器体系结构 PIC单片机存储器组织与寻址方式 PIC单片机指令系统与汇编语言
集成开发环境MPLAB_IDE PIC单片机常用的周边功能模块
参考书
1 刘和平主编,单片机原理及应用,重庆大 学出版社 ,2002年(www.toopoo.com) 2 刘和平等编著,PIC16F87X单片机实用 软件与接口技术,北航出版社,2002年 3 刘笃仁著. PIC软硬件系统设计. 北京:电 子工业出版社,2004年 4 李学海编,PIC单片机实用教程(基础 篇、提高篇),北航出版社,2002年
单片机系统开发周期如下:
这一过程需要多种工具:编写代码的编辑器、管理 文件及设置的项目管理器、将源代码转换为机器码的编译器,以 及多种连接到目标单片机的硬件或用来模拟单片机运行的软件。
MPLAB IDE的内置组件 项目管理器
项目管理器管理要编辑的文件和其他相关文件,以便 将这些文件送至语言工具进行汇编或编译,并最终送至链 接器。 链接器的任务是将来自汇编器、编译器和库的目标代 码片段存放到嵌入式控制器的恰当存储区,并确保各个模 块之间可以相互协调(或“链接在一起”)。从汇编、编 译到链接的整个操作过程被称为项目“build”。 使用MPLAB 项目管理器,每个文件可以根据需要调用 不同的语言工具。并且编译过程会将所有的语言工具操作 集成到一起。
一、 MPLAB IDE集成开发软件 MPLAB-SIM(Software Simulator)
这是一种代替价格较贵的硬件仿真器的调试工具,
也是一种非实时、非线性的纯软件的调试工具。借助这个 工具软件,我们可以不需要任何额外的附加硬件,仅用软 件的手段,来模仿PIC系列单片机的指令的执行和信号的 输入/输出,从而实现对用户自编单片机源程序的模拟运 行、功能调试和深层次逻辑错误查找。相当于提供了一种 虚拟的实战环境。
在MPLAB IDE 中,可以使用两种类型的硬件:编程器和硬 件调试器。 编程器直接将机器码从PC 机传送到目标单片机的片内存储 器中。然后就可以将单片机插入到应用中了,并希望单片机 中的程序能够按设计运行。 但是,代码通常都不会完全按照预期运行,设计人员需要检 查代码及其在应用中的运行状况,以决定如何修改源代码, 使之能够按预期运行。这个过程被称为调试。
二、 MPLAB ICD2在线调试器
PICDEM2目标电路板
(1)分别为18、28、40引脚的IC插座 (2)9V的电源输入插座和一个电池插座, 板上工作电压为5V (3)RS-232串行接口可以直接连接RS232接口 (4)电缆连接插座,可以通过电缆直接 连接到ICD2调试器 (5)5K可调电位器,用来作为模拟信号 的输入 (6)3个按钮开关,分别为复位按钮和外部开关信号的输入按钮 (7)绿色电源指示灯 (8)4个红色指示灯,分别与PORTB口的RB0~RB3连接 (9)J6跳线开关,用来断开4个红色指示灯和PORTB口 (10)4MHz晶振 (11)晶体连接口
一、 MPLAB IDE集成开发软件
在这种情况下,硬件调试器就非常有用了。
硬件调试器可以是在线仿真器,它使用专用硬件来代替实 际的目标单片机。它也可以是在线调试器,使用具有特殊 内置调试功能的单片机。
硬件调试器和软件模拟器一样,允许设计人员检查当代码 执行到各个点时的变量,单步调试程序以检查硬件与专用 电路交互时的指令。
一、 MPLAB IDE集成开发软件
一、 MPLAB IDE集成开发软件 MPLAB IDE的功能:
编写程序 调试程序 在调试过程中,可以测试代码,以观察变量在程序 执行过程中各个点的值、进行检查、更改变量值和单步调 试程序。 编译程序 使用编译器以及链接器汇编、编译和链接软件,以将 程序代码翻译成二进制机器代码。 将二进制代码“烧写”到单片机中
Microchip 调试器允许使用断点、单步调试、watch 窗口以及目前 MPLAB IDE 调试器中的所有功能。将它与 编辑器配合使用,可以将正在调试的目标中的信息与源代 码相关联。
一、 MPLAB IDE集成开发软件 执行引擎
MPLAB IDE 中具有适用于所有 PICmicro 和 dsPIC 器件的软件模拟器。这些软件模拟器使用PC 机来模拟 PICmicro 和 dsPIC 器件的指令和某些外设功能。还可以 使用可选的在线仿真器和在线调试器通过在应用硬件中运 行代码来测试代码。
借助于MPLAB-ICD工具套件,用户可以实现: 软件调试
即在自己设计的PIC16F87X的应用电路中实时运行和 调试自己的源程序。
硬件调试 即用自己编制的程序来调试和检验自制目标板上的电
路。
程序固化
即利用在线串行编程技术将自己设计的目标程序烧写 到目标单片机中。
MPLAB ICD2的局限性
MPLAB ICD2工作过程中将会占用目标单片机的 片内和引脚中的部分资源,这部分资源用户就不 能再使用了。
MPLAB ICD2所占用的目标单片机的部分资源如下:
★ 系统复位引脚 MCLR
,用于编程电压VPP(约为13V)输入脚
★ 禁止采用低电压方式进行在线串行编程 ★ RB6和RB7引脚保留为在线编程和在线调试时的通信专用 ★ 程序存储器中的首条指令(地址0X0000)必须放置一条空操作指令NOP ★ 占用了8级堆栈中的一级堆栈 ★ SLEEP指令在调试期间不能使用 ★ 6个通用寄存器单元保留给调试监控程序使用
百度文库