单片机实验报告_第1页
单片机实验报告_第2页
单片机实验报告_第3页
单片机实验报告_第4页
单片机实验报告_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1)编译后提:

单片机实验报告汇编语言程序计目标越界AJMP后译通过ORG07FFH改为0800H,系提示:围内无条件转移。

目标越界明AJMP以在2KB

范2.改LJMP编通过,这说明LJMP可以在

64KB

范围内无条件转移。3.将改为SJMP,器码为

80FC,其中F为偏移量,它是一个补码,说明向PC增大√、减小)方向跳80H~FFH说向PC(增大、减小√)方向跳,这说明SJMP以在当前PC-28B~+127B范围内无条件转移。1、X、以码的形式存放在20H、中,写程序实现如下函数:实验程序:MOVJZZREOJBACC.7,NEGMOVSJMPPEND21H,ASJMPPEND21H,#0FFHPEND:SJMP$结果记录:1.将89H存于20H中,运行程序,观察到21H单元中的内容为FF2.将05H存于20H中,运行程序,观察到21H单元中的内容为01;3.将00H存于20H中,运行程序,观察到21H单元中的内容为00;220H~27H中压缩BCD码拆两个单字节码放在以2000H为首址的外部RAM中。实验程序:MOVMOVMOVDPTR,#2000HLOOP:ACALLINC18

单片机实验报告INCDPTRDJNZR7,LOOPSJMP$CZ:MOVAA,#0FHMOVX@DPTR,AINCDPTRMOVA,#0FHMOVX@DPTR,ARET结果记录:20H87H2000H07H2001H08H

21H54H2002H04H2003H05H

22H36H2004H06H2005H03H

23H232006H03H2007H02H

24H19H2008H09H2009H01H

25H43H200AH03H200BH04H

26H77H200CH07H200DH07H

27H69H200EH09H200FH06H1数在计算机中是以补码式存放的,因此断数据的正负,往往采用判断第7位,是0则正数,是1则正数2、实验内容中JZZREO的器码为600DH,其中0DH为移量,当前PC值0004加上这个偏移量等于0011H,这正是即将执行的程序的首地址,即标号为ZREO语句。程序计算器的功能是

指向下一条指令因跳语句是依靠

偏移量

来改变程序计数器的值,从而改变程序的流向。3、分支程序一定要注意分支的语句标号的正确性,每一分支之间必须用指令分隔,并跳转到相应标号。

跳转(如)4、子程序往往用

间址寄存器

传递数据,内部RAM用

,外部RAM用

,绝对不能用直接地址。最后以RET

结尾。、环程序往往用

寄存器

传递数据,用R7控循环

次数,调用作为循环体,用指令

INC

修改

地址指针,指令DJNZ

判断循环结。6、执行ACALL前SP)=07H,行时,(SP)=09H,(08H)=,(09H)=00H,000FH,PC的正是子程序的入地址,而堆栈中这两个单元存放的是断处的值;执行到RET后,(SP)=07H,原08H的弹给(PC)

,原09H的弹给(PC)

,因此,返回断点继续执行主程序。28

单片机实验报告结论:掌握顺序结构程序设计。掌握分支结构程序设计。掌握控制转移类指令。掌握子程序设计。程序

基本指令验执行结果MOVR0,#30HMOVA,@R0MOVA,MOV30HMOV#30H@R0MOV@R0MOVDPTR,#0010HMOVXA,@DPTR

(R0)=30H(A)=07H(A)=30H()=07H()=30H()=08H()=08H()(A)=01HMOVC@A+DPTR()=93HSWAPAXCHDA,PUSHACCPUSH07H

(A)=39H(A)(30H=09H(SP)=08H(SP)=38H(SP)=09H(SP)=15HPOPACCPOP07HMOVA,R7END

(A)=15H()=38H(A)=15H

(SP=08H(=07H内部RAM之数据传送用指令MOV,部RAM与部RAM之数据传送只能使用MOVX指且必须通过累加器A传部RAM与外部之间数据传送只能使用指令

MOVC,且必须通过累加器A送;但只能由外部ROM向部RAM单传。38

ORG0000HMOVCA,@A+PCSJMP$DB31H,40H,51HORG1FFFHMOVORG0000HMOVCA,@A+PCSJMP$DB31H,40H,51HORG1FFFHMOVA,#06HENDPUSH和POP堆栈

单片机实验报告操作指令,若,执行PUSHACC令时,操作顺序是先先将SP内容,后将A内容送给所指向单元中,行POPACC指时,操作顺序是先将所向单元中的内容送给A

,然后将SP内-1

。2.算运算类指令及PSW状的化规律程序

ABCY

AC

OV

PORG0000HSETBC

00H00H00H00H

01

00

00

00MOVA,#49HADDCA,#27H

49H71H

00H00H

10

01

00

10DAA77H00HSUBBA,#0A5HD2H00H

01

10

01

00ADDA,#2DHFFH

00H

0

0

0

0A

00H00H

0

0

0

0ADDCA,#95H95H00HDIVAB95H00HMOVB,#08H95H08H

000

000

011

000MULAB

A8H04H

0

0

1

1END3.设程序:查表求0~9平方6为)ORG0000HMOVA,#06H

反汇编代码反汇编代码ADDA,#02HTAB:DBDB09H,10H,19H,24HTAB:DBDB09H,10H,19H,24HDB31H,40H,51HMOVDPTR,#TABMOVCA,@A+DPTRSJMP$END

1FFF06FE1)用指令A,@A+DPTR查48

单片机实验报告3.拆程序,设(20H)=35H,要求拆为03H05H存在外部RAM0020H0021H单元中。ORG0000H

反汇编代码

执行结果MOVR0,#20HMOV#0020HMOVA,@R0ANLA,#0FHMOVX@DPTR,ADPTRMOVA,@R0SWAPAANLA,#0F0HMOVX@DPTR,ASJMPEND结论:掌万利软运用方法。2.熟基本指令及寻址方式。3.掌PSW志位的变化规律。4.掌拆字程序与查表程序的设。实验三外断式控制1、当中断没发生时8个LED按间隔依次发光。当P3.2(INT1)为负跳变时,8个依次左移循环点亮。实验程序:0000HSJMPSTART0013HAJMP0030HSTART:EAIT1LOOP:58

单片机实验报告SJMPLOOP0060HZD1:EAACCEAA,#0FEHR7,#08HLOOP1:ACALLDELAYACALLDELAYRLAR7,LOOP1CLREAACCEAR6,#00HDELY1:R5,#00H结果记录:2.在P3.2(INT1)发生中断后,个LED依循环点亮;P3.3(INT0)中断,8个LED全部熄灭。实验程序:68

16单片机实验报告16实验四定器/计器中断五、程序1、用时器T0用作方式实P1.0所制的每钟闪烁次实验程序:1.确定工作方式字(方式1TMOD=00000001B=01H2.计算初值:Fosc=6MHz假定定时时间为10ms,中断次就得到1s。X=2

-1000060536TH0=60=3ECTL0=176=078H3.程序设计ORG0000HSJMPSTARTORG000BHAJMPZDT0ORG0030HSTART:MOVTH0,#3ECMOVTL0,#078HMOVTMOD,#01HSETBET0SETBEAMOVR7,#0AHSETBTR0SJMPORG0100HZDT0:MOVTH0,#3ECMOVTL0,#078HDJNZR7,ZDT0_1CPLP1.0MOVR7,#64HZDT0_1:RETIEND实验结果:P1.0所制的LED每钟闪烁1次。78

8单片机实验报告82、当P3.5接5个单脉冲P1.0控制的LED亮;P3.5接收5个单脉冲P1.0控制的LED灭;如此循环。实验程序:1.确定工作方式字(方式2TMOD=01100000B=60H2.计算初值:X=2-5=251TH1=251=0FBHTL1=251=0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论