求单片机数据传送试验源程序

来源:百度知道 编辑:UC知道 时间:2024/06/02 00:44:54
实验内容: 将源数据区单元的(0~F)共16个数传送到目的数据区中.
实验要求: 1. 内部RAM数据存取操作
2. 内部RAM和外部RAM的数据传送
3. 外部RAM的数据传送

我来答
1.假定16个数放在20H为首的地址里,送到目的50H为首的地址里
LOOP:
MOV R0,#20H
MOV R1,#50H
MOV A,@R0
MOV @R1,A
INC R0
INC R1
CJNE R0,#30H,LOOP;当inc r0 前,R0=2FH,加1后R0+1=30H,不跳转

2.假定16个数放在内部RAM20H为首的地址里,送到外部RAM目的0010H为首的地址里
MOV R0,#20H
MOV DPTR,#0010H
MOV A,@R0
MOVX @DPTR,A
INC R0
INC DPTR
CJNE R0,#30H,LOOP;当R0=2FH时,R0+1=30H,不跳转

3.将外部RAM以1000H为首的16个数据放入,外部RAM以2000h为首的地址内
MOV R7,#0FH
MOV DPTR,#1000H;将源地址放入第一个DPTR
INC AUXR1;转换指针,指向第二个DPTR
MOV DPTR,#2000H;将目的地址放入第二个DPTR
INC AUXR1;指向源dptr
LOOP:
MOV A,@DPTR;将源地址数据放入A
INC DPTR;源地址加1
INC AUXR1;转换为目的地址
MOV @DPTR,A;将A内容放入目的地址
INC DPTR;目的地址加1
INC AURX1;指向源地址
DJNZ R7,LOOP;R7减1,循环,减15次