Microcontroller › 8051 › 8051 to EEPROM 24LC64 –Stuck at second “Start” while read-ing
- This topic has 1 reply, 2 voices, and was last updated 12 years, 1 month ago by
dagakshay.
-
AuthorPosts
-
April 19, 2011 at 5:33 am #870
Nikolai Urdinov
Participant; SDA =P1.0
; SCL =P1.1;*****************************************************
; READ PROCESS
;*****************************************************
LCALL STARTMOV A,#0A0H
LCALL WRITELCALL DELAY
LCALL DELAYMOV A,#00H ;ADDRESS HI
LCALL WRITEMOV A,#00H ;ADDRESS LO
LCALL WRITELCALL DELAY
LCALL DELAYLCALL START
; MOV P0,#11111010B
MOV A,#10100001B
LCALL WRITE ;program stuck at here, no ack was returned.MOV P0,#11111110B
LCALL READ
LCALL STOP
;*****************************************************
;
;*****************************************************
LOOPS NOP
LJMP LOOPS;*****************************************************
; INITIAL PART
;*****************************************************
START SETB P1.0 ;SCA ;DATA
NOP
SETB P1.1
NOP
NOP
NOP
NOP
NOP
CLR P1.0
NOP
NOP
NOP
NOP
NOP
CLR P1.1
RET;*****************************************************
; WRITE BYTE
;*****************************************************
WRITE MOV R2,#08H
WRBIT CLR P1.1 ;CLK LOW
NOP
NOP
RLC A
MOV P1.0,C
NOP
NOP
SETB P1.1 ;CLK HI
NOP
NOP
DJNZ R2,WRBIT
CLR P1.1 ;ACK CLK LO
NOP
NOP
SETB P1.1 ;ACK CLK HI
NOP
NOP
LOOP JNB P1.0,EXIT
AJMP LOOP
EXIT MOV P0,#00001111B
CLR P1.1 ;RETURN ACK CLK LO
RET
;*****************************************************
; READ BYTE
;*****************************************************
READ MOV R2,#08H
RDBIT CLR P1.1 ;CLK LO
NOP
NOP
SETB P1.1 ;CLK HI
NOP
NOP
MOV C,P1.0
NOP
NOP
RLC A
DJNZ R2,RDBIT
CLR C
CLR P1.1
NOP
NOP
CLR P1.0 ;DATA LO
NOP
NOP
SETB P1.1 ;CLK HI
NOP
NOP
CLR P1.1 ;CLK LO
NOP
NOP
SETB P1.0
MOV P0,A
RET
;*****************************************************
; STOP
;*****************************************************
STOP CLR P1.0
NOP
NOP
NOP
NOP
NOP
SETB P1.1
NOP
NOP
NOP
NOP
NOP
SETB P1.0
NOP
NOP
NOP
NOP
RET
;*****************************************************
; DELAY
;*****************************************************
DELAY MOV R6,#255
DL1 MOV R7,#255
DL2 DJNZ R7,DL2
DJNZ R6,DL1
RET
;*****************************************************
;
;*****************************************************
ENDApril 20, 2011 at 2:05 pm #6010 -
AuthorPosts
- You must be logged in to reply to this topic.