首页 项目二 单片机开发工具 《单片机C语言项目式教程》教案

项目二 单片机开发工具 《单片机C语言项目式教程》教案

举报
开通vip

项目二 单片机开发工具 《单片机C语言项目式教程》教案项目二 单片机开发工具 《单片机C语言项目式教程》教案 项目二 单片机开发工具 知识目标 掌握软件仿真开发软件Keil C的使用方法; 掌握硬件仿真开发软件Proteus的使用方法Proteus; 掌握在线硬件仿真开发系统的使用方法; 掌握ISP单片机硬件仿真器使用方法; 掌握编程器的使用方法。 技能目标 掌握各种开发工具的使用。 任务一 Keil C的使用方法 任务导论 单片机是一门综合性学科,要模拟电子技术、数字电子技术作为先导知识,还要计算机使用基础知识,又是一门实践性很强的专业技术,...

项目二 单片机开发工具 《单片机C语言项目式教程》教案
项目二 单片机开发工具 《单片机C语言项目式教程》教案 项目二 单片机开发工具 知识目标 掌握软件仿真开发软件Keil C的使用 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 ; 掌握硬件仿真开发软件Proteus的使用方法Proteus; 掌握在线硬件仿真开发系统的使用方法; 掌握ISP单片机硬件仿真器使用方法; 掌握编程器的使用方法。 技能目标 掌握各种开发工具的使用。 任务一 Keil C的使用方法 任务导论 单片机是一门综合性学科,要模拟电子技术、数字电子技术作为先导知识,还要计算机使用基础知识,又是一门实践性很强的专业技术,使用的设备较多,对于初学者来说没有进行理论学习、软件仿真,硬件仿真、软件固化、实物制作的全过程,很难入门,在学习过程中没有掌握工具专学理论,等同于空中楼阁,无法全面掌握单片机技能。因而首先要掌握单片机开发工具。 任务 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 不管哪种类型的单片机,厂家都要配套提供编程器(固化程序)、硬件仿真器、开发软件(汇编软件)、指令系统,芯片使用说明书等。随着技术的进步,软件技术的发展,开发手段变得丰富多彩,全软件仿真的成功使用,为我们学习单片机知识提供了好的手段,将抽象的概念变得直观形象。 相关知识 一、仿真软件 1. KeilC51仿真软件的使用 Keil μVision2 是流行的单片机开发环境之一,它集可视化编辑、编译、调试、仿真与一体,支持51 汇编、PLM 和C 语言的混合编程,功能强大、界面友好、易学易用。安装Keil μVision2 的方法同一般的软件安装。安装完成后将在Windows桌面生成一个Keil μVision2 图标。单击开始?程序?单击Keil μVision2即可启动运行;也可双击Keil μVision2图标运行该软件,启动屏幕如图2-1所示: 1 图 2-1 Keil μVision2 启动界面 随后进入Keil μVision2 的工作界面:(当关闭计算机或退出该程序时建立了Standard工程项目并编好了程序)如图2-2所示。 图 2,2 Keil μVision2 工作界面 1) μVision2的主菜单 μVision2 软件有主菜单栏、工具栏、源代码文件窗口和对话框窗口。μVision2 信息显示窗口允许同时打开几个源程序文件。 主菜单提供各种操作菜单,如:编辑操作,项目维护,开发工具选项设置,调试程序,窗口选择和处理,在线帮助。工具条按钮允许你快速地执行μVision2命令。 2 键盘快捷键(你自己可以配置)允许你执行μVision2命令。下面的 表格 关于规范使用各类表格的通知入职表格免费下载关于主播时间做一个表格详细英语字母大小写表格下载简历表格模板下载 列出了μVision2菜单项命令,工具条图标,默认的快捷键以及它们的描述: ?文件菜单和命令(File) ?编辑菜单和编辑器命令(Edit) ?视图菜单(View) ?项目菜单和项目命令(Project) ?调试菜单和调试命令(Debug) ?外围器件菜单(Peripherals) ?工具菜单(Tool) ?软件版本控制系统菜单(SVCS) ?视窗菜单(Window) ?帮助菜单(Help) 2) μVision2中的调试器 μVision2中集成了一种新型调试器(Debug),它可以进行纯软件模拟仿真和硬件目标板在线仿真,使用之前应该先进行适当配置。单击“Project菜单/Options for Target选项”,弹出如图2-3所示窗口。点击Debug标签页,在该页中选中圆形单选框“Use Simulater” 采用软件模拟方式进行仿真。 图2-3 Debug配置窗口 可以在没有任何实际8051单片机硬件的条件下,仅用一台普通的PC实现对8051应用程序仿真调试。在创建用户项目的时候通过内部器件库选定一种CPU器件,μVision2根据所选定的CPU器件自动设置能够仿真的单片机片内集成功能。例如,选 3 定Intel8052后,可仿真调试8052单片机内部定时器T2,选定Philips80C552后,可仿真调试80C552单片机内部A/D转换器功能等。选定图形单选框“Use Keil Monitor-51Driver”采用硬件目标板方式进行仿真,选择此项时要购买硬件仿真器,要安装Keil公司提供的专用监控程序MONITOR51,有了此两项后就可实现对硬件目标系统的在线仿真。用户硬件目标板与PC机的通信速率可以调整,单击图2-3 -4所示窗口。 中右上角“Setting”按钮弹出如图2 图2-4 通信端口设置 3) Debug状态下窗口分配与菜单操作 Debug选项配置完成之后,打开或建立新项目并编译通过后,单击“Debug菜单/Start/Stop Debug Session”选项,即可启动Debug开始调试,启动Debug后,μVision2项目窗口分配如图2-5所示,项目窗口自动切 4 μVision2项目窗口分配 图2-5 调试状态下 换到Debug标签页,用于显示程序调试过程中单片机内部寄存器状态的变化情况,主调试窗口用于显示用户源程序,窗口左边的小箭头指向当前程序语句,每执行一条语句小箭头会自动向后移动便于观察程序当前执行点。如果用户创建的项目中包含有多个程序文件,执行过程中将自动切换到不同文件显示。命令窗口用于键入各种调试命令,存储器窗口用于显示程序调试过程中单片机的存储器状态,观察窗口用于显示局部变量和观察点的状态。此外在主调试窗口位置还可以显示反汇编窗口、串行窗口以及性能分析窗口,通过单击View菜单中的相应选项(或单击工具条中相应按钮),可以很方便的实现窗口切换。 4)通过Debug菜单进行程序代码调试 在μVision2调试器中可以进行两种类型的代码调试:带调试信息的源程序代码调试和十六进制HEX代码调试,前者允许调试过程中显示高级语言源程序语句,后者仅能显示基本汇编语言指令。用户在成功完成项目编译连接之后,通过Debug菜单进入程序调试状态,在调试状态下仍可通过调试主窗口进行源程序的编辑修改,这也是μVision2调试器的一大特点,可以根据当前调试结果修改源程序,不过修改后不能立即进行调试,要先退出当前调试状态,重新编译连接成为新的目标代码再次装入之后才能调试。 5)通过“Peripherals”菜单观察仿真结果 目前8051单片机已有400多个品种和型号,不同型号具有不同的外围集成功能,μVision2通过内部集成器件库实现对各种单片机外围集成功能的模拟仿真,在调试状态下可以通过“Peripherals”下拉菜单来观察仿真结果。“Peripherals”菜单的选项 5 内容会根据选用器件库中不同器件而有所变化,图2-19所示为选用8052单片机器件后的“Peripherals”菜单内容。 图2-19 Peripherals菜单 单击“Peripherals”菜单第一栏“Reset CPU”选项可以对模拟仿真的8051单片机进行复位。 单击“Peripherals”菜单第二栏“Interrupt”选项弹出如图2-20所示的窗口,用于显示8051单片机中断系统状态。选中不同的中断源,窗口中“Selected Interrupt”栏将出现与之相对应的中断允许盒中断标志位的复选框,通过对这些状态位的置位和复位操作(选中或不选中)很容易实现对单片机中断系统的仿真。对于具有多个中断源的单片机如80552等,除了如上所述几个基本中断源之外,还可以对其他中断源如监视定时器(Watching Timer)等进行模拟仿真。 图2-20 中断系统状态窗口 “Peripherals”菜单第二栏中“I/O-Ports”选项用于仿真8051单片机的并行I/O接口Port0~Port3,选中Port1后将弹出如图2-21所示窗口,其中“P1”栏显示8051单片机P1口所存器状态,“Pins”栏显示P1口个引脚状态,仿真时它们各位的状态可根据需要进行修改。对于具有多个I/O口的单片机如80552等,其中Port0~Port3都是一样的,其他I/O口略有不同。 6 图2-21 Port1窗口 “Peripherals”菜单第二栏中“Serial”选项用于仿真8051单片机的串行口,单击该选项将弹出如图2-22所示的窗口。窗口中“MODE”栏用于选择串行口的工作方式,单击其中的箭头很容易选择8位移位寄存器、8位/9位可变波特率UART、9位固定波特率UART等不同工作方式。选定工作方式后相应特殊工作寄存器SCON和SBUF的控制字也显示在窗口中。通过对特殊控制位SM2、REN、TB8、RB8、TI和RI复选框的置位和复位操作(选中或不选中),很容易实现对8051单片机内部串行口的仿真。“Baudrate”栏用于显示串行口的工作波特率,SMOD位置位时将使波特率加倍。“IRQ”栏用于显示串行口的发送和接收中断标志。 “Peripherals”菜单中的“Timer”选项用于仿真8051单片机内部定时器/计数器,选中其中Timer1后结案弹出如图2-23所示窗口。窗口中“Mode”栏用于选择工作方式,可选择定时器或计数器方式,单击其中的箭头很容易实现选择,图3-26所示为16位定时器工作方式。选定工作方式后相应特殊工作寄存器TCON和TMOD的控制字也显示在窗口中,TH1和TL1用于显示计数初值,T1 Pin和TF1复选框用于显示T1引脚和定时器/计数器的溢出状态。窗口的“Contril”栏用于显示和控制定时器/计数器的工作状态(Run或Stop),“TR1”、“GATE”和“INT1#”复选框是启动控制位,通过对这些状态位的置位和复位操作(选中或不选中)很容易实现对8051单片机内部定时器/计数器仿真。对于具有多个定时器/计数器的单片机如80552等,其Timer0和Timer1与8051是一样的,其他如监视定时器(Watchdog Timer)等状态和控制略有不同。 图2-22 串行口窗口 图2-23 Timer1窗口 2、调试方法介绍 ?调试判位变量转移指令while(!TF0)的方法。 7 不管用单步还是全速运行,碰到此句时,若TF0不取反,程序就在此处等待,只有当TF0取反后,程序才接着向下执行,若一直不取反,程序就停止在此处。调试时没有硬件,本仿真系统提供了硬件接口,只要在主菜单Peripherals的下拉菜单中,打开时钟结构图,点击TF0前面的方框,方框中立即出现“?”,即该位变为“1”,此时再运行,程序就往下执行。 同样的方法可调试其他判位语句。 ?调试外部中断程序 外部中断0(INT0),对应端口为P3.2,中断入口地址为0003H,低电平有效。外部中断1(INT1),对应端口为P3.3,低电平有效,中断入口地址为0013H。在编写程序时,只要在中断服务程序之前(或开头)安排语句,void iint0() interrupt 0 using 0就行,当P3.2为低电平时, 执行到开外部中断指令,IE,0x81;IT0,0,程序进入中断服务子程序。若P3.2不为低电平, 程序不会进入中断服务程序,调试时使P3.2为0的方法是在主菜单Peripherals的下拉菜单中,打开P3口结构图, INT1点击P3.2位,方框中的?消失,即该位变为“0”,同样可调试外部中断1()。 ?定时器中断调试方法 51系列有2,3个定时/计数器,当用作定时器时,由单片微机内部的时钟脉冲,经12分频后,送加1 计数器, 当用作计数器时, 由外部提供计数脉冲源,通过引脚P3.4(T0)和P3.5(T1)端口送计数器,端口出现脉冲跳变时,计数器则加1, ”(高电平)到“0”(低脉冲跳变分正跳变(上升沿)和负跳变(下降沿)之分,由“1 电平)的跳变为负跳变(下降沿)脉冲,由“0”(低电平)到“1”(高电平)的跳变为正跳变(上升沿)脉冲。在脉冲激励下,计数器不断加1计数,直到FFFF时,16 位计数器将由全“1”回归到全“0”,计数器产生回“0”溢出脉冲,置位中断系统的中断请求标志位, 请求主机进行中断处理,即溢出中断。计数脉冲有两种,一种是外部脉冲,一种是内部脉冲。若用外部脉冲计数,所对应的引脚应有脉冲跳变,有一个计一个,无脉冲时停止计数。若用内部时钟脉冲,就与外端口无关。 T0的中断入口地址是000BH ,T1的中断入口地址是001BH。在程序中加上time0() interrupt 1 using 1就行,当程序执行EA =1; TR0=1 ,若有溢出时,程序进入中断服务程序, 否则不进入中断服务程序。若要溢出快,将初值TL0 、TH0两单元的值设置大一些, 例如TH0的值设置为FF ,TL0的值设置为FE或FD,这样程序运行一次或两次就会溢出,调试很方便,若初值设置为0000,从0000到FFFF要运行65536次,若用单步运行则需要很长时间。同样的方法,可调试外部脉冲计数器。 任务实施 首先要建立一个项目,如图2-24所示,启动Keil uVision2后之后,单击“Project菜单/New…”选项: 8 图2-24 Project 下拉菜单 从弹出的窗口中, 选择要保存项目的路径, 并输入项目文件名“hello.uv2”, 然后点击保存按钮,如图2-25所示: 图2-25 保存窗口 这时会弹出一个选择CPU型号的对话框,可以根据所使用的单片机来选择, 如图2-26所示,选择Ateml89C52, 选定CPU型号之后从窗口右边一栏可以看到对这个单片机的基本说明,然后点击确定按钮。 9 图2,26选定CPU型号窗口 接下来要创建程序文件,如图2-27所示,单击“File菜单/New…”选项: 图2-27 新建文件窗口 在弹出的编辑窗口中输入如下C51源程序: 例2-10 用字节操作的方法编写控制由P1.0口线控制的1个指示灯闪动(一亮一灭)的程序。 当控制外接于P1.0端口的LED指示灯亮和暗时,就是在P1.0端口输出一个方波,考虑到LED从亮到暗有延时效应和人眼有视觉暂留属性,亮的时间应大于0.5秒,这样人眼才观察到LED指示灯有亮和暗的变化。 #include 10 #define uint unsigned int #define uchar unsigned char void main() { uint j; loop: P1=0xff; for(j=0;j<50000;j++); P1=0XFE; for(j=0;j<50000;j++); goto loop; } 图2-28 文件编辑窗口 程序输入完成后,单击汇编工具“”,系统对程序进行编译,编译时,系统逐行检查语法是否有错误,有错时 在2-28的编辑窗口最下面的信息窗口中会列出所有错误,当双击错误行时,光标跳转到对应的程序行,必须一一修改正确,直到没有错误为止。然后单击“File菜单/Save as…”选项,如图2-29所示: 11 图2-29 另存为窗口 从弹出的窗口中, 选择要保存程序文件的路径, 并输入程序文件名“hello.c”, 然后点击保存按钮,如图2-30所示: 图2-30 文件命名窗口 下面需要将刚才创建的程序文件添加到项目中去。先用鼠标左建点击Target 1前面的“+”号,展开里面的内容“source Group 1”,然后将鼠标指向“Sourece Group 1”并单击右键,弹出一个右键菜单,单击右键菜单中的“Add Files to Guoup'Source Group 1'”选项,如图2-31所示: 12 图2-31 增加文件窗口 从弹出的窗口中分别选择刚才保存的文件“hello.c”,并单击“Add”按钮,添加到项目中去,“STARTUP.A51”和“reg.h”自动加入文件目录下,如图2-32所示。 图2-32 选文件窗口 程序文件添加完毕后,然后将鼠标指向“Target 1”并单击右键(注意:鼠标一定要指向“Target 1”), 再从弹出的右键菜单中单击“Options for Target”选项,如图2-33所示: 13 图2-33 打开工程文件窗口 从弹出的“Options”窗口中选择“Target”标签栏,并如图2-34所示设置其中各项: 图2-34 设置窗口 重复上述步骤,从弹出的“Options”窗口中选择“Output”标签栏,并如图2-35所示设置其中各项: 14 图2-35 设置窗口 重复上述步骤,从弹出的“Options”窗口中选择“C51”标签栏,并如图2-36所示设置其中各项: 图2-36设置窗口 重复上述步骤,从弹出的“Options”窗口中选择“BL51 Locate”标签栏,并如图2-37所示设置其中各项: 15 图2-37设置窗口 重复上述步骤,从弹出的“Options”窗口中选择“Debug”标签栏,并如图2-38所示设置其中各项: 图2-38设置窗口 到此为止完成了必要的各项设置,将鼠标指向“Target 1”并单击右键,从弹出的右键菜单中单击“Build target”选项,如图2-39所示: 16 图2-39 编译窗口 开始对项目中的程序文件进行编译连接,并生成与项目文件同名的可执行代码 -40所示: 及用于EPROM编程的Hex文件,如果没有错误,uVision2环境将如图2 图2-40 编译信息窗口 单击“Debug菜单/Start/Stop Debug session”选项,开始进入调试状态,如图2-41所示: 17 图2-41 调试菜单 进入调试状态后uVision2环境将显示联机状态及监控程序版本号,如图2-42所示: 显示连接状态及 监控程序版本号 图2-42 版本号显示窗口 调试时, 一般是先用全速命令运行一次, 看程序功能达到否,若有错,要反复修改程序,调试程序。调试时一般将几个方法综合使用,当单击调试工具条或Dubug/start时,运行光标在程序开始位置,打开硬件P1口模拟图,按一下F7,光带移动到第二条指令,P1中应变为FF,所有指示灯亮(一般是光带移过后才有结果)。再按一下F7,光带移动至第3条指令,延时,再按一下F7,光带向下移动,此时运 18 行P1,0xfe指令,第一个指示灯灭,如图2-43所示,再按一下F7 ,光带向下移动,重复以上调试方法,反复循环,此时程序调试成功,汇编后固化到芯片中,若硬件不出问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 ,应是设计结果,若不行,可能故障是硬件出了问题,需检查硬件排除故障。 图2-43 程序调试 二、电路仿真Proteus软件使用 Keil C51只能仿真调试编写的C语言程序是否正确,不能仿真单片机接口芯片,能够仿真硬件的软件是Proteus,下面具体讨论Proteus的使用方法。 电子产品的研制或电子电路的制作都离不开仿真和验证。设计一个具有实用价值的电子电路,需要考虑的因素和问题很多,既要考虑总体 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 是否可行,还要考虑各种细节问题。 比如,用模拟电路实现,还是用数字电路实现,或者模拟数字结合的方式实现;各单元电路的组织形式与各单元电路之间的连接;用哪些元器件;各种元器件的性能、参数、价格、体积、封装形式、功耗、货源等。而且电子元器件品种繁多,性能参数各异,仅普通晶体三极管就有上千种类型,要在众多类型中选用合适的器件并不容易,再加上设计之初往往经验不足,以及一些新的集成电路尤其是大规模或超大规模集成电路的功能较多,内部电路复杂,如果没有实际用过,单凭资料是很难掌握它们的各种用法及使用的具体细节的。因此,设计时考虑问题不周、出现差错是很正常的。对于比较复杂的电子电路,单凭纸上谈兵就能使自己设计的原理图正确无误并能获得 19 较高的性价比,往往是不现实的,所以必须通过仿真和验证来发现问题,解决问题,不断完善电路。 随着计算机的普及和EDA技术的发展,电子电路设计中的验证演变为仿真和实验相结合。电路仿真与传统的电路实验相比较,具有快速、安全、省材等特点,可以大大提高工作效率。 1.发光二极管LED闪动控制电路 89C51一片,一个发光二极管,一个电阻,仿真最后结果是LED指示灯一亮一灭闪动。仿真方法如下: 1) 制作原理图 制作原理图方法与Protel大同小异,制作步骤如下 ?进入Proteus仿真环境; ?在主窗口页面,先建新文件,再放器件,放置器件方法是,单击主菜单“库()”,点击“拾取元件/符号”;如图2-44所示。 图2-44主窗口页面 ?在弹出窗口中,“关键字”处输入“89C51”,选择第一项,点击“确定”;如图2-45所示。 20 图2-45 元件库页面 ?返回主窗口,单击鼠标左键,放置AT89C51芯片;如图2-46所示。 图2-46放置器件后主窗口页面 ?重复?、?两步,搜索LED,选择红色LED放置在主窗口中,如图2-47所示。 21 图2-47放置器件后主窗口页面 ?点击菜单“文件”,点击“保存设计”,在用户系统中新建文件夹,保存数据源文件,如:E:\Proteus\LED.dsn。 ?消除“”方法,作图时在每个元件的旁边显示灰色的“”,为了使电路图清晰,可以取消此文字显示。双击此文字,打开一个对话框,如图2-48所示。在该对话框中选择“Style”标签,先取消选择“Visible”右边的“Follow Global”选项,再取消选择“Visible”选项,单击“OK”即可。 22 图2-48 “TEXT”属性设置对话框 ?装载程序 在Proteus软件中作好原理图后,下一步就是将在Keil软件中编写好的程序装载到CPU芯片中,装载程序文件有两种方法,一是装载源程序到Proteus软件中,方法是:通过主菜单“Source/Add\Remove Source Files”装载源程序,再汇编程序“Source/Build All”,汇编成功后,再仿真。该方法首先要进行两个软件的联合使用设置。二是装载源程序到芯片中,方法如下: 双击AT89C51,出现如图2-49所示对话框。 23 图2-49 添加HEX文件对话框 在图2-49中单击“”出现文件浏览对话框,找到本项目例2-10中自动生成的hello.hex文件,单击确定完成添加文件,在Clock Frequency中把频率改为8MHz,单击OK退出。 ? 仿真 ”工具条或利用主菜单“Dubeg /Execute”或使用快 仿真方法是:单击“ 捷键“F12”均可进行仿真运行。仿真后,发光二极管LED出现一亮一灭的闪动,若不出现闪动现象,就要进行错误排查直到正确为止。 三 硬件在线仿真开发系统的使用方法 1硬件在线仿真开发系统的使用 上面已经讲了软件仿真方法,但软件仿真有其局限性,它只能仿真特殊功能寄存器、内部的00-7FH和外部0000-FFFFH,若扩展了8155、8255、ADC0809、DAC0832等等之类的外部接口,软件就不能仿真,其次是不能进行硬件系统的诊断和实时仿真,为了解决这些问题,要用到硬件在线仿真器。在线仿真器种类很多,基本上归为两大类,一是专用仿真芯片组成的仿真器;二是一些非专业生产厂家制作的使用 24 Keil界面的简易仿真器。这里重点讨论启东市微机应用研究所研制生产的QTH系列的专用单片机仿真器。 1)QTH系列的单片机仿真器 QTH系列单片机仿真器根据其通讯接口分类可分为:串口仿真器,并口仿真器及USB口仿真器三大类,其软件系统同QTH系列实验系统一样使用同一个界面,是全新的具有VC界面风格的窗口,支持WIN98/ME/2000/XP/NT操作系统,使用起来比较方便,硬件系统除通讯电缆不同外,总体结构一样如图3-45所示: 用户 仿 单片机硬件 计算机 系统 真在线仿真器 头 图2-50 通用单片机仿真开发系统 在线仿真是指将要开发的产品(称作用户系统)硬件做好,检查无错误后,将8031芯片和外接的程序存储芯片(89C51没有外接的程序存储芯片)拔掉,用仿真器自带的仿真插头,即40 芯扁平线(仿真电缆),一头接在线仿真器,一头通过仿真头插入用户系统的8031插座(注意不要插反),即8031的,5V(40脚)通过此插座及扁平线与开发系统的,5V相连,8031的地(20脚)通过此插座及扁平线与开发系统的地线相连。然后连接好电源线和通信线。装好与仿真器配套的软件,就可以在线仿真。在整个仿真系统中,最关键的是仿真器,仿真器的作用是: ?仿真功能 在线仿真时,仿真器中的单片机完整地出借给用户系统,不占用用户系统单片机的任何资源,使用户系统在联机仿真和脱机运行时的环境(工作程序、使用的资源和地址空间)完全一致,芯片上的CPU、RAM、SFR、定时器、中断源、I/O以及外部可扩充的程序存储器和数据存储器地址空间,应允许用户系统充分地自由地使用,不应受到任何限制,使用户系统能根据单片机固有的资源特性进行硬件和软件的设计,实现完全的一次性的仿真。 ?模拟功能 最重要的是用户机的程序存储器模拟功能。因为在用户系统开始的初始阶段,要编写用户程序。用户程序暂时存放在开发系统RAM存储器内,以便于在调试过程中对程序的模拟和修改。开发系统所能出借的作为用户系统程序存储器的RAM我们常称之为仿真RAM。开发系统中仿真RAM容量和地址映射应和用户机系统完 25 全一致。对于MCS—51系列单片机开发系统,最多应能出借64K字节的仿真RAM,地址为0,FFFFH,并保持原有的复位入口和中断人口地址不变。 ?源程序编辑功能 仿真器允许你在源程序程序窗口进行各种编辑操作,其功能和使用方法类似于IBM-PC机的WODR文档编辑功能。 ?汇编功能 仿真器的带有MCS-51汇编系统。QTH支持Franklin/Keil编译连接工具,它能对你的ASM、C或PLM源程序进行汇编。QTH可以自动识别你的源程序,并根据其扩展名性质选择编译器对你的程序进行汇编,同时生成目标文件和列表文件。(见QTH-2004说明书——[项目|编译当前文件]一栏的操作说明)。 ?反汇编功能 仿真器配有MCS-51行反汇编程序,可以对用户目标板上的程序进行反汇编,也可对调试运行的指令进行反汇编;也可以直接调入指导扩展名为.HEX或.OBJ的文件进行反汇编调试。对用户程序进行反汇编所得到的程序清单可以打印或存入主机磁盘,这为调试和分析单片机产品中的软件提供了一个有效的手段(见QTH-2004说明书——[文件夹|编译当前文件]一栏的操作说明)。 ?调试功能 仿真器能控制实验系统以单步、断点、跟踪、连续等方式运行用户程序,在运行过程中,可打开CPU窗口显示出CPU的基本状态:PC、PSW、SP、ACC以及各种特殊功能寄存器,I/O口和工作寄存器的内容以及当前指令的汇编码;也可打开观察窗口根据需要选择要想观察的变量进行观察或修改其数据;你也可以打开存储器窗口显示数据存储器或程序存储器的内容。使程序运行的结果显示在屏幕上,操作人员一目了然。 2)调试举例 下面以QTH仿真器为例说明在线仿真系统的应用。 QTH仿真器有各种接口的仿真器,除了其通讯方式不同外其他软硬件的操作方式都一样。而通讯方式不同的QTH系列仿真器由其系统软件自动识别,用户无须再进行端口设置,所以使用起来相当方便。你只需用配套的专用电缆线按说明书将仿真器与PC计算机相连,安装好配套软件和设置好参数,就可以开始仿真调试程序。 QTH集成开发环境提供了以下两种方式开发用户应用程序: ? 不使用QTH集成开发环境项目管理方式——对源程序文件直接进行汇编/连 接,兼容传统开发习惯。 ? 使用QTH集成开发环境项目管理方式——可进行多模块、混合语言编程,同 样也适合单模块程序的开发。 用户无论是进行单模块或多模块的程序开发,都建议使用项目管理方式,管理应用程序。下面分别讨论。 26 ?不使用项目管理方式开发应用程序 不使用QTH集成开发环境项目管理方式,只能对单模块方式下的应用程序开发,具有很大的局限性。以下是不使用QTH集成开发环境项目管理方式开发应用程序的步骤: ?关闭当前项目文件 命令:[项目管理|关闭当前项目] 不使用QTH集成开发环境项目管理方式开发应用程序,用户必须关闭已经打开的项目,此时QTH集成开发环境关闭界面上的所有窗口。因为当打开项目文件后,QTH集成开发环境默认所有编译/汇编、产生代码的过程都是对项目或项目所包含的文件进行的。 ?在文件菜单下打开应用程序 命令:[文件|新建]或[文件|打开] 单模块方式下的文件调试可以按照以下方法新建或打开文件: 如果您要创建一个新的程序文件,则使用以下三种方式打开一空的源程序窗口供您编辑新文件。 , 使用菜单命令:[文件|新建]。 , 使用工具栏中“新建”钮。 , 使用快捷键CTRL+N。 如果您要打开一个已存在的程序文件,则使用以下三种方式打开源程序文件供您编辑及调试源程序。 , 使用菜单命令:[文件|打开]。 , 使用工具栏中“打开”命令钮。 , 使用快捷键CTRL+O。 ?编译/汇编 使用下列命令后QTH 集成开发环境根据文件的扩展名,自动对当前激活的文件选择调用外部编译器或汇编器。 , 菜单命令:[项目|编译当前文件] , 使用工具栏中“编译”命令钮。 , 使用快捷键F3。 如果当前文件的扩展名为 ASM,编译/汇编命令调用外部汇编命令对当前文件 汇编。 如果当前文件的扩展名为 C,编译/汇编命令调用外部 C编译命令对当前文件编译。 执行[项目管理|编译当前文件]命令后产生的结果显示在消息框中。 27 如果需要设置文件编译/汇编的命令参数,可以选择[项目管理|文件属性]命令设置。 ?产生代码并装入仿真器调试 命令:[项目|编译连接装载]或[项目|装入] 编译通过后还必须进行连接操作,您也可以直接对当前文件进行编译连接装载操作。此命令自动地对修改过的源程序进行编译或汇编,然后连接所有的 OBJ,LIB 文件,再装载代码到仿真器,完成调试程序所需的准备工作。 装载完成后,调试器窗口调试工具条所有命令钮变亮。 ?选择进入在线仿真或模拟仿真 ?当仿真器连接连接正常后即可自动进入在线仿真状态。 ?如果连机不正常,则QTH会提示你连机出错,并询问你是否要进入模拟仿真,点击[是]按钮,进入模拟仿真状态。 经过以上步骤,屏幕上出现QTH 集成开发环境的系统画面。 ?QTH调试实例 ?使用项目管理方式开发应用程序 使用 QTH 集成开发环境项目管理方式,可以对单模块和多模块方式应用程序进行开发。以下是使用 QTH 集成开发环境项目管理方式开发应用程序的步骤: , 建立一个新的项目进入第一步——新建项目 , 打开已经存在的项目文件进入第三步——打开项目 ?新建项目 命令:[项目|新建项目] 选择该命令后,QTH打开一个新建项目对话框,为你创建新项目提供一个人机对话平台。QTH 集成开发环境的项目文件是按项目名称管理的,项目管理器内的项目名称不可以相同。在项目名称输入栏内,项目名称用户必须输入,并且项目名称不得超过 8 个字符,不可以使用汉字以及“-,,,*,/”等 DOS 文件所不可以使用的字符。 在新建项目对话框中选择立即加入模块文件,表示在项目建立后,会自动打开文件拴取框,供用户选择文件添加到项目管理器。 ?加入模块文件 命令:[项目|加入模块文件] 在当前新建或打开的项目中添加源程序文件。 注意:必须把主模块放在第一栏中。 ?打开项目 命令:[项目|打开项目] 对于调试已经存在的项目,可以直接打开项目文件进入第四步操作。 ? 设置项目属性 28 命令:[项目|项目属性]或[设置|项目属性] 设置当前项目的编译及连接控制项属性。 ?其余步骤 接下步骤同不使用项目管理方式开发应用程序一样,这里就不再重复,具体详见使用说明书。 2. ISP单片机硬件仿真器 29
本文档为【项目二 单片机开发工具 《单片机C语言项目式教程》教案】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_037433
暂无简介~
格式:doc
大小:762KB
软件:Word
页数:34
分类:生活休闲
上传时间:2017-09-27
浏览量:41