📄 modules.asm
字号:
NAME Modules
;定义供外部使用的功能模块
PUBLIC _CheckRAM
; 定义 ASM 格式 源程序
bytes SEGMENT DATA
PROC SEGMENT CODE
; Description: 把片外 RAM 空间清零 且 自检
; INPUT: 无参数传递
; OUT : C =0 OK, C =1 ERROR
; Author: 吴允平
; Date: 2003.9.12
PUBLIC ?_CheckRAM?byte ; 参数传递段首地址
RSEG bytes
?_CheckRAM?byte:
DS 0 ; 参数传递的字节数( 无)
RSEG PROC
_CheckRAM:MOV DPTR,#0ffffh
CKRam0: INC DPTR
MOV A,#0AAH
MOVX @DPTR,A
NOP
NOP
MOVX A,@DPTR
MOV B,A
MOV A,#55H
MOVX @DPTR,A
NOP
NOP
MOVX A,@DPTR
ORL A,B
CPL A ; 取反 A=0 才是正确的 RAM
SETB C ; 默认 错误 退出
JNZ CKRam1 ; 不为零 说明 RAM 有错 无需在检 置错误标志位退出
Clr256: MOVX @DPTR,A ; 运行到此 A=0
MOV A,DPH
CJNE A,#07FH,CKRam0
MOV A,DPL
CJNE A,#0FFH,CKRam0 ; 32K RAM地址空间清零
CLR C ; 初始化 完成, 设置 退出
CKRam1: RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -