当前位置:
文档之家› KeilC51安装和使用说明
KeilC51安装和使用说明
jmp start
loop1:mov P0,a
;将要显示的代码送P0口
mov r4,#20
;延时200ms(0.2S)
call delay
;调用延时
inc dptr
;DPTR加1,为读取下一个地址的内容作准备
jmp loop
;************** 延时子程序 ****************
delay:mov r1,#20
;延时10ms子程序
d1: mov r2,#200
djnz r2,$
djnz r1,d1
djnz r4,delay
ret
table:db 0feh,0fdh,0fbh,0f7h
;左移
db 0efh,0dfh,0bfh,07fh
db 0feh,0fdh,0fbh,0f7h
第一部分:KeilC51 的安装
1:KeilC51 的安装. 执行”仿真开发环境\keilC51\setup\setup.exe”,按”next”,直到出现:
完全安装
图1
选择”Full Version”, 一直按”next”,出现:
序列号输入框 必须正确输入 用户名输入框 可顺便输入
图2
当序列号和用户名都输入后,”next”按钮才被激活.( 序列号的输入参考 SN.TXT 文档) 继续按”NEXT”,直到出现:
图18 有关编译的工具栏按钮和菜单
按1、2、3中的任意一个进行编译。在4中的Build页可以看到编译的错误信息和使用的系统资 源情况等,以后我们要查错就靠它了,如果用户程序和工程设置没有错误,编译和链接将能顺利 完成。如图19所示,提示获得了名为led.hex的文件,该文件即可被编程器读入并写到芯片中,同 时还可看到,该程序的代码量(code=120),内部RAM的使用量(data=8),外部RAM的使用量(xdata=0) 等一些信息。除此之外,编译、链接还产生了一些其它相关的文件,可被用于Keil的仿真与调试, 这时可进入下一步的调试。
图8 保存源文件对话框
在创建源文件后,就可将这个文件添加到工程中.回到编辑界面,在“项目工作区”页中,单 击“Target 1”前面的“+”号,然后在“Source Group 1”上单击右键,弹出如图9所示的下拉菜 单.
图9文件组快捷菜单
选择“Add File to Group ‘Source Group 1’”,出现如图10所示对话框.
按”下一步”会出现提示备份被替换的文件,请选择”否”
选“否”
按”下一步”直到完成. 成功安装完后,你的 KeilC51 就是中文的了.
第二部分: KeilC51使用说明
首先启动Keil μVision2程序,首次进入 Keil μVision2的编辑界面如图1所示,否则,会打开 用户前一次处理的工程.
图5新建立的工程
2 源文件的添加 如果用户没有现成的程序,那么就要新建一个程序文件。在这里我们以一个ASM程序为例,介
绍如何新建一个ASM程序和如何将它添加到工程中。单击“文件->新建”菜单,如图6所示,新建一 个源文件。
图6 源程序的建立
此时在项目窗口的右侧打开一个新的文本编辑窗口,如图7所示:
图2 创建新工程对话框
这时会弹出一个对话框,要求选择目标CPU(即用户所用单片机的型号),Keil μVision几乎支持所 有的51内核的单片机,我们以AT89S52芯片为例,如图3所示,在左侧的Data base列表框中点击Atmel前 面的“+”号,展开该层,选中AT89S52,在其右边的Description显示区域.中是对这个单片机的基本描 述,然后再点击”确定”按钮.
图24 单步跟踪运行
B> 单步运行 如果delay程序有错误,可以通过单步跟踪执行来查找错误,但是如果delay程序已正确,每次 进行程序调试都要反复执行这些程序行,会使得调试效率很低,为此,可以在调试时使用F10来 替代F11(也可使用菜单单步跳过或相应的命令按钮 ),在执行到“call delay”时将该行作为一 条语句快速执行完毕.为了更好的进行对比,我们重新进入仿真环境,将反汇编窗口关闭,不断按 F10键,可以看到在源程序窗口中的左边黄色调试箭头 不会进入到延时子程序。 C> 全速运行 点击工具栏上的 按钮或按F5 键启动全速运行,全速执行程序,此时用户板上的P1口所接 LED以流水灯状态显示,此时工具栏如图25所示。
选中“ 硬件实时仿真.单击“
”和“
”这两项是为了进行Monitor51的
”按钮,进入“参数设置”对话框.实际是对串口参数的设置,默认设置就可,如图17-2
软件仿真选 择框
C 语言调 试需选择
Monitor51 实 时 在 线仿真选择框
图17-1
此四个选项必 须选中
图17-2
4 编译、链接 设置好工程后,即可进行编译、链接。图18所示的是有关编译的工具栏按钮和菜单,图中1、
打开的工程设置对话框如图15所示。
单击“
图15 工程设置对话框
”标签进入输出设置页面框,如图16所示,选中“
产生HEX代码,供仿真和烧录使用。同时也可选中“
”和“
信息和浏览信息。
”,使程序编译后 ”,生成Hex 代码文件调试
图16 输出设置页面框
单击“
”标签进入调试器设置页面卡,按图17-1所示进行设置。
图3 为工程选择目标CPU
窗口会出现询问是否添加startup.a51,如图4:请选择”否”.
图4
此时在工程窗口的文件页中,出现了”Target 1”,前面有“+”号,点击“+”号展开,可以看到下 一层的“Source Group1”.这时的工程还是一个空的工程,里面什么文件也没有,需要为这个工程添加 文件.如图5所示.
图12 编辑源程序
3 工程的设置
有三种打开工程设置对话框的方法:
A)点击工具栏上的 按钮,如图13所示。
图13 使用工具栏图标按钮打开工程设置对话框
B)单击工程窗口下的Target1,使其高亮显示,再点击菜单“项目->目标‘target1’选项” 如图 14所示。
图14使用下拉菜单打开工程设置对话框
图22 代码下载完毕
进入调试状态后,调试菜单项中的命令可以使用了,有关编译的工具栏按钮消失了,出 现了一个用于运行和调试的工具栏,Debug菜单上的大部份命令都有相应的快捷按钮,如图23所示, 从左到右依次是复位、运行、暂停、单步跟踪、单步、执行完当前子程序、运行到当前行、下一 状态、打开跟踪、观察跟踪、反汇编窗口、观察窗口、代码作用范围分析、 1#串行窗口、内存窗口、性能分析、工具按钮等命令;
图19 编译和链接顺利完成
我们前面的程序经过验证后没有错误,但是用户在开始编写程序时容易出现错误,现在我们 故意将“mov dptr,#table”改为“mov dptr,table”,我们再次进行编译和链接编译/链接,因源程 序中有语法错误,在信息输出窗口中有错误报告出现: “led.asm(5): error A40: INVALID REGISTER”。双击该行,定位到出错的位置,如图20所示,将错误改正后,再进行编译,程序编译
图21
请检查以下因素: ·仿真器电源是否正确连接 ·仿真器与PC是否正常连接 ·串口是否选择正确,或被其它程序占用,或者已经损坏
如果都不是,请按一下你目标板的复位键,再按“
”。
代码下载完后,如图22所示,用户可以根据需要进行单步、断点、全速运行,观察/修改变 量值、观察/修改存储区数据等操作。
现在界面是反 汇编窗口,单击 此按纽进入源 程序调试窗口
文本输入区
图11 加入了文件的工程
注意:Keil默认加入C源文件,因此,在图10中未显示该文件夹下的汇编 文件,如果要加入
汇编语言源文件,需单击“文件类型”下拉列表框右侧的下三角按钮,弹出下拉列表,选择“Asm
Source file(*.a*;*.src)”,这时才会将文件夹下的“*.asm”文件显示出来;
现在,请输入如下的asm语言源程序:
org 0000h
jmp start
org 0030h
;主程序从这个地址开始存放
start:
mov dptr,#table ;将表格的首地址送DPTR
loop: clr a
movc a,@a+dptr ;读取表格首地址的内容
cjne a,#01h,loop1 ;查看是否是01H.如果是01H,重新开始循环
图1 首次进入Keil μVision2的编辑界面 为了文件TAB键空格跟程序的对齐,打开“视图”下的“选项”,设置KEIL的TAB键的空格,如图:
请将数值设为 8
下面通过简单的编程调试,引导大家学习KeilμVision2软件中Keil C51的基本使用方法和基本调 试技巧. 1 工程的建立
单击“项目->新建项目…”菜单,弹出创建新工程对话框,如图2所示.选择你要保存的路径,输 入工程文件的名字,不需要输入扩展名.比如保存到WorkDir目录里,工程文件的名字为Test1,如图2所 示,然后点击“保存”,保存后的文件扩展名为.uv2,这是KeilμVision2项目文件扩展名。以后我们可 以直接点击此文件来打开已创建的工程。
图23 运行和调试的工具栏
点击工具栏上的 按钮,将反汇编窗口关闭,可看到源程序窗口了。 6 调试程序
A> 单步跟踪运行 使用菜单调试->单步进入或相应的命令 按钮或使用快捷键F11可以单步跟踪执行程序,在 这里我们按下F11键,即可执行该箭头所指程序行,每按一次F11,可以看到源程序窗口的左边黄 色调试箭头 指向下一行,当箭头指向“call delay”行时,再次按下F11,会发现,箭头指向了 延时子程序“delay”的第一行,不断按F11键,即可逐步执行延时子程序,如图24所示,