单片机原理及应用精要.docVIP

  • 30
  • 0
  • 约 14页
  • 2016-02-23 发布于湖北
  • 举报
单片机原理及应用精要.doc

电子科技大学 单片微型计算机原理、接口及应用实验报告 姓名:刘雨晨 学号: 2011029190016 指导老师:唐续 实验时间: 2014/4/16 实验一 N个数据求和计算 实验目的 熟悉并掌握单片机仿真开发系统的基本操作。 实验内容 计算N个数据的和,即 其中N=6,XK分别放在片内RAM区50H-55H单元中。求和的结果Y放在片内RAM区03H(高位),04H(低位)单元中。 进行下列数据的求和运算: ⑴Y1=32H+58H+7AH+F5H+44H+09H ⑵Y2=04H+8CH+01H+C3H+55H+78H ⑶Y3=72H+0DH+57H+8AH+04H+C0H 实验步骤 1.进入LCA51仿真软件界面,打开程序编辑窗口,输入本实验的汇编语言源程序; 2.源程序输入完毕后,为其命名 3.对源程序进行编译、排错,直至通过编译; 4.打开“内部数据窗口”,在RAM区50H-55H单元中分别填入计算(1)的六个数据。 5.按F7键,全速运行程序后,在RAM区的相应单元找到运行结果,验证运行结果的正确性,若结果不正确,则应找出原因并纠正,直至程序调试成功; 6.重返第4步,填入新的数据,得到运算结果。 实验程序如下: ORG 0000H LJMP MAIN ORG 100H MAIN: MOV R2,#06H MOV R3,#00H MOV R4,#00H MOV R0,#50H L1: MOV A,R4 ADD A,@R0 MOV R4,A INC R0 CLR A ADDC A,R3 MOV R3,A DJNZ R2,L1 L2: SJMP L2 END 实验数据及结果分析 1.写出三次求和运算的结果; (1)0246H (2)0221H (3)0224H 2.程序中R0、R2、R3、R4分别用作存放什么数据? R0:存放用来进行运算的数据的地址 R2:存放运算的次数 R3:存放运算结果的高两位 R4:存放运算结果的低两位 3.若要使求和的数据N=8,程序需作何修改? 将MAIN的第一条语句MOV R2,#06H改为MOV R2,#08H 实验二:数制转换程序实验 实验目的 ⒈ 掌握不同进制数及编码相互转换的程序设计方法,加深对数码转换的理解。 ⒉ 进一步熟悉调试程序的方法。 实验内容 将累加器A中的8位二进制数转换成3位BCD码格式的十进制数。其中百位数的BCD码放在61H单元中,十位和个位数放在62H单元中。 实验步骤 1.输入编辑本实验的汇编语言源程序; 2.对源程序进行编译并加载运行; 3.观察RAM中存放运算结果的单元,判断结果是否正确; 4.修改程序,改变A中的数,考察程序的正确性。 实验参考程序如下: ORG 0000H LJMP MAIN ORG 100H MAIN: MOV A, #0FFH MOV B, #64H DIV AB MOV 61H, A MOV A, #0AH XCH A, B DIV AB SWAP A ADD A, B MOV 62H, A L1: SJMP L1 END 实验数据及结果分析 仔细阅读理解程序后,画出程序的流程框图。 其程序框图如下: 实验三:运算类程序实验 实验目的 ⒈ 掌握使用运算类指令编程及程序调试的方法。 ⒉ 掌握运算类指令对各状态标志的影响及其测试方法。 ⒊ 学习子程序的使用。 实验内容 多字节十进制加法:编制程序实现两个4位十进制数的相加,其中20H、21H分别放置被加数的高字节和低字节;30H、31H为加数的高字节和低字节 实验步骤 1.输入汇编语言源程序; 2.对源程序进行编译并加载运行; 3.观察RAM中存放运算结果的单元,判断结果是否正确; 4.修改程序,使其能进行五位十进制数的相加运算,并考察程序的正确性。 参考程序如下: ORG 0000H LJMP MAIN ORG 100H MAIN: MOV 81H, #50H MOV R0, #20H MOV @R0, #45H INC R0 MOV @R0, #74H MOV R1, #30H MOV @R1, #67H INC R1 MOV @R1, #28H CLR C MOV R2, #2H L2: ACALL L1 DEC R0 DEC R1 DJNZ R2, L2 CLR A MOV ACC.0, C MOV @R0, A

文档评论(0)

1亿VIP精品文档

相关文档