Discussion in "Project Help" started by    navintiwari08    Apr 12, 2012.
Thu Apr 12 2012, 07:10 PM
#1
hello everyone..
am having problem in writing and reading data from serial eeprom 24c02 interfaced with 8051(P89V51RD2).. please have a look at my program and help me out..
thanks a bunch:)

;-------------------------------------------
; using atmel 24c02 serial eeprom with 8051
;-------------------------------------------
sda equ p2.0
scl equ p2.1

org 00h
sjmp main

org 30h
main:

lcall eeprom_write
lcall eeprom_read
here:
sjmp here


eeprom_start:
setb sda
setb scl
lcall delay
clr sda
lcall delay
clr scl
ret

eeprom_stop:
clr sda
setb scl
lcall delay
setb sda
lcall delay
clr scl
ret

eeprom_write:
lcall eeprom_start
mov a,#0a0h ;device address with write bit
lcall send_data
mov a,#00h ;memory address on device to write to
lcall send_data
mov a,#25h ;data to write on the eeprom
lcall send_data
lcall eeprom_stop
ret

eeprom_read:
lcall eeprom_start
mov a,#0a0h ;device address with write bit(to perform dummy write)
lcall send_data
mov a,#00h ;memory address on device to set the address pointer
lcall send_data
lcall eeprom_start ;repeated start
mov a,#0a1h ;device address with read bit
lcall send_data
lcall get_data ;start reading
lcall eeprom_stop
ret

send_data:
mov r0,#08
loop: clr scl
lcall delay
rlc a
mov sda,c
lcall delay
setb scl
lcall delay
clr scl
djnz r0,loop
setb sda
ack: jb sda,ack ;polling the acknowledge by the device
setb scl
lcall delay
clr scl
ret

get_data:
mov r0,#08
setb sda
nop
loop1:
mov c,sda
setb scl
nop
nop
clr scl
rlc a
djnz r0,loop1
mov p0,a
ret

delay: mov r1,#10
rep: djnz r1,rep
ret

end


[ Edited Thu Apr 12 2012, 07:18 PM ]
Sat Apr 14 2012, 03:01 AM
#2
you have to put delay of atleast 5 to 10 ms after eeprom write to complete the write cycle. I am assuming your I2C is working fine.
Sat Apr 14 2012, 08:28 AM
#3
hello Ajay.. thanx for the reply.. i tried giving it the delay u proposed but it is still not working.. is my program correct? i checked many times but cant spot the error.. pls help. thanks..
Sun Apr 15 2012, 04:43 AM
#4
I dont see any problem the way you are reading from EEPROM but as I said, I am assuming your I2C driver is correct and working fine. You can take i2c reference from tutorial section. and see if everything is alright.
Sun Apr 15 2012, 08:23 AM
#5
thanks a lot Ajay, for the help.. i just solved it.. the 24c02a IC was damaged. i think i burnt it up.. i got a new 24c02 and its working perfectly.. thanks for caring to reply.. have a great day:)
Mon Apr 16 2012, 06:21 PM
#6
thats a good news. keep up the good work. Good Luck!

Get Social

Information

Powered by e107 Forum System

Conversation

Tue Nov 29 2016, 02:49 PM
jaykumar
Dear sir, elevator microprocessor control , the vendor locked the control, pls help me how can we decode the password
Sat Nov 26 2016, 10:24 AM
manikanta B
hello i know about gsm,gps and zigbee but i dont know how to use them while programming. can anyone suggest me how to use them
ExperimenterUK
Sat Nov 19 2016, 07:09 PM
@Protaz.. Really you would be better off asking on one of the many Arduino user sites
Fri Nov 18 2016, 05:39 AM
Protaz
Hi, am new in programing, but I have few skills in electronic. I want to make an automatic timing system for institutions using arduino uno. Any one to assist me how to program the microcontoller?
Tue Nov 15 2016, 04:45 AM
Hemangi patel
hello, i am working on atmega128 board and i want to interface with sd card with using fat32 file system. i am totaly new in this field .so pls anyone can u suggest me some imp links.thanks
Thu Nov 10 2016, 01:40 PM
ajith raj
hi frds i make voice control robot using blutooth module
Wed Oct 26 2016, 08:23 AM
ishalt
is it possible to completly get the robot running from java code
Sun Oct 23 2016, 05:50 PM
mamata thakur
plz send full mini project report for ic 741&ic 555 tester
Wed Oct 19 2016, 03:30 PM
riddhi1296
can you provide an explanation for the inverter 8051 code and how it works
ExperimenterUK
Sat Oct 15 2016, 12:15 AM
@snaya. Create a thread in the 8051 forum for your questions

Downloads

Comments

Jonathan.kei
Mon Nov 21 2016, 04:30 PM
AVRuser1
Sun Nov 20 2016, 06:07 PM
JaguarPaw
Thu Nov 17 2016, 07:44 PM
PeterJohn
Mon Nov 14 2016, 05:54 PM
evigna
Wed Nov 02 2016, 02:03 PM
ozancakiroglu
Thu Oct 27 2016, 01:54 PM
[email protected]
Fri Oct 21 2016, 10:35 PM
Beliwars
Sat Oct 15 2016, 09:40 AM

Online

Guests: 47, Members: 0 ...

most ever online: 182184
(Members: , Guests: 182184) on 06 Aug 2010: 05:37 AM

Members: 37792
Newest member: Jonathan.kei
Forum Activity
Centurio Avatar
Posted By Centurio
Mon Nov 28 2016, 08:46 AM
Hi there,long time ago... i've a short question to...
kirangowle Avatar
Posted By kirangowle
Wed Nov 16 2016, 03:56 PM
Hello Forum members,After a long time i am back to...
Pratik_Suthar Avatar
Posted By Pratik_Suthar
Thu Oct 13 2016, 12:39 PM
@martin the HEX file provided in the project is no...
ajay_bhargav Avatar
Posted By ajay_bhargav
Thu Oct 06 2016, 06:15 AM
Hi Phil, Do you want to add this to existing proje...
ajay_bhargav Avatar
Posted By ajay_bhargav
Thu Oct 06 2016, 06:13 AM
CE should be high when you go for reading mode/wai...
ajay_bhargav Avatar
Posted By ajay_bhargav
Thu Oct 06 2016, 06:03 AM
You can also use ESP8266 with its SDK to write app...
ExperimenterUK Avatar
Posted By ExperimenterUK
Mon Oct 03 2016, 11:15 PM
This is an old thread and the links no longer work...
martinsnc115877 Avatar
Posted By martinsnc115877
Wed Sep 14 2016, 12:51 PM
sir, i did your led scrolling mass display, and it...
ExperimenterUK Avatar
Posted By ExperimenterUK
Fri Sep 09 2016, 11:45 PM
The Hex file for this project is a bit too big for...