📄 24c02.asm
字号:
;********************************************************************************
;* 标题:北京启东微芯LJD-SY-5100单片机实验系统24c02读写程序 *
;* 文件:TLC549.asm *
;* 日期: 2005-6-1 *
;* 版本: 1.0 *
;* 作者 :启东微芯
;* 网站: http://www.LJD-2008.COM *
;********************************************************************************
;* 描述: *
;* 单步运行观看存储单元数据 变 化 读和写 *
;* 发送 和接受字节子程序要连续执行 *
;********************************************************************************
;* 【声明】 此程序仅用于学习与参考,引用请注明版权和作者信息! *
;********************************************************************************
SDA BIT P1.0
SCL BIT P1.1
R_DATA EQU 30H ;读数据存储缓冲区
ORG 0000H
MOV P1,#60H
WR_EEROM: MOV R6,#06 ;存储计数器
LCALL START
MOV A,#0A0H ;器件地址写
LCALL WBYTE
W_LOOP: MOV A,#00H ;存储单元地址
LCALL WBYTE
MOV DPTR,#TAB ;要写数据地?W_LOOP1: MOV A,#00H
MOVC A,@A+DPTR
LCALL WBYTE
INC DPTR
DJNZ R6,W_LOOP1
LCALL STOP
JMP RD_EEROM
SJMP $
;---------------------------
WBYTE: NOP
MOV R3,#08H
WBY0: CLR SCL
RLC A
MOV SDA,C
SETB SCL
DJNZ R3,WBY0
CLR SCL
NOP
SETB SCL
NOP
JB SDA,$
CLR SCL
NOP
RET
;------------------------------------
;启动信号
;************************************
START: CLR SCL
NOP
SETB SDA
NOP
SETB SCL
NOP
CLR SDA
NOP
CLR SCL
RET
;---------------------------------------
;停止信号
;******************************************
STOP: CLR SCL
NOP
CLR SDA
NOP
SETB SCL
NOP
SETB SDA
NOP
CLR SCL
RET
;*****************************************************************************
;随机读
;*****************************************************************************
RD_EEROM: MOV R6,#06 ;存储计数器
MOV R0, #30H
LCALL START
MOV A,#0A0H ;器件地址写
LCALL WBYTE
MOV A,#00H ;存储单元地址
LCALL WBYTE
NOP
NOP
NOP
LCALL START
NOP
MOV A,#0A1H ;器件地址读
LCALL WBYTE
R_LOOP: nop
NOP
NOP
NOP
R_LOOP1: LCALL READ
MOV R0,#30H
MOV @R0,A
LCALL STOP
SJMP $
READ: NOP
MOV R3,#08H
NOP
H1: CLR SCL
NOP
SETB SCL
NOP
MOV C,SDA
RLC A
CLR SCL
DJNZ R3,H1
CLR SCL
NOP
SETB SDA
NOP
SETB SCL
RET
TAB:DB 10H,11H,22H,33H,44H,55H,66H,77H
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -