51系列单片机实验系统指导书.doc
《51系列单片机实验系统指导书.doc》由会员分享,可在线阅读,更多相关《51系列单片机实验系统指导书.doc(140页珍藏版)》请在咨信网上搜索。
. 51系列单片机实验系统指导书 目 录 前言 第1章 下载式实验系统的使用方法 1.1 软件安装与启动 1.1.1 1.1.2 文件操作 1.1.3 建立工程项目(汇编) 1.1.4 调试程序 第2章 软件实验 2.1 数据传送实验 2.2 清0实验 2.3 数据转换实验 2.4 拆字、拼字实验 2.5 散转程序实验 2.6 时钟实验 2.7 计数器实验 2.8 无符号十进制数加法实验 2.9 数据排序实验 2.10 单字节BCD码除法实验 2.11 查找相同个数实验 第3章 硬件实验 3.1 P1口彩灯控制实验 3.2 数码管显示实验 3.3 顺序控制实验 3.4 8031和8155接口扩展与数码管显示实验 3.5 键盘、数码管显示综合实验 3.6 A/D转换实验 3.7 D/A转换实验 3.8 A/D与D/A转换综合实验 第4章 89C51系列实验 4.1 顺序控制实验 4.2 数码管显示实验 4.3 键盘、数码管显示综合实验 4.4 A/D转换实验 4.5 D/A转换实验 前 言 目前,51系列单片机在我国的各行各业得到了广泛应用,各大专院校、 职业培训学校,均开设了单片机原理与应用方面的课程,这是一门技术性和实践性很强的学科,必须通过一系列的软硬件实验、理论联系实际,才能学好、学懂,取得较好的学习效果。为了适应这一学习上的要求,国外厂家开发了多种实验、开发系统,但普遍存在集成度高,严重脱离实际的情况。作者集多年理论教学、实验教学、产品开发的经验,完全摒弃了以前各种实验设备的那种思维模式,重新开发出一种实验、开发系统,专从产品开发角度出发,安排各种硬件实验,并且做到每一个实验就是一个小产品,每个实验就是一个产品开发的过程,从单片机最小系统开始,逐步扩展功能,从单一功能到功能多样,从小到大,从简单到复杂,自成系统给人一种完整的学习思路,让学习者概念清晰、直观明了、易学易懂,特别是加强了硬件故障排除方法的指导,解决了学习者中普遍对硬件故障排除难的问题;其次是加强了软件调试的指导,提供了一些软件调试方法和步骤,帮助初学者很快入门,帮助熟练者更加深化。 本实验系统采用模块式设计,为各学校单片机的课程设计、学生的毕业设计、提供了硬件设备,该模块可反复使用、任意组合、方便经济,解决了各单位研究与实验经费不足的问题。特别在开发产品中更加适用,一个产品谈妥后厂家往往要求几天之拿出产品样机,你可用此系统很快拼装成一个产品样机,供编程人员仿真,同时进行印制板设计。若出现问题,硬件可及时修改、添加,一切开发成功后,再作印制板,一次成功,减少经费损失,缩短了开发周期,为产品开发提供了方便。 本实验指导书分四章:第1章,下载式实验系统的使用;第2章,软件实验;第3章, 硬件实验;第4章,89C51单片机实验, 特别第4章完全讲解的是一个产品开发的全过程,力求使学习者获得更大的收益。 第1章 下载式实验系统的使用方法 1.1 软件安装与启动 下载式实验系统,是一套既可脱离硬件仿真又可与实验系统联机仿真的实验装置,对于硬件实验,只要将软件调试好后就可将程序用串行口直接在线写入芯片,再不必象以前那样要专用的编程器来固化程序。 1.1.1 软件安装 1. 为使QTH调试器能够正常运行,您必须提供以下软硬件环境: 586以上的PC及兼容机;100M以上的剩余硬盘空间;分辨率为800×600以上的显示器;具有SPP功能的打印机接口;使用符合 Intel 标准的汇编器、编译器和连接器。如 Franklin/Keil V3.2 或 keil V6.02 及以上版本。 2.使用:单击开始/程序,在程序条中选QTH2008XS下载式单片机实验仪V2004.1或直接双击桌面上QTH-2008XS快捷图标。 图1-1连机出错提示框 如果已经连接仿真器或实验仪,则直接进入QTH调试器窗口。如果没有连接仿真器,等一下屏幕上会出现图1-1所示的连机出错提示框:可以选择是否进入模拟调试:“是”——进入调试;“否”——请检查并使仿真器正常工作后,再按调试菜单上的复位钮,进入仿真调试。出现如图1-2所示的模拟调试器窗口: 图1-2模拟调试器窗口 1.2 系统使用方法 学习单片机的最终目的是开发单片机产品或维修单片机产品,开发一个产品必须经历硬件设计和软件设计两个阶段。而实验系统是将一些简单的实用电路已设计好。再在该系统中编写程序,调试程序,编写调试程序又必须经历写程序;编译程序;调试程序三个大的过程,每一个过程又有很多步骤和方法。写程序有程序输入、程序修改、程序保存。编译程序有成功与否,不成功要反复修改,成功后会自动生成列表文件(.LST)和目标文件(.OBJ),可进行调试程序,调试过程较复杂,下面分别叙述。 首先在图1-2所示的窗口中可进行程序编写或打开已编好的程序,若编写新的程序则在主菜单中单击“文件/新建”,若打开编好的程序,则在主菜单中单击“文件/打开”,现打开一个编好的文件(P1.ASM),出现如图1-3所示的模拟调试器窗口: 图1-3模拟调试器窗口 在主菜单中有9项,即文件、编辑、查看、项目、调试、设置、外设、窗口、帮助下面将每一项及每一项的子菜单分别叙述,其中文件和编辑菜单容一般会用,重点讨论查看、项目、调试、设置、外设、窗口,帮助一项也可自已随时使用。 1.2.1 查看 主菜单的“查看”下拉菜单中的容有:工具栏、状态栏、寄存器窗口、程序寄存器窗口、数据寄存器窗口、逻辑分析窗口、跟踪记录窗口、变量表、项目管理器窗口、信息窗口、观察窗口。这些窗口和工具条显示在屏幕或关闭的方法都是第一次选中且单击打开(关闭)对应的选项,第二次选中且单击关闭(打开)对应的选项。将全部打开后的屏幕窗口显示如图1-4所示: ① 号窗口为综合窗口,单击本窗口下面的标签,此窗口会变换成项目管理器窗口,特殊功能寄存器窗口,部数据存储器(00H-FFH)窗口,部位(20H-2FH围的00-7F之间共计128个位)显示窗口。随着程序的不同可以任意选择其中的一个窗口。在项目管理器窗口和部数据存储器(00H-FFH)窗口中单击鼠标右键有对应的浮动菜单出现,选中且单击选项可进行对应的操作。后面的3个窗口可直接改变单元中的数值(赋值)。 ②号窗口为信息窗口,该窗口是显示所有操作的信息容,特别是在将程序进行编译或编译连接装载后,显示程序出错与否的信息,主要看错误(ERROR)和警告(WARNING)两项,特别是错误项有一个错误就不能编译通过,调试就不能进行,有警告无错误还可通过,最好显示是“0”个错误,“0”个警告。 ③号窗口也是一个综合窗口,单击本窗口下面的标签,此窗口会变换成代码(Code)窗口,外部程序(XData)存储器窗口,数据(Data)存储器窗口。随着程序的不同可以任意选择其中的一个窗口进行观察。 图1-4模拟调试器窗口 在每一个窗口中单击鼠标右键有对应的浮动菜单出现,选中且单击选项可进行对应的操作。例如在外部程序(XData)存储器窗口中单击鼠标右键出现浮动菜单,要看指定的单元中的容,选中浮动菜单中“选择显示地址”且单击出现地址对话窗口,在窗口中输入要看的地址,对应的地址项马上出现在本窗口中,解决了查找之苦。所有窗口可直接改变单元中的数值(赋值)。 ④号窗口为观察窗口,有时要观察的值太多,可将要观察的值选定到此窗口中进行观察,方法是:在此窗口中单击鼠标右键出现浮动菜单,选中浮动菜单中“增加观察项”且单击出现如图1-5所示的对话窗口,按窗口中的要求选中对应的各项,选中的变量 图1-5模拟调试器窗口 马上出现在④号窗口中。 ⑤主窗口,程序所在的窗口,也有浮动菜单,为调试程序提供了方便。 从上可见观察容很多,一个屏幕上不可能容纳这么多容, 有的时候窗口很大,就需要用窗口调整指令来调整好各个窗口位置大小。窗口整体移动的方法是用鼠标单击上边框条,上边框变蓝,将鼠标左键按住整体移动,鼠标整个窗口一起移动,放到合适位置,松开鼠标就行。窗口四边分别收缩或放大的方法是,将鼠标点击窗口边线,出现左右或上下形式的箭头(注意此箭头一晃而过要认真捕捉),马上按住鼠标左键整体移动鼠标,边线就跟着移动,移至合适位置,松开鼠标就行,有些窗口为竖式长方形,有些窗口为横式长方形,若要调整它的形状,用窗口命令就行。 1.2.2 项目 项目菜单为解决多个程序组合或混合编程(汇编语言C语言)的问题而设置。单击主菜单中项目,出现下拉菜单,在下拉菜单中有新建项目、打开项目、关闭项目、项目属性、编译当前文件、编译连接装载、加入模块文件、加入库文件、装入调试信息。下面重点讨论几项,其他的自已照着操作不再一一叙述。 1.新建项目 单击“项目/新建项目”,出现对话框,在框重输入文件名字,新的项目就建立了。若有原项目,只是打开就行了(但源文件修改以后,每次就在“文件”菜单中选“保存”或用保存工具图标保存文件)。 2.编译文件 单击“项目/编译当前文件”或 “项目/编译连接装载”(两种方式的区别在于前者只编译,后者既编译又将编译后的代码下载到CPU中)将新编写的或打开的程序进行编译,编译成功的话,下面的信息窗口(Massage)会出现新创建的文件名,且在窗口中出现组装完成(ASSEMBLY COMPLETE),“0”个错误(ERROR)“0”个警告(WARNING) 。系统会自动生成列表文件和目标文件。若编译有错,信息窗口会指出错误在什么地方,反复修改,直至编译通过为止。 注意:若有一项错误,目标文件和列表文件就不能自动生成。 3.项目属性 单击“项目/项目属性”出现对话框,框中第一页如图1-6所示 ⑴ C编译器页 图1-6工程设置对话框 SMALL、COMPACT、LARGE这些指令控制存储器模式选择。存储器模式对不同的变量定义有所影响。 SMALL:小模式,所有函数和过程的变量及局部数据段被定义在8051片数据存储区。 COMPACT:紧凑模式,所有函数和过程的变量及局部数据段被定义在8051片外数据存储区中256字节。这种模式使用(R0、R1)访问外部数据存储器。 LARGE:紧凑模式,所有函数和过程的变量及局部数据段被定义在8051片数据存储区中64K字节空间。这种模式通过数据指针(DPTR)访问外部数据存储器。 CODE/NOCODE:CODE指令在列表文件后附加上一个汇编记忆表,源程序中的每个函数被表示为汇编代表。 OPTIMIZE(n):括号n为一个0-5的十进制数,另外可选OPTIMIZE(SIZE) 和OPTIMIZE(SPEED),以决定优化重点是放在代码长度上还是执行速度上。 RAM(SMALL、COMPACT、LARGE) RAM指令用来决定程序存的大小,它影响跳转指令的编码。 RAM(SMALL): CALL和JMP指令作为ACALL和AJMP指令的编码,最大程序空间可达2K字节,整个用户程序必须分布在这2K字节空间。 ROM(COMPACT):CALL指令以LCALL编码,函数JMP指令以AJMP编码,因此函数长度不得超过2K字节,而整个程序长度不得超过64K字节,这种用法必须根据不同的目的而决定,看其是否比标准设置ROM(LARGE)效果更佳。 ROM(LARGE):将CALL和JMP指令以LCALL和LJMP编码。这样就允许不加限制地使用整个地址空间,用户程序最大可达64K字节。 ⑵PL/M编译器页 图1-7工程设置对话框 CODE/NOCODE:CODE控制表明开始列出生成标准汇编语言格式地目标代码,这些汇编语言目标代码紧随源程序列表清单之后,NOCOD控制是在出现CODE控制之前,不列出所生成地目标代码清单。注意:NOPRINT控制不能对CODE控制有抑制作用,而且NOOBJECT中也隐含了NOCODE功能。 INTVECTOR/NOINTVECTOR 在INTVCTOR控制下,编译程序可为模块中每个中断过程产生一个字节入口的中断向量。对中断n,中断向量入口的绝对地址为8n+3。当然,可以用ASM51单独建立中断向量。在选用NOINTVECTOR控制时,编译程序将不产生任何中断向量。 RAM(SMALL、MEDUIM、LARGE) RAM指令用来决定程序存的大小,它影响跳转指令的编码。 RAM(SMALL): CALL和JMP指令作为ACALL和AJMP指令的编码,最大程序空间可达2K字节,整个用户程序必须分布在这2K字节空间。8051为提高编码密度,仅在2K块转移和调用,尽可能不使用3个字节的调用和转移指令。 ROM(MEDUIM):将正在进行编译的模块适合INBLOCK,而其他模块(包括来自PLM51.LIB的那些模块)可以任意安放,这样就需使一些调用成为长调用(3个字节)。但是大多数的转移和大部分调用,仍能保持短编码形式。 ROM(LARGE):将CALL和JMP指令以LCALL和LJMP编码。这样就允许不加限制地使用整个地址空间,用户程序最大可达64K字节。 OPTIMIZE(n):括号n的可取值为一个0-3的十进制数,在产生目标代码中,该控制实现各种优化处理。每一优化级包含了比优化级别低的所有优化处理功能。 REGISTERBANK(寄存器组控制) 其中,寄存器组值为0、1、2或3。在代码生成中,REGISTERBANK控制将确定选用其四个8051寄存器组中的一个。对一个含有USING属性的控制,能够由一个过程所替代,PL/M51认为,一个过程中断总是与他所中断的过程使用不同的寄存器组,因而如果在一个独立模块中为每个中断编译代码,则应在REGISTERBANK控制下编译所有非中断代码,所有的低级中断和高级中断分别处在各自寄存器组的设置下。因此,不用USING属性也能避开引起的麻烦。 ⑶连接器页 图1-8工程设置对话框 该页中其它各项已介绍,下面只讲述定位控制项: BIT:起始地址/段名,定位BIT段。 DATA:起始地址/段名,定位DATA段。 IDATA: 起始地址/段名,定位IDATA段。 STACK:段名,定位STACK段。 CODE: 起始地址/段名,定位CODE段。 XDATA: 起始地址/段名,定位XDATA段。 PDATA: 起始地址,为PDATA类型的段定义起始地址。 PRECODE:起始地址,在寄存器和位存储区中定位段。 1.2.3.调试程序 调试程序是使用该软件的最复杂、最关键的一步,在调试之前, 要进行各项操作与设置,不然下拉菜单中的各项打不开(没有从白色变成黑色)。 1.装载:装入当前程序的调试信息。该命令的快捷键为Ctrl+L,工具图标见由“查看/工具栏/调试工具”打开的工具条。 2.源程序调试:进入源程序调试方式。 3.混合码调试:对C程序进入源与汇编码的混合状态调试方式。 4.单步执行:跟踪运行程序,在反汇编窗口下执行一条指令,如果当前是调用指令,则进入所调用的子程序;如果在源程序窗口下,执行当前文本下的一条语句,如果是调用指令则进入所调用的子程序。该命令的快捷键为F8,工具图标见由“查看/工具栏/调试工具”打开的工具条。 5.宏单步执行:单步运行程序。反汇编窗口下如果是调用指令,则越过所调用的子程序;源程序窗口下,如果是调用语句,则越过所调用的子程序。该命令的快捷键为F10,工具图标见由“查看/工具栏/调试工具”打开的工具条。 6.连续单步:连续单步操作。该命令的快捷键为Ctrl+F8。 7.连续宏单步:连续宏单步操作。该命令的快捷键为Ctrl+F10。 8.连续执行:全速运行,遇断点停止。该命令的快捷键为F5,工具图标见由“查看/工具栏/调试工具”打开的工具条。 9.执行到光标处:全速运行到光标处。该命令的快捷键为F7,工具图标见由“查看/工具栏/调试工具”打开的工具条。 10.跳出子程序:当前执行在子程序处时,执行该命令跳出子程序。该命令的快捷键为Shift+F11,工具图标见由“查看/工具栏/调试工具”打开的工具条。 11.设置断点:单击“调试/设置断点”出现断点设置窗口,可设置或清除断点;设置断点属性等。该命令的快捷键为F9。 12. 复位:复位仿真器,该命令的快捷键为Ctrl+R。 13. 屏蔽断点全速运行 该命令的快捷键为Ctrl+F5。 1.2.4设置(S) 1. 仿真器设置: 单击“设置/仿真器设置”出现如图1-9所示的对话框,在该对话框中可设置仿真器的仿真模式。 ⑴ 8052 模式 选择 8052 仿真模式,(EA=0)。 在此模式下可仿真采用 8031/8032、80C31/80C32、8051/8052、78C32 单片机的应用系统。仿真程序存贮器模式选择栏中,可选择四种仿真存贮器模式之一: ① 程序存贮器 数据存贮器 仿真程序存贮器在仿真器上。数据存贮器也在仿真器上,该模式在无目标板时,最初调试软件用以排除软件中的故障。 图1-9仿真模式设置对话框 ② 程序存贮器 外数据存贮器 仿真程序存贮器在仿真器上,数据存贮器及 I/O口在用户板上。一般采用该模式。通过该模式进行在线测试,可排除目标板上硬件故障,并进行软件调试。 ③ 外程序存贮器 数据存贮器 程序存贮器在用户板上(EPROM),数据存贮器在仿真器上。该模式很少使用。主要用于目标板缺少数据存贮器,将仿真器上数据存贮作临时使用。 ④外程序存贮器 外数据存贮器 程序存贮器在用户板(EPROM)上,数据存贮器及 I/O 口在用户板上。该模式可进行反汇编跟踪分析目标板程序,或调试目标板上 EPROM 中程序。 ⑵ 8752 模式 当选择8752仿真模式,(EA=1)。可仿真采用 87C51/87C52 、W78E5X、AT89C5X、LG90C5X 单片机的应用系统。仿真程序存贮器模式选择栏中,可选择四种仿真存贮器模式之一: ① 程序存贮器 数据存贮器 例如:仿真 89C52 8K 程序存贮器,大于 8K 程序存贮器在仿真器上,扩展的外部数据存贮器在仿真器上。该模式在无目标板时调试软件,用于排除软件中的故障。 ② 程序存贮器 外数据存贮器 例如:仿真89C52 8K 片程序存贮器,大于8K程序存贮器在仿真器上,扩展的外部数据存贮器及I/O口在用户板上。一般采用该模式。通过该模式进行在线测试,可排除目标板上硬件故障,并进行软件调试。 ③ 外程序存贮器 数据存贮器 例如:仿真 89C52 8K 片程序存贮器,大于 8K 程序存贮器在用户板上。扩展的外部数据贮器在仿真器上。该模式很少使用。主要用于目标板缺少数据存贮器时,将仿真器上数据存贮作临时使用。 ④ 外程序存贮器 外数据存贮器 例如:仿真 89C52 8K 片程序存贮器,大于 8K 程序存贮器在用户板上。扩展的外部数据存贮器及 I/O 口在用户板上。 ⑶ 仿真器存贮空间选择 当选择 8752 模式时,跟据 CPU 片存贮器空间有四种选择: 87C51/78E51 4K 片程序存贮器 87C52/78E52 8K 片程序存贮器 87C54/78E54 16K 片程序存贮器 87C58/78E58 32K 片程序存贮器 ⑷ 主频选择 主频分仿真主频及逻辑主频两类。仿真主频是指仿真器的仿真频率;逻辑主频是指带逻辑分析仪仿真器的采集频率。有四种频率选择:6MHz、12MHz、24MHz对于(QTH-8052F+ 其频率选择为:2.7648MHz、5.5296MHz、11.0592MHz)及外晶振,当选择外晶振时,由目标板或仿真头提供振荡频率(即用户自己选择的晶振)。 ⑸ 外复位选择 该功能允许用户板的复位引入仿真器仿真 CPU,可调试外部复位电路及实时仿真外部看门狗电路及自复位电路。 2.设置PC值:设置当前程序计数器值。 3.设置文本编辑器:单击“设置/设置文本编辑器”弹出设置文本编辑器对话框,可设置环境参数,如字体、颜色等。 4.项目属性:设置源程序的编译/连,在前面已讲述 1.2.5外设(O) 1. 端口:端口设置窗口,显示或改变端口的状态。如图1-10所示。 2. 定时/计数器0:定时器/计数器0模式和控制窗口,其TMOD和TCON的值,可以作为定时器0初始化的编程依据,如图1-10所示。 图1-10 外设图示 3. 定时/计数器1:定时器/计数器1模式和控制窗口,其TMOD和TCON的值,可 图1-11外设图示 以作为定时器1初始化的编程依据。 4. 定时/计数器2:定时器/计数器0模式和控制窗口,其中T2CON的值,可以作为定时器2初始化的编程依据。 5. 串行口:串行口工作模式和控制窗口,其SMOD和SCON的值,可以作为串行口初始化的编程依据。如图1-11所示。 6. 中断:中断状态窗口,包括INT0,INT1,T0,T1,T2和UART中断状态以及优先级和允许设置。设置或清除相应的标志,可以改变中断的状态,也可以通过相应的值,作为中断初始化的编程依据。如图1-11所示。 1.2.6 QTH集成开发实验系统使用 QTH集成开发环境提供了以下两种方式开发应用程序: l 不使用QTH集成开发环境项目管理方式——对源程序文件直接进行汇编/连接方式,兼容传统开发习惯。 l 使用QTH集成开发环境项目管理方式——可进行多模块、混合语言编程的方式,也同样适合单模块程序的开发。 1.不使用项目管理方式开发应用程序 不使用QTH集成开发环境项目管理方式,只能进行单模块方式下的应用程序开发,具有很大的局限性。以下是不使用QTH集成开发环境项目管理方式开发应用程序的步骤。 ⑴ 关闭当前项目 单击“项目/关闭项目” 此时QTH集成开发环境关闭界面上所有的窗口。 不使用QTH集成开发环境项目管理方式开发应用程序,用户必须关闭已经打开的项目,因为当打开项目文件后,QTH集成开发环境默认所有编译/汇编、产生代码的过程都是对项目或项目所包含的文件进行的。 ⑵ 在文件菜单下打开应用程序 单击“文件/新建”或“文件/打开”,出现如图1-12所示的对话框。 单模块方式下的文件调试可以按照以下方法新建或打开文件: ●单击“文件/新建”,输入文件名和扩展名,新建文件 ●单击“文件/打开”,选择文件选取框中的文件将其打开 图1-12 打开对话框 ⑶ 编译/汇编 单击“项目/编译” QTH集成开发环境根据文件的扩展名,自动对当前激活的文件选择调用外部编译器或汇编器: 图1-13 信息框 ① 如果当前文件的扩展名为ASM,“编译/汇编”命令调用外部汇编命令对当前文件汇编。 ② 如果当前文件的扩展名为C,“编译/汇编”命令调用外部C编译命令对当前文件编译。 执行“项目/编译”命令后产生的结果显示在如图1-13所示的信息框中: ⑷错误信息关联 QTH集成开发环境调用外部命令编译后产生的结果,显示在信息窗口中。信息窗口中,当编译发生错误时,信息窗口中的错误信息自动与源文件关联,提示出错的位 置。在信息窗口中错误提示处双击鼠标左键,也可将错误信息与源文件的错误位置关联,如图1-14所示。 图1-14 信息关联框 l 如果编译没有错误,可进入第⑸步操作 l 如果编译出现错误,在修改文件后重复进行第⑶步操作 ⑸ 产生代码并装入仿真器调试 单击“项目/装入调试信息”或“调试/装入” 装入调试信息或装入命令对编译连接无误后产生的OBJ文件进行连接,产生用于下载的代码。此命令自动地对修改过的源程序进行编译或汇编,对没有修改过的程序将越过编译或汇编过程,然后连接所有的OBJ,LIB文件,再装载代码到仿真器,完成调试程序所需的准备工作。装载完成后,调试器窗口调试工具条所有命令钮变亮。 2.使用项目管理方式开发应用程序 使用QTH集成开发环境项目管理方式,可以对单模块和多模块方式应用程序进行开发。以下是使用QTH集成开发环境项目管理方式开发应用程序的步骤: l 建立一个新的项目进入第⑴步——新建项目 l 打开已经存在的项目文件进入第⑶步——打开项目 图1-15新建项目对话框 ⑴ 新建项目 单击“项目/新建项目”出现图1-15所示的对话框 项目名称栏:QTH集成开发环境的项目文件是按项目名称管理的,项目管理器的项目名称不可以相同。在项目名称输入栏,项目名称用户必须输入,并且项目名称不得超过8个字符,不可以使用汉字以及“-,?,*,/”等DOS文件所不可以使用的字符。 图1-16打开对话框 立即加入模块文件:选择立即加入模块文件,表示在项目建立后,会自动打开文件选取框,供用户选择文件添加到项目管理器。 ⑵ 加入模块文件 单击“项目/加入模块文件”出现“打开”窗口,选择文件在当前新建或打开的项目中添加源程序文件。 注意:必须逐个加入模块文件,并且把主模块第一个加入其中。 ⑶ 打开项目 单击“项目/打开项目” 出现“打开”窗口。对于调试已经存在的项目,可以直接打开项目文件进入第四步操作。 ⑷ 设置项目属性 设置当前项目的编译及连接控制属性。 ⑸ 编译/汇编/连接 单击“项目/编译连接装载”,QTH集成开发环境根据文件的扩展名,自动对激活的文件选择调用外部编译器或汇编器进行编译。 l 如果当前文件的扩展名为ASM,编译/汇编命令调用外部汇编命令对当前文件汇编。 l 如果当前文件的扩展名为C,编译/汇编命令调用外部C编译命令对当前文件编译。 文件编译/连接的命令行参数由“项目/项目属性”确定。 ⑹ 错误信息关联 文件经过编译/连接后的结果显示于信息窗口,出现错误后错误信息与文件关联。在信息窗口中错误之处双击鼠标左键,可将错误与文件关联: ● 如果没有错误,进入第⑹步操作 ● 如果出现错误,修改文件后重复第⑸步操作 ⑺ 装入调试信息 单击“项目/编译连接装载” 单击“项目/装入调试信息” 单击“调试/装入” 编译连接装载命令对经过编译/汇编无误后产生的OBJ文件进行连接产生用于下载的代码。此命令对修改过的源程序自动进行编译或汇编,否则将越过编译或汇编过程进行连接并装载代码到仿真器,完成调试文件所需的准备工作,并自动装入调试信息到仿真器。 l 使用编译连接装载命令,命令管理器会自动判别文件是否需要重新编译/汇编,提高调试效率,对编译连接通过的程序自动装入调试信息到仿真器。 l 使用重新装入信息或装入命令,直接装入调试信息到仿真器。 1.2.7 调试举例 例1-1:单模块汇编语言源程序(不使用项目管理方式开发应用程序) 程序用已编好的文件,存于QTH\ASM文件夹中,文件名:P1.ASM ⑴关闭项目文件 关闭当前已经打开的项目,保证编译/汇编连接都是对当前激活的文件进行操作。 ⑵打开文件掌握数据转换方法程序编写方法 点击“文件/打开”,在文件选取框中选择文件 P1.ASM。 ⑶编辑修改文件 对打开后的文件进行编辑修改。 ⑷ 编译连接装载 单击“项目/编译连接装载”命令P1.ASM文件汇编,编译/汇编后产生的结果出现在QTH集成开发环境信息窗口。如果程序存在错误,集成开发环境将自动关联到源程序的错误处,转到第⑶步操作;如果正确,则装入调试信息到仿真器可进行第⑹步。 ⑸ 装入代码到仿真器 使用[项目|装入调试信息]命令,将产生代码装入仿真器,此时QTH集成开发环境进入调试状态。QTH集成开发环境的文件窗口P1.ASM的左侧出现了一列小圆点,表示当前程序计数器PC。如图1-17所示。 图1-17 ⑹ 调试应用程序. 经过前面操作,为QTH集成开发环境调试应用程序提供了所有准备工作。您可以开始对源程序进行调试。 例1-2:多模块汇编语言源程序(使用项目管理方式开发应用程序) 多模块程序 AMPLE1.C,SAMPLE2.ASM,假定已存于C:\QTH\C51和C:\QTH\C51目录,当建立项目时,项目文件也存放在该目录。 ⑴ 建立新的项目文件 选择[项目|新建项目]命令,根据提示输入、设置以下项目: l 在项目名称框中输入SAMPLE,此时项目名称为SAMPLE。 l 选择立即加入模块文件,表示在项目建立后将自动打开文件捡取框,供用户选择文件添加到项目管理器。 l 在项目属性项将C编译器其它选项选择“NOREGPARMS”控制项。 ⑵ 编辑修改文件 对打开后的文件进行编辑修改。 ⑶ 编译连接装载 使用[项目|编译连接装载]或热键F4命令对当前多模块文件编译/汇编,编译/汇编后产生的结果出现在QTH集成开发环境信息窗口。如果程序存在错误,集成开发环境将自动关联到源程序的错误处,转到第⑶步操作;如果正确,则装入调试信息到仿真器可进行第⑸步。 ⑷ 错误信息关联 文件经过编译/汇编后的结果显示于信息窗口,出现错误后错误与文件关联。在信息窗口中错误之处双击鼠标左键,可将错误与文件关联: l 如果没有错误,可进入第⑸步操作。 l 如果出现错误,修改文件后重复进行第⑵步操作。 ⑸ 调试应用程序 使用[项目|装入调试信息]命令,将产生代码装入仿真器,此时QTH集成开发环境进入调试状态。QTH集成开发环境的文件窗口的左侧出现了一列小圆点,表示当前程序的有效行,即此时存在相应的代码,键入F8跟踪运行键,程序运行到 main 函数的第一条语句,并在该行的左侧出现绿色的小手,表示当前的程序计数器PC。到此,QTH集成开发环境提供应用程序的所有准备工作。 1.2.8 断点 QTH集成开发环境配合QTH系列仿真器,具有强大的断点功能:可以在编辑和调试状态下设置或清除断点,并且在退出集成开发环境时自动保存断点信息。 1.断点标记 QTH集成开发环境的断点标记,根据系统状态和所处窗口类型,标记如下: l 在编辑或调试状态下,源程序窗口绿色小手——无效断点或临时断点,退出进不保存。 l 在调试状态下,源程序窗口的红色小手——有效地址断点,退出时保存。 l 在反汇编窗口设置的断点,标记为红色光——地址断点,退出时保存。 2.断点变化规律 在编辑或调试状态下源程序窗口没有断点处设置断点,标记为绿色小手;再次设置断点,标记被清除。 在调试状态下源程序窗口有效程序执行处设置断点,标记为红色空心小手,再次设置断点,标记被清除。 在调试状态下与源程序断点关联的反汇编窗口红色光带处设置断点,在反汇编窗口清除断点,同时将源程序窗口断点标记清除;再次设置断点,反汇编窗口标记为红色光带,源程序窗口的对应行再次标记为断点行。 3.源程序文本上设置断点 ⑴ 编辑状态设置断点 当用户在编写源程序的过程中,根据调试需求,可以直接在源程序文本的任何地方设置或清除断点。如果设置了断点,将以绿色小手标记在源程序文本左侧的灰色状态栏,断点属性为无效断点。当编译连接装载通过后,自动转化为有效断点,对于在源程序文本上设置的无效断点,系统退出时不保存。 ⑵ 调试状态设置的断点 在调试状态下,可以直接在源程序文本上设置断点(当文本左侧的灰色状态栏时,表示当前程序为有效行)。设置后,断点以红色小手标记在文本左侧的灰色状态栏;如果没有出现小圆点,则不可以设置有效断点。在编辑状态下设置的断点,通过编译连接后,如果预设的断点编译后是有效行,则断点标记为有效断点;如果不是有效行,则仍为无效断点。对于在源程序文本上设置的断点,系统退出的全部自动保存。 ⑶ 在反汇编窗口设置的断点 断点在反汇编窗口以红色光带表示,可以任意设置地址断点,如果设置的断点与源程序有效地址关联,则与源程序相关联的地址处设置断点,在源程序窗口出现红色小手。 图1-18 断点设置窗口 如果在源程序断点相关联的反汇编窗口红色光带处设置断点,将清除窗口的断点光带,同时清除源程序断点标记;再次设置断点,反汇编窗口标记为红色光带,源程序对应行再次标记为断点。 ⑷ 断点设置窗口 通过断点设置可执行增加断点,删除断点等操作。设置断点属性——禁止或允许断点,断点的过点次数等。 1.2.9 具体调试方法 1.调试判位变量转移指令AD0: P1.3,AD0的方法。 不管用单步还是全速运行,碰到此句时,若P1.3≠0就停止执行,只有当P1. 3=0时,才接着向下执行,调试时没有硬件,本仿真系统提供了硬件接口,只要在主菜单View的下拉菜单中,选Hardware就弹出对话窗口,在窗口中选P1口,弹出P1口结构图,赋值使P1.3=0,此时再运行,程序就往下执行。 同样可调试,判位变量转移指令,AD0:JNB P1.3 AD0 ,只是赋值时,使P1.3=1。 2.调试外部中断程序 外部中断0(),请示端口为P3.2,中断入口地址为0003H,低电平有效。外部中断1(),请示端口为P3.3,低电平有效,中断入口地址为0013H。在编写程序时,只要在中断服务程序之前(或开头)安排两条语句,ORG 0003H, AJMP INTP0就行,INTP0为中断服务子程序的标号,当P3.2为低电平时, 执行到开外部中断指令,SETB EA;SETB EX1,程序就进入中断服务子程序。若P3.2不为低电平, 程序就不进入中断服务程序,调试时使P3.2为0的方法,是在主菜单View 的下拉菜单中,选Hardware,弹出对话窗口,在窗口中选P3口,对P3.2赋值为0 就行,同样可调试外部中断1()。 3.定时器中断调试方法 51系列有两个16位的定时/计数器,当用作定时器时,由单片微机部的时钟脉冲,经12分频后,送加1 计数器, 当用作计数器时, 由外部提供计数脉冲,通过引脚P3.4(T0)和P3.5(T1)端口送计数器,端口出现,由“1”(高电平)到“0”(低电平)的负跳变脉冲时,计数器则加1,计数器不断加1计数到FFFF时,16 位计数器将由全“1”回归全“0”,计数器产生回“0”溢出脉冲,置位中断系统的中断请求标志位, 请求主机进行中断处理,即溢出中断。若用外部脉冲计数,所对应的引脚应有负跳变脉冲,有一个计一个,无脉冲就停止计数。若用部时钟脉冲时, 就与外端口无关。 T0的中断入口地址是000Bh ,T1的中断入口地址是001BH。编程时,只要在中断服务程序之前或程序开头安排两条语句,ORG 000BH;AJMP CONT0 ,CONT0为中断服务子程序的标号,当程序执行SETB EA , SETB TR0 ,若有溢出时,程序就进入中断服务程序, 否则就不进入中断服务程序。若要溢出快,就将初值TL0 、TH0两单元的值设置大一些, 例如TH0的值设置为FF ,TL0的值设置为FE或FD,这样程序运行一次或两次就溢出,很好调试,若初值设置为0000,从0000到FFFF要运行65536次,若用单步运行就要很长时间。同样,可调试外部脉冲计数器。 4.下面以跳“彩灯左移”为例具体说明 ⑴ 单击“ 文件(File)/新建”,并编写程序,跳“彩灯左移”源程序,程序的功能是使接于P1口的8个指示灯顺次点亮,反复循环。 ORG 0000H /*指- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 51 系列 单片机 实验 系统 指导书
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文