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

📄 x5045.asm

📁 c语言和汇编语言混合编程实例详解.rar
💻 ASM
字号:
; 这是x5045汇编程序, 文件名为X5045.ASM
; 功能:本程序主要是读出X5045特定单元(地址从000H-1FFH)的内容;  
;       或将一字节值写入X5045特定单元(地址从000H-1FFH)中去;   


CS   EQU P1.4
SO   EQU P1.5
SI   EQU P1.2
SCK  EQU P1.3
aa   EQU 80H
bb   EQU 99H
		ORG 0000H
		LJMP STAT
		ORG 0030H
STAT:		MOV SP,#60H
		CLR EA
		MOV P1,#30H
                MOV 51H,#24H
                MOV 52H,#00H
		LCALL WREN       ;设置写使能锁存器
		LCALL WRSR       ;复位写使能锁存器
		LCALL WREN
;        	LCALL RDSR
		LCALL BYTE_WRITE ;字节写
		LCALL BYTE_READ  ;字节读
		LCALL RST_DOG    ;复位看门狗
                MOV 52H,A
		LJMP $
WREN:           CLR SCK
		CLR CS
		MOV A,#06H
		LCALL BYTE_OUT
		CLR SCK
		SETB CS
		RET
WRDI:           CLR SCK
		CLR CS
		MOV A,#04H
		LCALL BYTE_OUT
		CLR SCK
		SETB CS
		RET
WRSR:           CLR SCK
		CLR CS
		MOV A,#01H
		LCALL BYTE_OUT
		MOV A,#30H
		LCALL BYTE_OUT
		CLR SCK
		SETB CS
		LCALL WIP_POLL
		RET
RDSR:           CLR SCK
		CLR CS
		MOV A,#05H
		LCALL BYTE_OUT
		LCALL BYTE_IN
		CLR SCK
		SETB CS
		RET
BYTE_WRITE:     NOP
		MOV DPTR,#080H;待写字节地址
		CLR SCK
		CLR CS
		MOV A,#02H
		MOV B,DPH
		MOV C,B.0
		MOV ACC.3,C
		LCALL BYTE_OUT
		MOV A,DPL
		LCALL BYTE_OUT
		MOV A,#66H    ;待写值
		LCALL BYTE_OUT
		CLR SCK
		SETB CS
		LCALL WIP_POLL
		RET
BYTE_READ:      MOV DPTR,#0110H ;待读字节地址
		CLR SCK
		CLR CS
		MOV A,#03H
		MOV B,DPH
		MOV C,B.0
		MOV ACC.3,C
		LCALL BYTE_OUT
		MOV A,DPL
		LCALL BYTE_OUT
		LCALL BYTE_IN
		CLR SCK
		SETB CS
		RET
RST_DOG:        CLR CS
		SETB CS
		RET
WIP_POLL:       MOV R1,#99H
WIP_POLL1:      LCALL RDSR
		JNB ACC.0,WIP_POLL2
		DJNZ R1,WIP_POLL1
WIP_POLL2:      RET
BYTE_OUT:       MOV R0,#08H
BOUT1:          CLR SCK
		RLC A
		MOV SI,C
		SETB SCK
		DJNZ R0,BOUT1
		CLR SI
	 	RET
BYTE_IN:        MOV R0,#08H
BIN1:           SETB SCK
		CLR SCK
		MOV C,SO
		RLC A
	 	DJNZ R0,BIN1
	  	RET
		END





⌨️ 快捷键说明

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