eewrite.asm

来自「web51的开发库」· 汇编 代码 · 共 50 行

ASM
50
字号
;############################################;# PROCEDURY pro zapis do EEPROM procesoru  #;############################################;	.global	eewritea	.global	eewrite;.nolist.include "param.inc".list;	.text;; input: R2(A) - data;	 dptr  - address;;	WARNING - OFF EEPROM;eewritea:	mov	r2,aeewrite:.if	RD2	ENABLE_EE	movx	a,@dptr		;read eeprom	xrl	a,r2	jz	Lnowr		;no need change, bypas write	mov	a,r2	mov	EETIM, #EEDLY	movx	@dptr,a		;write	mov	R2, IE		; save IE	clr	EA		; disable all interrupts	mov	EECON, #0x50	; Write Sequence	mov	EECON, #0xA0	mov	IE, R2		; restore IELwait:	mov	A, EECON	;wait for end of write	jb	Acc.0, Lwait.else	orl	WMCON,#(EEMEN | EEMWE) ;enable R/W EEPROM	movx	a,@dptr		;read eeprom	xrl	a,r2	jz	Lnowr		;no need change, bypas write	mov	a,r2	movx	@dptr,a		;writeLwait:	movx	a,@dptr		;wait for end of write	xrl	A,r2	jnz	Lwait.endifLnowr:	DISABLE_EE	ret

⌨️ 快捷键说明

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