PAE-50实验指导书.docVIP

  • 4
  • 0
  • 约10.21万字
  • 约 142页
  • 2017-08-10 发布于河南
  • 举报
PAE-50实验指导书

第一部分 软件实验 实验一 存储器块清零 一、实验目的 1、掌握存储器读写方法 2、了解存储器的块操作方法 二、实验说明 本实验指定某块存储器的起始地址和长度,要求能将其内容清零。通过该实验学生可以了解单片机读写存储器的方法,同时也可以了解单片机编程、调试方法。 三、实验内容及步骤 1、启动计算机,打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着进行仿真器的设置,设置为软件仿真状态(设置方法见附录二说明)。 2、添加“TH01.ASM”源程序,进行编译,直到编译无误。编译无误后,打开Memory window数据窗口,在“Address:”后面输入“X:0x008000”后按回车键,使地址8000H出现在窗口上,观察8000H起始的256个字节单元的内容,若全为0,则点击各单元,用键盘输入不为0的值。执行程序,点击运行按钮,再点击停止按钮,观察存储块数据变化情况,256个字节全部清零。点击复位按钮,可再次运行程序。 3、单步运行方式运行程序,观察CPU窗口各寄存器的变化,可以看到程序执行的过程,加深对实验的了解。 四、流程图及源程序 1.源程序 ORG 0000H BLOCK EQU 8000H ;起始地址 MOV DPTR, #BLOCK MOV R0, #0 ;设置256字节计数值 CLR A LOOP: MOVX @DPTR,A INC DPTR ;指向下一个地址 DJNZ R0,LOOP ;计数值减一 LJMP $ END 2.流程图 五、思考题 如何将存储器块的内容置成某固定值(例全填充为0FFH)? 请用户修改程序,完成此操作。 实验二 二进制BCD码转换 一、实验目的 1、掌握简单的数值转换算法 2、基本了解数值的各种表达方法 二、实验说明 单片机中的数值有各种表达方式,这是单片机的基础。掌握各种数制之间的转换是一种基本功。我们将给定的一字节二进制数,转换成二十进制(BCD)码。将累加器A的值拆为三个BCD码,并存入RESULT开始的三个单元,例程A赋值#123。 三、实验内容及步骤 1、启动计算机,打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着进行仿真器的设置,设置为软件仿真状态。 2、添加“TH02.ASM”源程序,进行编译,直到编译无误。编译无误后,打开Memory window数据窗口,在“Address:”后面输入“D:0x30”后按回车键,使地址30H出现在窗口上,执行程序,点击运行按钮,再点击停止按钮,观察地址30H、31H、32H的数据变化,30H更新为01,31H更新为02,32H更新为03。用键盘输入改变地址30H、31H、32H的值,点击复位按钮后,可再次运行程序,观察其实验效果。修改源程序中给累加器A的赋值,重复实验,观察实验效果。 3、单步运行方式运行程序,观察CPU窗口各寄存器的变化,可以看到程序执行的过程,加深对实验的了解。 四、流程图及源程序 1.源程序 RESULT EQU 30H ORG 0000H LJMP START START: MOV SP,#40H MOV A,#123 CALL BINTOBCD LJMP $ BINTOBCD: MOV B,#100 DIV AB MOV RESULT,A ;除以100得百位数 MOV A,B MOV B,#10 DIV AB MOV RESULT+1,A ;余数除以10得十位数 MOV RESULT+2,B ;余数为个位数 RET END 2.流程图 实验三 二进制ASCII码转换 一、实验目的 1、了解BCD值和ASCII值的区别 2、掌握用查表的方法将BCD值转换成ASCII值 二、实验说明 此实验主要让学生了解数值的BCD码和ASCII码的区别,利用查表方法可以快速地进行数值转换。进一步掌握数值的各种表达方式。现在我们给出一个BCD数,将其转换成ASCII值。如下:将累加器A的值拆为二个ASCII码,并存入Result开始的二个单元,例程A赋值#1AH。 三、实验内容及步骤 1、

文档评论(0)

1亿VIP精品文档

相关文档