《单片机应用基础》实验报告

上传人:ss****gk 文档编号:207215050 上传时间:2021-11-03 格式:DOC 页数:10 大小:308.53KB
返回 下载 相关 举报
《单片机应用基础》实验报告_第1页
第1页 / 共10页
《单片机应用基础》实验报告_第2页
第2页 / 共10页
《单片机应用基础》实验报告_第3页
第3页 / 共10页
《单片机应用基础》实验报告_第4页
第4页 / 共10页
《单片机应用基础》实验报告_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《《单片机应用基础》实验报告》由会员分享,可在线阅读,更多相关《《单片机应用基础》实验报告(10页珍藏版)》请在金锄头文库上搜索。

1、华北水利水电大学机械学院单片机应用基础指导老师:专业:机械没计制造及其自动化 学号:姓名机械设计制造系2015年4月实验一汇编语言源程序编辑一、实验目的:了解软件keil (iVision的安装,熟悉在keil (Vision软件环境下进行革片机汇 编源程序的编辑和修改,学会使用利用keil Vision软件监控单片机各个寄存器 以及存储器的数据变化等。二、实验内容:1、软件的安装和使用keil (iVision软件的详细安装过程和使用说明请参考提供资料。2、汇编源程序的编辑编辑和运行卜面源程序,并按要求完成实验报告。实验ABLOCK EQU 6000hMAIN:MOVMOVCLRLOOP:M

2、OVXINCDJNZLJMP$ENDDPTR,#BLOCKR0,#10HADPTR,ADPTRRO,LOOP存储器块清零SI.ASM;起始地址 ;存储块长度;指向下一个地址 ;记数减一实验B二进制到ASCII码转换S2.ASM ;将A拆为二个ASCII码,并存入Result开始的二个单元RESULT EQU 20HORG0000HMAIN: MOVSP,#40HMOVA,#1AHCALLBinToHexLJMP$BinToHex:MOVDPTR, #ASCIITabMOVB,A;暂存ASWAPAANLA, #0FH;取高四位MOVCA, A+DPTR;査ASCII表MOVRESULT,AMOV

3、A,B;恢复AANLA,#0FH;取低四位MOVC A, A+DPTR ;查 ASCII 表MOV RESULT+1,ARETASCIITab: 30313233343536373839414243444546 DB 0123456789ABCDEF1;定义数字对应的 ASCII 表END实验C内存块移动S3.ASMORG0000H/起始地址从000H开始MAIN: MOVR0,#30h/将30h赋予ROMOVRl,#00h/将OOh赋予R1MOVR2,#40h/将40h赋予R2MOVR3,#00h/将OOh赋予R3MOVR7,#0将0赋予R7LOOP: MOVDPH,R0/将(R0)赋予(D

4、PH)MOVDPL,R1/将(DFL)赋予R1MOVX A,DPTR/将DPTR内容给AMOVDPH,R2/将(R2)赋予(DPH)MOVDPL,R3/将(R3)赋予(DPL)MOVX DPTR,A/将A内容写入外部RAM的DPTR中CJNE R1,#OFFH,GO 1/若 R1 不等于 OFFH,转至 GO 1,若R1等于OFFH,程序顺利执行INC RO/R0=R0+lGO1: INC R1/R1=R1+1CJNE R3,#0FFH,GO2 /若 R1 不等于 OFFH,转至 G02,若R1等于OFFH,程序顺利执行INC R2/R2=R2+1GO2: INC R3/R3=R3+1DJNZ

5、R7,LOOP/R7=R7-1,若R7不等于0,执行LOOP,否则顺利执行 LJMP $/程序跳动执行END/程序结束注意:源文件生成之后注意分别保存为si.asm、s2.asm、s3.asm的文件名三、实验报告 1、记录详细实验步骤(1)双击uvisioM安装软件,同意条款,安装指定硬盘,完成后打开uvision4,在file下拉菜卑中找到序号打开破解机进行破解。(2)先在桌而建立一个空文件夹“yis”。(4) 在对话桐,选择放在刚才建立的“yjs”文件夹下,给这个工程取个 名后保存,不需要填后缀。(5) 弹出一个框,在CPU类型下我们找到并选中“Atmel”下的AT89S51。(6) 点开

6、file菜単,点击new,输入程序a,点击保存si. asm。(7) 在project选项中点击 “project for target targetl ” 晶振频率 设为 12MHZ,“output” 中打上 “Create HEX File” 选项,在debug 中选择simulator,确定。(8) 在project workspace对话框右击targetl,选择add file to target 选项,在project中点击rebuild all target files,若无误,在debug 选项中点击start/stop debug session选项,然后进行运行。观察PC

7、值,再击start/stop debug session选项,返回回编辑界面。(9) 在si. hex用记事本打开观察记录。(10) 再次点击 “projectNew uVision Project” 命名为s2. asm,按以上步骤操作,输实验程序B,保存运行,发现错误进行修改。定义 0-F的ASCII码表“DB”类型,进行修改。(11) 再次点击 “projectNew uVision Project” 命名为s3. asm,运行无误后添加注释。1. 列写实验A中源程序的PC值和机器码。PC 值:$ 0x00003$ 0x00005$ 0x00006$ 0x00007$ 0x00008$

8、OxOOOOA机器码:0D0000009060007810E4F0A3D8FC02000A240000000IFF2、找出实验B中的错误语句,并改正。实验B中的错误语句为下划线部分,将实验B程序中下划线改为如下部分:ASCIITab: DB 30H,31H,32H 33H,34H,35H 36H,37H,38H39H,40H,41H42H3、实验C添加注释。见实验程序C后的注释。4、实验总结:通过这次试验,我大致了解了 uVision的基本功用和操作方法,它可以显示 各个寄存器的存储及各个寄存器工作原理,同时,他还可以进行程序调试,主要 解决软件开发编辑过程中的各类问题。实验二汇编语言源程序调

9、试一、实验目的:1、掌握MCS-51指令系统传送指令的汇编语言程序设计和调试方法;2、熟悉用keil (Vision汇编调试软件及布线仿真调试。二、实验内容:1、编写多字节数据的传送程序,把内部RAM的30H-37H单元赋值为10H-17H, 然后传送到外部的RAM的0100H-0107H单元;再将0100H-0107H单元逐一求 反后送到内部RAM的38H3FH单元。2、程序结构采用循环结构程序用R0作内部RAM指针,用DPTR作外部RAM指针,R7作为计数初 值N,本实验N=8。3、用keilVision对程序进行汇编,产生目标代码文件,文件的类别为HEX。4、参考程序ORG START:

10、 AJMPORG MAIN: MOVMOVINCMOVINCMOVINC0000HMAIN0030HRl,#30HR1,#1OHR1R1,#11HR1R1,#12HR1MOV R1,#13HINC R1MOV R1,#14HINC R1MOV R1,#15HINC R1MOV R1,#16HINC R1MOV R1,#17HMOVR0,#30HMOVDPTR,#0100HMOV R7,#08HLOOP:MOVA,R0MOVX DPTR,A INC RO INC DPTR DJNZ R7,LOOP MOV R0,#38H MOV DPTR,#0100H MOV R7,#08HLOOP 1: MO

11、VX A,DPTRCPLA;求反MOVR0,AINC ROINC DPTR DJNZ R7,LOOP1HERE: AJMP HERE ;程序结束 END5、仿真和调试1)用单步执行或断点连续执行,记下执行指令后表格中相应寄存器的数值:表一 LOOP循环执行情况表执行LOOPAR0DPTRR7MOV R7,#08H0x000x300x01000x08第一次循环MOV A,R00x100x300x01000x08第二次循环MOV A,R00x110x310x01010x07第三次循环MOV A,R00x120x320x01020x06第四次循环MOV A,R00x130x330x01030x05第

12、五次循环MOV A,R00x140x340x01040x04第六次循环MOV A,R00x150x350x01050x03第七次循环MOV A,R00x160x360x01060x02第八次循环MOV A,R00x170x370x01070x01第一次循环MOVX DPTR,A0x100x300x01000x08第二次循环MOVX DPTR,AOxll0x310x01010x07第三次循环MOVX DPTR,A0x120x320x01020x06第四次循环MOVX DPTR,A0x130x330x01030x05第五次循环MOVX DPTR,A0x140x340x01040x04第六次循环MO

13、VX DPTR,A0x150x350x01050x03第七次循环MOVX DPTR,A0x160x360x01060x02第八次循环MOVX DPTR,A0x170x370x01070x01表二 L00P1循环执行情况表执行LOOP1AR0DPTRR7MOV R7,#08H0x170x380x01000x08第一次循环MOVX A,DPTR0x100x380x01000x08第二次循环MOVX A,DPTR0x110x390x01010x07第三次循环MOVX A,DPTR0x120x3a0x01020x06第四次循环MOVX A,DPTR0x130x3b0x01030x05第五次循环MOVX A,DPTR0x140x3c0x01040x04第六次循环MOVX A,DPTR0x150x3d0x01050x03第七次循环MOVX A,DPTR0x160x3e0x01060x02第八次循环MOVX A,DPTR0x17Ox3f0x01070x01第一次循环MOV R0,AOxef0x380x01000x08第二次循环MOV R0,AOxcc0x390x01010x07第三

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号