cat1161.asm

来自「汇编语言写的」· 汇编 代码 · 共 48 行

ASM
48
字号
;—————————————CSI1161专用子程序—————————————————
;从1161中读出一字节   ACC=读取地址,读出的数据在ACC中
Read1Byte:	PUSH	AR2
		MOV	R2, A
		CALL	MemStart			;开始
		MOV	A, #0A0H			;命令及高地址字节(写命令)
		CALL	Write8Bit
		MOV	A, R2				;低字节地址
		CALL	Write8Bit
		CALL	MemStart			;又一个开始信号,时序要求如此
		MOV	A, #0A1H			;这是真正的读命令
		CALL	Write8Bit
		CALL	Read8BitEnd			;读出数据字节
		MOV	R2, A
		CALL	MemStop				;结束
		POP	AR2
		RET
;-------------------------------------从1161中读出两字节-----------------------
;ACC=读取地址,读出的数据在R3/R2中
Read2Byte:	MOV	R2, A
		CALL	MemStart			;开始
		MOV	A, #0A0H			;命令及高地址字节(写命令)
		CALL	Write8Bit
		MOV	A, R2				;低字节地址
		CALL	Write8Bit
		CALL	MemStart			;又一个开始信号,时序要求如此
		MOV	A, #0A1H			;这是真正的读命令
		CALL	Write8Bit
		CALL	Read8Bit			;读出第一个字节
		MOV	R2, A
		CALL	Read8BitEnd			;第二个字节
		MOV	R3, A
		CALL	MemStop				;结束
		RET
;-------------------------------------CSI1161多字节连续写入--------------------------
;ACC=写入起始地址,R0=RAM中的起始地址,R2=字节串的长度
WriteBytes:	PUSH	ACC
		CALL	MemStart			;开始
		MOV	A, #0A0H			;命令及高地址字节
		CALL	Write8Bit
		POP	ACC				;低地址字节
		CALL	Write8Bit
WRR:		MOV	A, @R0
		CALL	Write8Bit
		INC	R0
		DJNZ	R2, WRR
		CALL	MemStop				;结束
		RET

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?