完整word版单片机软件实验报告.doc

  1. 1、本文档共55页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验一 内存操作 1. 实验目的 掌握数据传送指令; ①掌握各种数据传送指令的寻址方式;② 熟练运用keil 环境对汇编程序进行调试; ③ 掌握数据传送、复制等程序的设计与调试方法。 ④ 预习要求 2.理解数据传送指令和循环指令的使用;① 理解如何对内部寄存器、内部RAM、外部② XRAM(外部数据存储器)的读写; 理解各种寻址方式,尤其是较为抽象的变址寻址及相对寻址的方式;③ 认真预习本实验内容,自行编写程序,填写实验报告。④ 3. 实验设备 计算机 1台; 基础型实验内容:4. 1. 下列程序的功能是给外部XRAM 8000H~80FFH的256个单元的内容赋值,赋值的内容取决于程序中A的赋值。在Keil环境运行该程序,并观察寄存器及内存单元的变化。 ORG 0000H START EQU 8000H; MAIN: MOV DPTR,#START; ;起始地址 MOV R0,#0H; ;设置256字节计数值 MOV A,#1H; Loop: MOVX @DPTR,A; INC DPTR; ;指向下一个地址 DJNZ R0,Loop; ;计数值减1 NOP; SJMP $; END 寄存器A为1H,DPTR递增到8100H,奇偶校验位由于A的内容是1H,所以p也是1. 2. 下列程序将外部XRAM 3000H起始的256个字节存储块移动到外部XRAM 4000H起始的256个字节存储块,在Keil环境运行如下程序,观察寄存器及存储单元的变化。 ORG 0000H MOV DPTR,#3000H MOV A,#01H MOV R5,#0H LOOP: MOVX @DPTR,A INC DPTR DJNZ R5,LOOP MOV R0,#30H MOV R1,#00H MOV R2,#40H MOV R3,#00H MOV R7,#0H LOOP1: MOV DPH,R0 MOV DPL,R1 MOVX A,@DPTR MOV DPH,R2 MOV DPL,R3 MOVX @DPTR,A INC R1 INC R3 DJNZ R7,LOOP1 SJMP $ END 实现了将3000H开始的256个单元的内容复制到以4000H开头的外部RAM存储单元中。 R0的值为30H;R2的值变为40H;寄存器A中赋值为1H,对栈指针sp初始化为07H,其最大值亦为07H,DPTR中最后递增到40ffH,psw中只有奇偶校验位p是1H 3在Keil环境运行如下程序,观察寄存器及内存单元的变化,将变化结果注释于右侧,并说明程序完成什么功能?将程序中MOV A,@R0改成MOVX A,@R0,将MOV @R1,A改成MOVX @R1,A,运行如下程序,观察寄存器及相应地址RAM、XRAM地址单元存储内容的变化。 1. ORG 0000H;程序从000H开始 MOV R0,#30H; MOV R1,#50H MOV R2,#20H L1: MOV A,@R0 MOV @R1,A INC R0 INC R1 DJNZ R2,L1 SJMP $ END R0的值递增到50H,R1的值递增到70H,A中的值是4FH中的值,即FFH(程序运行前自己设定的) 该程序将内部RAM 30H开始的连续20H个存储单元中的内容复制到内部RAM 50H开始的连续20H个存储单元中。其中30H到4FH中的值在程序运行前自定义。 2. MOVX @R1,AMOV @R1,A,将改成MOV A,@R0改成MOVX

文档评论(0)

wangyueyue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档