版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
任务一使用KeilμVision开发环境常见的MCS−51系列单片机编程语言有4种,即汇编语言、C语言、BASIC语言和PL/M语言。目前最为常用的是汇编语言、C51语言(C语言为51单片机进行的扩展),它们有良好的编译器支持,使用较为广泛。C51常用于编写较为复杂的大型程序,汇编语言则用于对效率要求较高的场合,尤其是对底层函数的编写。因此,一个好的单片机开发者,不仅要熟悉单片机内部的体系结构,还要理解单片机内部的工作过程,能熟练地使用汇编语言和C51语言进行单独或联合开发。下一页返回任务一使用KeilμVision开发环境一、KeilμμVision集成开发环境μVision4IDE(IntegratedDevelopmentEnviroment:集成开发环境)是Keilsoftware公司继μVision3后的产品,它集项目管理、编译工具、源代码编写工具、代码调试以及完全仿真于一体,是目前市面上最流行的单片机开发软件平台。该软件具有类似VC风格的界面,提供了丰富的工具、命令和窗口,可以使开发者在程序调试过程中随时掌握代码所实现的功能。上一页下一页返回任务一使用KeilμVision开发环境1.项目工程的建立在桌面上双击KeilμVision4图标,启动集成开发环境,如图4−1
所示,该界面中最上面一行是菜单,菜单下面是各种工具按钮,左边的ProjectWorkspace窗口为项目管理窗口(ProjectWindow),最下面的为输出窗口(OutputWindow),中间部分为工作区,通常我们所编的源程序、调试程序代码窗口会出现在这里。单击“Project”菜单下的“NewμVisionProject…”命令,在出现的对话框中输入项目名“TestProject”,选择合适的文件夹下建立新的工程项目TestProject.uvproj,单击“确定”按钮出现如图4−2
所示的“SelectDeviceForTarget‘Target1’”对话框,在“Datebase”栏下选择Atmel,单开“+”号,选择AT89C51器件,然后单击“OK”按钮。上一页下一页返回任务一使用KeilμVision开发环境2.源程序文件的建立使用菜单“File”→“New”命令,弹出源程序编辑窗口,输入以下程序:ORG0030HMOVR0,#30MOVR1,#40HCLEAR:CLRAMOV@R1,AINCR1DJNZR0,CLEAR上一页下一页返回任务一使用KeilμVision开发环境SJMP$END执行“File”→“Saveas”命令,保存文件名为CLR_RAM.asm。3.将文件加入到工程项目中按图4−3
所示单击“AddFilestoGroup‘SourceGroup1’”命令,然后选中CLR_RAM.asm文件,单击“Add”按钮,将刚才编写的源程序CLR_RAM.asm加入项目中,如图4−4
所示。注意:添加完文件后,该对话框并不消失,等待继续加入其他文件,初学者常误认为添加文件不成功,其实已添加成功,只需单击“Close”按钮关闭对话框即可。上一页下一页返回任务一使用KeilμVision开发环境4.工程的详细设置工程建立好后,要对工程进行进一步的设置,以满足后续工作的要求。首先单击左边的Project窗口的Target1,然后执行菜单“Project”→“OptionsforTarget‘Target1’”命令弹出对工程设置的对话框,其中有8个页面,这里绝大部分设置取默认值就可以了。DeviceTarget页面如图4−5
所示。上一页下一页返回任务一使用KeilμVision开发环境
“Xtal”后面的数值为晶振频率值,默认值为所选CPU的最高工作频率,对AT89C51而言为24MHz,我们常选12MHz值,该值与最后产生的目标代码无关,仅用于软件仿真显示程序执行时间,一般与硬件所用频率设为同一值,这里我们将它设为12MHz。“MemoryModel”用于设置RAM的使用情况,设置为Small;“CodeRomSize”用于设置ROM的空间,设置为Large:64K;“Operatingsystem”用于选择操作系统,一般不用操作系统,选择None;“UseOn-chipROM”用于选择是否使用片内的ROM。在此设置如图4−5所示。“Off-chipCodememory”用以确定系统扩展ROM的地址范围,“Off-chipXdatamemory”组用于确定系统扩展RAM的地址范围,这些需根据硬件来决定。上一页下一页返回任务一使用KeilμVision开发环境设置对话框中的Output页面,如图4−6
所示,这里也有多个选项,其中“CreatHEXFile”用于声称可执行代码文件(可用编程器械如单片机芯片中执行的HEX格式文件),默认情况下该项未被选中,如果要写芯片做硬件试验,就必须选中该项,这一点要特别注意。“SelectFolderforObjects”是用于选择最终生成目标文件所在的文件夹,默认与工程文件在同一个文件夹中。“NameofExecutable”用于指定最终生成的目标文件的名字,默认与工程的名字相同。对于Debug页面的设置,如果要进行仿真,选中“UseSimulator”,就可以进行软件仿真。其他所有页面设置为默认选择即可,设置完后,按确认键返回主界面,此时工程文件建立设置完毕。上一页下一页返回任务一使用KeilμVision开发环境5.编译、链接设置好工程后,即可以进行编译、链接。选择菜单“Project”→“Buildtarget”命令,对当前工程进行链接,如果当前文件做过修改,会先对该文件进行编译,然后再链接以产生目标代码,如果选择“RebuildAlltargetfiles”将会对当前工程中的所有文件重新编译后再链接确保最终生成的目标代码是最新的。编译过程中的信息将出现在输出窗口中的Build页中,如果源程序中有语法错误,会报告错误,双击该行,可以自动定位到出错的位置。如果没有出错,最终会得到如图4−7
所示的结果,提示已生成.hex的文件。上一页下一页返回任务一使用KeilμVision开发环境二、KeilμμVision4仿真调试、在线汇编与断点设置上一节我们学习了如何在建立工程文件、源程序以及编译生成目标代码,这仅仅是语法上没有错误,如果你的程序在逻辑上出现错误就必须通过调试来解决,实际上绝大部分的程序都必须经过反复调试才能得到正确的结果,调试是软件开发中的一个重要环节。下面着重介绍常用的调试命令、利用在线汇编设置断点进行调试的方法。1.常用调试命令、窗口介绍Keil内建了一个仿真CPU用来模拟执行程序,可以在没有硬件和仿真机的情况下进行程序的调试。在对工程成功汇编、链接后,单击菜单“Debug”→“Start/StopDebugSession”命令或者按“Ctrl”+“F5”或者单击工具按钮即可进入调试状态。上一页下一页返回任务一使用KeilμVision开发环境调试状态和编辑状态相比有比较明显的变化,在Debug菜单中原来不能使用的命令现在都可以使用了,工具栏中多出了一个用于运行和调试的工具条,如图4−8
所示。该工具条从左到右依次为复位、运行、暂停、单步、过程单步、执行完当前子程序、运行到当前行、下一状态、打开跟踪、观察跟踪、反汇编窗口、观察窗口、代码作用范围分析等命令。学习程序调试必须先了解全速运行和单步运行的概念,全速运行即一次运行完成,可以看见程序运行的整体效果,但如果出错则用这种方法很难查找到具体的出错位置,必须借助于单步运行工具,单步执行是每次执行一行即停止,可以看见当前程序运行的中间状态,两种方式都经常会用到。上一页下一页返回任务一使用KeilμVision开发环境按下“F11”键或使用菜单STEP或相应的命令按钮可以单步执行程序,使用STEPOVER或功能键“F10”可以进行过程单步执行,进入如图4−9所示的界面,可以看见在源程序窗口的左边出现一个黄色的调试箭头,每执行单步一次,黄色箭头向下移一行。另外在调试的过程中可以随时监视到各寄存器的状态,可以查看存储器的值,还可通过设置变量在观察窗口中观看变量值的变化。在调试状态下,单击菜单“Peripherals”,可以打开片上资源的调试窗口,包括中断源、定时器计数器、串口以及P0、P1、P2、P3口,如图4−10所示,边调试边观察它们的值。上一页下一页返回任务一使用KeilμVision开发环境2.在线汇编技术在进入Keil的调试环境后,如果发现程序有错,可以直接修改源程序,但是要使修改后的程序代码有效,必须先退出调试环境,重新编译链接后再进入调试,但如果只是需要对某些程序行进行测试,或仅需对源程序进行临时的修改,这样的过程就显得有些麻烦,为此Keil软件提供了在线汇编的能力,将光标定位于需要修改的程序行上,用菜单“Debug”→“InlineAssambly…”命令即可弹出如图4−11所示的对话框。在“EnterNewInstruction”后面的编辑框内直接输入要更改的程序语句,输入完后键入回车将自动指向下一条语句,可以继续修改,如果不再需要修改,可以单击右上角的关闭按钮关闭窗口。上一页下一页返回任务一使用KeilμVision开发环境3.断点设置程序调试时,一些程序行必须满足一定的条件才能被执行到(如程序中某变量达到一定的值、按键被按下、串口接收到数据、有中断产生等),这些条件往往是异步发生或难以预先设定的,这类问题使用单步调试方法是很难调试的,这时就要使用到程序调试中的另一种非常重要的方法——断点设置。设置好断点后可以全速运行程序,一旦运行遇到断点时就会停止运行,此时可以观察有关变量的值,寄存器的值已确定问题所在。设置/移除断点的方法是将光标定位到需要设置断点的程序行,使用菜单“Debug”→“Insert/RemoveBreakPoint”命令设置或移除断点,也可以用鼠标在该行双击实现相同的功能;上一页下一页返回任务一使用KeilμVision开发环境执行“Debug”→“Enable/DisableBreakPoint”命令是开启或暂停光标所在行的断点功能;执行“Debug”→“DisableAllBreakPoint”命令暂停所有断点;执行“Debug”→“KillAllBreakPoint”命令清除所有的断点设置。断点调试窗口如图4−12所示。4.实例请通过以下程序在KeilμVision4环境下建立工程、输入程序、完成编译并仿真调试。例::将片内从40H开始的连续30个地址内容清零。ORG0030H上一页下一页返回任务一使用KeilμVision开发环境MOVR0,#30HMOVR1,#40HCLEAR:CLRAMOV@R1,AINCR1DJNZR0,CLEARSJMP$END上一页返回任务二搭建伟福系列仿真系统一、伟福系列仿真系统的特点1.环境介绍V8系列仿真器为伟福公司研发。它采用大规模可编程芯片及专用仿真芯片制造,是集仿真器、逻辑分析仪、跟踪器、逻辑笔、波形发生器、硬件测试仪于一体的通用仿真器。该系列仿真器主要具有以下主要特点:(1)通用仿真器。该仿真器采用主机+POD组合形式,通过更换POD,可以对各种CPU进行仿真,而无须更换仿真器。为用户提供了一种灵活的多CPU仿真系统。下一页返回任务二搭建伟福系列仿真系统(2)仿真头内置,提高仿真频率,减少外接插头体积,可以灵活接插用户板。(3)强大的逻辑分析仪综合调试功能。(4)强大的追踪器功能。追踪功能以总线周期为单位,实时记录仿真过程中CPU发生的总线事件,其触发条件方式同逻辑分析仪。追踪窗口在仿真停止时可收集显示追踪的CPU指令记忆信息,可以以总线反汇编码模式、源程序模式对应显示追踪结果。(5)波形发生器功能。伟福V8/L仿真器可以向用户板上输出多达8路可编程的与程序同步的复杂数字波形,为设计人员提供各种数字信号源,如串行通信信号、I2C、SPI等波形,波形最高频率为100MHz,极大方便了开发人员。上一页下一页返回任务二搭建伟福系列仿真系统(6)双CPU结构。由监控CPU控制仿真CPU完成仿真工作,100%不占用用户资源。全空间硬件断点,不受任何条件限制,支持地址、数据、外部信号、事件断点,支持实时断点计数、软件运行时间统计。(7)双工作模式。伟福V8系列仿真器可以在没有任何硬件的条件下做软件模拟仿真(无须仿真器);当然也可以在仿真器与用户系统联机状态下进行仿真。(8)集成环境。伟福Windows调试软件提供了一个全集成环境,集成了编辑器、编译器、调试器,源程序编辑、编译、下载、调试全部可以在一个环境下完成;同时支持多种CPU仿真且亦集成在一个环境下。上一页下一页返回任务二搭建伟福系列仿真系统(9)多语言多模块混合调试。该仿真器支持ASM(汇编)、PLM、C语言多模块混合源程序调试,在线直接修改、编译、调试源程序。如果源程序有错,可直接定位错误所在行。(10)反汇编功能。伟福独创的控制文件方式的反汇编功能,可以将机器码反汇编成汇编语言。2.系统安装用户可以在伟福公司网站上下载最新版本的软件,网站网址为http://www.wave−,下载后即可按照安装提示进行安装。上一页下一页返回任务二搭建伟福系列仿真系统二、存储器读写操作为了学习单片机存储器的读写操作,我们编写下列程序,并利用伟福模拟仿真系统,观察程序运行后各存储单元的变化情况。1.程序清单ORG0000HSTART:MOV00H,#0F0HMOV20H,#0FFHMOVR1,#00HMOVA,@R1上一页下一页返回任务二搭建伟福系列仿真系统MOVR2,20HMOVP0,#00HMOVR7,ASETBCSETBRS0MOVR0,AEND2.程序分析(1)ORG0000H:ORG为起始伪指令,它规定其下面的目标程序的起始地址。指令中的16位地址(4位十六进制数)便是起始地址。上一页下一页返回任务二搭建伟福系列仿真系统(2)MOV00H,#0F0H:将立即数F0H传送到内部数据区地址为00H的单元(R0)。(3)MOV20H,#0FFH:将立即数FFH传送到内部数据区地址为20H的单元。(4)MOVR1,#00H:给R1赋值为00H。(5)MOVA,@R1:间接寻址R1,将00H单元的内容F0H传送到累加器A。(6)MOVR2,20H:直接寻址20H,将该单元的内容FFH传送到R2。(7)MOVP0,#00H:将P0口清零。上一页下一页返回任务二搭建伟福系列仿真系统(8)MOVR7,A:将累加器A的内容传送给R7。(9)SETBC:将CY置1。PSW的值为80H。(10)SETBRS0:选择1区工作寄存器。(11)MOVR0,A:将累加器A的内容传送给R0(地址08H)。(12)END:为结束伪指令,表明汇编语言源程序的结束标志。汇编程序对该指令后面的内容将不再进行汇编。(13)START:程序标号,是该指令所在的符号地址,由字母打头的字母数字串组成,可以根据需要设置。3.利用伟福模拟仿真系统观察程序执行之后各存储器单元的变化(1)运行WAVE6000集成调试软件。这里采用模拟仿真方式,无须连接实际仿真器及硬件电路。上一页下一页返回任务二搭建伟福系列仿真系统(2)仿真器设置。单击仿真器菜单,进入仿真器设置。依次设置语言、目标文件、仿真器,如图4−13所示。设置完成后按键确认。出现确认对话框后,再次按键确认。若使用硬件仿真,请注意去掉“使用伟福软件模拟器”前的选择,同时还应进行通信设置。(3)利用菜单或工具栏建立新文件,输入源程序,然后以扩展名.ASM存盘,如图4−14所示。(4)编译源程序。单击编译按钮,将汇编语言指令编译成二进制代码。图4−15中显示了编译结果。图中左边第一列为每条指令在程序存储器中存放的首地址,图中左边第二列为每条指令编译后的二进制代码。上一页下一页返回任务二搭建伟福系列仿真系统不同指令编译后由于代码长度不同,所占存储单元数亦不同。第一条指令“MOV00H,#0F0H”编译后的机器码为7500F0(十六进制),在存储器中占用0000H、0001H、0002H三个存储单元。(5)运行程序。采用单步运行方式,观察R0、R1、R2、A、PSW等相关寄存器与存储单元的变化,运行结果如图4−16所示。上一页返回任务三Proteus软件快速入门一、ProteusISIS设计与仿真平台1.ISIS窗口介绍在计算机上启动ProteusISIS后直接进入ISIS窗口,如图4−17所示。2.Proteus文件操作1)文件的建立和保存如图4−18所示,可以通过单击“文件”(File)菜单或工具按钮来新建、打开、保存设计文件。下一页返回任务三Proteus软件快速入门选择“File”→“NewDesign”菜单命令,弹出如图4−19所示的新建设计(CreatNewDesign)对话框,对话框中有多种可供选择的模板,选择所需模板,单击“OK”按钮即可建立一个新的空白文件。通常系统默认模板为DEFAULT模板。如要保存设计文件,单击“File”→“SaveDesign”命令,输入文件名后单击保存按钮,注意保存的文件类型为DesignFile。2)打开已保存文件选择“File”→“LoadDesign”菜单命令或单击工具图标,弹出“LoadISISDesignFile”对话框,如图4−20所示,选择所要打开的文件即可。注意打开的是.DSN设计文件。上一页下一页返回任务三Proteus软件快速入门3)Proteus文件类型Proteus中主要有以下文件类型:(1)设计文件(*.DSN),包含了一个电路所有的信息,最为常用。(2)备份文件(*.DBK),保存覆盖现有设计文件时会产生文件备份。(3)局部文件(*.SEC),设计图的一部分,可输出为一个局部文件,以后可以导入其他的图中。在文件菜单中以导入(Import)导出(Export)命令来操作。上一页下一页返回任务三Proteus软件快速入门(4)模型文件(*.MOD),可创建原库中没有的原理图模型,并将模型存入用户库中。(5)库文件(*.LIB),元器件和库。(6)网表文件(*.SDF),当输出到PROSPICEandARES时产生的网表文件,扩展名为.SDF。ProteusVSM中还有一些其他文
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 平面直角坐标系的概念课件2025-2026学年人教版七年级数学下册
- 职业病危害申报登记制度
- 服务满意度调查实施方案
- 苹果树轮纹病综合预防技术规范
- 雨水管网排污拦截管理规程
- 电力设备新能源行业市场前景及投资研究报告:全球能源锂电机遇
- AI智能汽车行业投资策略分析报告:小鹏吉利Robotaxi提速看好智能化
- 医学本科人体解剖学试题及解析
- 水肥一体化首部设备安装规范
- 蔗飞虱应急防治技术操作规范
- 食品生产供应商管理制度
- 2026黑龙江双鸭山公益性岗位招聘176人备考考试题库附答案解析
- 2025年云南烟草招聘考试真题
- 卫气营血辨证护理
- 2026年山东能源集团招聘笔试习题含答案
- 影子老师陪读合同范本
- 招标档案移交制度
- 2025年榆林神木市信息产业发展集团招聘备考题库(35人)及答案详解(新)
- 商铺消防改造方施工方案
- 森林防灭火知识培训课件
- DB15-T 4032-2025 建设项目取用水合理性分析报告编制导则
评论
0/150
提交评论