中南大学微控制器技术实验报告(3)

2018-12-25 23:32

程序清单:

ORG 0000H LJMP MAIN ORG 0100H

MAIN: MOV DPH,R2 MOV DPL,R3 MOVX A,@DPTR MOV DPH,R4 MOV DPL,R5 MOVX @DPTR,A CLR C MOV A,R3 ADD A,#1 MOV R3,A MOV A,R2 JC L1 SJMP L2 L1: INC A

L2: MOV R2,A ;源地址加1 CLR C MOV A,R5 ADD A,#1 MOV R5,A MOV A,R4 JC L3 SJMP L4 L3: INC A

L4: MOV R4,A ;目标地址加1 CLR C

11

MOV A,R7 SUBB A,#1 MOV R7,A MOV A,R6 JC L5 SJMP L6 L5: DEC A L6: MOV R6,A CJNE R6,#0,L7

L7: CJNE R7,#0,MAIN ;判断字节数有无为0,若为0则结束,不为0继续

循环

END

运行结果:如R2=70H,R3=00H,R4=70H,R5=05H,R6=00 H,R7=05H,运行后在7005H以后的单元中会连续显示7000的 内容。 实验三:

编写并调试一个排序子程序,其功能为用冒泡法将内部RAM 几个单元字节无符号的正整数,按从小到大的次序重新排列。 程序框图:

12

开始 将数据依次与后面的比较 若大则交换位置,否则继续比较 比较完 N Y 结束

程序清单: ORG 0000H LJMP MAIN ORG 0100H MAIN: LP1: LP2:

MOV R0, #30H ;数据起始地址

MOV R7, #09H ;排序数据个数: 10个数 MOV A,R7 MOV R6,A MOV A,R0 MOV R1,A INC R1

MOV A,@R0 ;取出一个数据 CLR C

SUBB A,@R1 ;与第二个数进行比较

13

JC LP3 ;R0中的数小于R1中的数则跳转

MOV A,@R0 ;R0中的数大于R1中的数, 交换数据

LP3:

END

XCH A,@R1 MOV @R0,A INC R1 DJNZ R6,LP2 INC R0 DJNZ R7,LP1 SJMP $

运行结果:数据从小到大排列 实验四:

LED交通灯控制(使用8255接口芯片)

要求:使用汇编语言编程,功能为:通过开关实现LED灯工作方式即时控制,完成LED交通灯的开关控制显示功能和LED交通灯自动循环显示功能。 程序框图:

14

开始 初始化8255 读开关状态 控制led灯 结束

硬件电路图:

程序清单:

15


中南大学微控制器技术实验报告(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:dsp实验报告3-数字图像增强 -

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: