基于proteus单片机实验讲义2007-12-06(6)

2019-08-31 09:07

6.软件提供了对flash及EEprom数据区的直接修改功能,对一些有特殊需要的编程提供了方便。

7.“芯片操作”菜单中,“其它操作”提供了对单片机下载程序时采用何种加密方式。 8.此外,在“芯片操作”菜单中提供了独特的“复位目标板芯片”功能,让调试中一旦程序跑飞时直接就可通过ispdown软件进行复位。

1.4 keil环境下仿真调试实例讲解

实例1:单字节十六进制数转换成双字节ASCII码

第一步:分析函数要求

入口条件:待转换的单字节十六进制数在累加器A中。

出口信息:高四位的ASCII码在A中,低四位的ASCII码在B中。 影响资源:PSW、A、B 堆栈需求: 4字节

第二步:建立工程 双击桌面Keil uVision2图标,或者在开始-程序-Keil uVision2中打开keil 集成开发环境。

图3-29打开Keil IDE

新建一个工程,放在D:/code/hasc目录下面,工程名称hasc。并选择MCU为ATmel89c52。

图3-30 建立工程

图3-31 选择器件

第三步:建立程序文件

新建程序文件并保存,命名为hasc.asm。编辑程序如下: HASC: MOV B,A;暂存待转换的单字节十六进制数 LCALL HAS1;转换低四位 XCH A,B;存放低四位的ASCII码 SWAP A;准备转换高四位

HAS1: ANL A,#0FH;将累加器的低四位转换成ASCII码 ADD A,#90H

DA A ADDC A,#40H DA A RET END

第四步:把程序文件添加至工程文件中

在工程窗口中,鼠标右键点击Source Group1,会出现如下菜单,选择ADD Files,选择文件hasc.asm,点击ADD键,然后关闭文件添加窗口。这时,会看到文件已经添加进工程中。

图3-32添加文件

图3-33添加文件成功

第五步:工程设置

由于该程序是一个纯软件算法,只需要软件模拟调试即可,故不需要生成HEX文件。其他选项可以选择默认即可。

图3-34工程项目设置

第六步:编译连接

选择快捷键,或者F7或者菜单Project-build target,对工程项目进行编译。这时可能会出现编译报错:

图3-35编译出错

双击错误信息,可以直接转到程序的错误行上。阅读所给出的错误信息提示,仔细在错误行附件检查。Keil的程序中的字母、符号、数字必须是在英文输入下完成,注释可以是中文的。在写程序的时候,很多学院开始都会对中英文切换弄混,这样在程序里就会产生很多中文的符号如逗号、冒号、分号。这些中文下的符号在编译的时候都会出现错误。上面显示的错误就是在程序的第4行,分号使用了中文下面的分号。对程序的错误进行修改,这个时候可以得到:

图3-36编译成功

这表示程序已经编译通过。 第七步:程序调试:

点击debug菜单栏的start/stop debug session或直接点击快捷图标进入到调试环境。

图3-37开始调试

在工程窗口中修改寄存器A的值,如修改成1F

图3-38修改寄存器

单步运行程序,一边运行一边观察寄存器的变化,当程序运行至XCH A,B时,观察结果

图3-39程序调试观察寄存器

此时可见寄存器A中的值是46H,这是1F中的“F”的ASCII码,继续单步运行程序,注意观察寄存器及PSW的变化情况。当程序运行结束前,可以观察到结果,注意此时A,B寄存器的值已经是最后结果。

图3-40程序调试观察寄存器

第八步:程序的反复调试

由于程序中有各种情况,有的程序有分支,对于不同的条件程序会进入不同的代码段。如果仅仅是调试一个数据是不可取的,该数据可能具有一定的特殊性。多选几个有代表性的数据进行调试,是判断程序正确的必要手段。此程序调试中,我们可以调试“1FH”,“11H”,“F1”,“FF”这几个数据来检验程序。调试过程完全与第七步相同。 第九步:保存 当程序调试完毕后,关闭调试状态,对整个工程项目保存一下,以备以后使用。


基于proteus单片机实验讲义2007-12-06(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:国库会计数据集中系统业务操作规程(试行)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: