ram_test.asm
来自「这是一个测试64K RAM 的小程序」· 汇编 代码 · 共 45 行
ASM
45 行
;------------------------------------------------------------------------------------------------------------
; 64K 外部RAM检查程序 (RAM地址为: 0000H--0FFFFH)
; 检查如果出错,看DPTR的值,<8000H是第一片62256(U8)出错;>=8000H是第二片62256(U9)出错。
;------------------------------------------------------------------------------------------------------------
ORG 0000H
LJMP RAM_TEST
ORG 0100H
RAM_TEST:
MOV DPTR,#0000H
MOV A,#55H
NEXTUNIT:
MOVX @DPTR,A ;向当前单元中存入 55H。
MOVX A,@DPTR ;把存入的数(55H)读出来。
MOV R1,A ;把读出的数据存到R1中,以次可以知道读出的什么值。
CJNE A,#55H,ERROR
NOP
MOV A,#0AAH
MOVX @DPTR,A ;向当前单元中存入 0AAH。
MOVX A,@DPTR ;把存入的数(0AAH)读出来。
MOV R1,A ;把读出的数据存到R1中,以次可以知道读出的什么值。
CJNE A,#0AAH,ERROR ;
MOV A,DPL ;判断DPTR的值是否等于 0FFFFH。
CJNE A,#0FFH,NOEND
MOV A,DPH
CJNE A,#0FFH,NOEND
SJMP $ ;检查完了,都正确了,死到这里。
NOEND:
INC DPTR
MOV A,#55H
LJMP NEXTUNIT
ERROR:
NOP
SJMP $ ;出错了,死到这里。
END
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?