⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test.asm

📁 菲利普LPC900系列写Flash源码
💻 ASM
字号:
; 测试Iap_lite.inc
;
$NOMOD51
$INCLUDE (REG931.INC)

; 使用内部7.3768MHz晶振,9600波特率
BRGR1_DAT	EQU	02H	
BRGR0_DAT	EQU	0F0H

KEYIN		BIT	P2.7		; 按键定义

	ORG	0000H

MAIN:   MOV	R7,#0
	DJNZ	R7,$
     	MOV	P2M1,#00H
  	MOV	P2M2,#00H
 
	; 初始化串口
        ACALL   UART_INI
        
        ; 字节擦除编程         
       	MOV	DPTR,#402H
	MOV	A,#55H
 	ACALL	FLASH_WRBYTE

        MOV	DPTR,#406H
	MOV	A,#5AH
 	ACALL	FLASH_WRBYTE

	MOV	DPTR,#400H
	MOV	R7,#120
	ACALL	UART_SENDCODE
       	
       	; 写多个字节数据
       	MOV	R0,#80H
	MOV	A,#00H
	MOV	R7,#90
LOAD_DAT:
	MOV	@R0,A
	INC	R0
	INC	A
	DJNZ	R7,LOAD_DAT

	MOV	DPTR,#400H
	MOV	R1,#80H
	MOV	R7,#90
	ACALL   FLASH_WRNBYTE

	MOV	DPTR,#400H
	MOV	R7,#120
	ACALL	UART_SENDCODE

 	; 擦除扇区/页
	MOV	DPTR,#400H
	ACALL	ERASE_PAGE
	;ACALL	ERASE_SECTOR		
		
	; 读出数据并发送
	MOV	DPTR,#400H
	MOV	R7,#120
        ACALL	UART_SENDCODE
        
	JNB	KEYIN,MAIN_END
	; 填充数据
	MOV	A,#5AH
        MOV	DPTR,#400H
	ACALL	FILL_PAGE

	MOV	DPTR,#400H
	MOV	R7,#100
	ACALL	UART_SENDCODE
	
MAIN_END:
	SJMP	$



; 初始化UART
UART_INI:
	MOV	P1M1,#00H
	MOV	P1M2,#00H
	MOV	SCON,#50H
	MOV	BRGCON,#00H
	
	MOV	BRGR1,#BRGR1_DAT
	MOV	BRGR0,#BRGR0_DAT
	MOV	BRGCON,#03H
	RET

; 发送字节数据
UART_SENDBYTE:
	MOV	SBUF,A
	JNB	TI,$
	CLR	TI
	RET

; 发送指定程序空间的数据
UART_SENDCODE:
	CLR	A
	MOVC	A,@A+DPTR

	ACALL	UART_SENDBYTE
	INC	DPTR
 	DJNZ	R7,UART_SENDCODE
	RET

$INCLUDE(IAP_LITE.INC)

	END

⌨️ 快捷键说明

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