at45dbasm.asm

来自「60秒ISD2560语音芯片的汇编源程序」· 汇编 代码 · 共 94 行

ASM
94
字号
$INCLUDE   (t89c51cc01.INC)

AT_SCK		EQU		P0.3
AT_SO		EQU		P0.0
AT_SI		EQU		P0.1
AT_CS		EQU		P0.4
			ORG		0030H
			AJMP	MAIN
			ORG		0100H
MAIN:	
			MOV		P0,#0FFH
			MOV		R0,#00H
			MOV		R1,#00H
			MOV		R3,#0F0H
			LCALL	at_buf1wrt
			LCALL	at_buf1rd
at_rdsta:
			CLR		AT_CS
			MOV		A,#57H
			LCALL	s_dat
			LCALL	r_dat
			SETB	AT_CS
			RET

at_buf1wrt:
			CLR		AT_CS
			CLR		AT_SCK
			MOV		A,#84H
			LCALL	s_dat

			MOV		A,#00H
			LCALL	s_dat

			MOV		A,R1
			LCALL	s_dat

			MOV		A,R0
			LCALL	s_dat

			MOV		A,R3
			LCALL	s_dat

			SETB	AT_CS
			SETB	AT_SCK
			RET

at_buf1rd:
			CLR		AT_CS
			CLR		AT_SCK
			MOV		A,#54H
			LCALL	s_dat

			MOV		A,#00H
			LCALL	s_dat

			MOV		A,R1
			LCALL	s_dat

			MOV		A,R0
			LCALL	s_dat

			MOV		A,#00H
			LCALL	s_dat
				
			LCALL	r_dat
			MOV		P2,A
			SETB	AT_CS
			SETB	AT_SCK
			RET

s_dat:	
			MOV		R7,#08H
s_loop:		
			CLR		AT_SCK
			RLC		A
			MOV		AT_SI,C
			SETB	AT_SCK
			DJNZ	R7,s_loop
			RET

r_dat:	
			MOV		R7,#08H
r_loop:	
			CLR		AT_SCK
			NOP
			SETB	AT_SCK
			MOV		C,AT_SO
			RLC		A
			SETB	AT_SCK
			DJNZ	R7,r_loop
			RET
			END

⌨️ 快捷键说明

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