Discussion in "8051 Discussion Forum" started by    Abhinav    Jun 13, 2010.
Sun Jun 13 2010, 06:43 PM
#1
Hi friends

i am a little confused while using AT24C04. like how many addresses are available for storing the data bytes?

The slave address is 1010 for all EEPROM'S so can we use 2 EEPROM's with one micro?

How to store values bigger that a byte in EEPROM?

i am using BASCOM for coding.

thank you all.
Sun Jun 13 2010, 07:57 PM
#2
>The slave address is 1010 for all EEPROM'S so can we use 2 EEPROM's with one micro?
those are upper 4 bits of 7-bit address. the lower 3 bits are configurable which means yes you can use more than 1 rather total of 8 such EEPROMs at a time.

>How to store values bigger that a byte in EEPROM?
split them in 2 or 3 depending on how big your data is..
let say if its a 16-bit value then:
EEPROMWrite(Add, data>>8); // write first 8bits
EEPROMWrite(Add+1, data);//write next 8 bits to next address

sorry i am not good at bascom

and for your doubt regarding the subaddress/data address of EEPROM:
before you calculate the size of sub address you need to know how much memory is addressable. lets take an example of 24C02 EEPROM.
24C02 is 2kbit = 2/8 kByte = 1/4Kb = 256bytes

so to accomodate 256 addresses you need 1 byte (00 to 255). so your sub address will only be of 1 byte.

now lets take case with 24C16
24C16 is 16Kbit = 16/8Kbyte = 2Kb = 2048 bytes
so we need atleast 2 bytes to accomodate 2048 addresses. so sub address now will be of 2 bytes in this case.

so you can see how we decide the internal data addresses of EEPROM.
Tags I2C eeprom addressingEEPROM interfacing 8051I2C EEPROM internal addressingi2c eeprom sub addressHow i2c eeprom addressing works
Mon Jun 14 2010, 07:56 AM
#3
Hi ajay

Thanks for a amazing detailed reply.

As per this website http://www.digchip.com/datasheets/parts/datasheet/054/AT24C04-10PC-1_8.php
we can connect maximum of-

AT24C01/02 = 8
AT24C04 = 4
AT24C08 = 2
AT24C16 = 1

because of their reducing hard wired addressing pins.

I cannot understand fully the meaning of below-

"AT24C04, 4K SERIAL EEPROM: Internally organized with 32 pages of 16 bytes each,
the 4K requires a 9-bit data word address for random word addressing"
as written in datasheet.

"The 4K is internally organized with 256 pages of 2-bytes each."
as described on digichip website.

thank you so much.

Mon Jun 14 2010, 02:25 PM
#4
when addressing register there are two path, first on which page that register lies second what is the address of that register on that particular page.

you can assume MSB of address to be as page address and LSB as address of register on that page. so you can understand better what is page address and how it relates to register address.

even in 8051 we have page addressing of ram in which RAM is organized as 256 pages of 256 bytes each. so total accessible ram by 8051 is 256*256 = 65536 bytes. when interfacing external ram the page address is given by P2 and register address is given by P0. relate to it and you will understand.
Thu Jun 17 2010, 07:07 PM
#5
hi ajay,

now i understood almost all things just one to ask that if start sending data bytes from address 0 then i think i have to send address(16) again after 16 bytes else first byte will be overwritten.

am i right ?


thanks
Thu Jun 17 2010, 07:20 PM
#6
write operation will not work if you dont send a stop after page size limit of EEPROM.

You can see every EEPROM datasheet explains Page write operation differently from byte write operation. datasheet will provide you complete details.

Get Social

Information

Powered by e107 Forum System

Conversation

Thu Sep 03 2015, 01:04 PM
faruquehusen
is there any website for buying electronic components such as resister and 8051 IC programmer.? and with a cheap price
Wed Sep 02 2015, 06:10 PM
Nirali
How to interface ldr with 8051???
Wed Sep 02 2015, 06:09 PM
Nirali
I want 0or 1 as output for 8051...Basically,I want ldr to give 0 or 1 to at89c51..
Thu Aug 27 2015, 10:03 AM
Nilesh Thakre
anybody please help me ,i face problem reading a message and identify the string of read message (8051 uc with sim300 gsm modem i have use)
ajay_bhargav
Thu Aug 27 2015, 07:17 AM
@KRIZZA, make the circuit, and load hex file you're done.
Thu Aug 27 2015, 03:39 AM
sk nawal
arm control ckt
Mon Aug 24 2015, 02:11 AM
KRIZZA
@ExperimenterUK BUILD PROJECT LIKE THIS
gkn06
Thu Aug 20 2015, 03:17 AM
hello anybody please
Wed Aug 19 2015, 09:48 AM
Kiruba
I am new to ARM Development..I need help
Tue Aug 18 2015, 09:34 AM
mairja naser
pic30f2010 ic usb copy

Downloads

Comments

syahaikas102
Wed Aug 26 2015, 02:03 PM
iscode
Fri Aug 21 2015, 11:19 PM
JunkmanXL
Thu Aug 20 2015, 11:55 AM
pari@3120
Thu Aug 20 2015, 07:07 AM
gkn06
Wed Aug 19 2015, 09:50 AM
mopatihanuman
Tue Aug 18 2015, 12:47 PM
gebrish
Thu Aug 13 2015, 08:26 AM
casha
Fri Aug 07 2015, 07:42 AM

Online

Guests: 20, Members: 0 ...

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

Members: 37687
Newest member: syahaikas102
Forum Activity
ajay_bhargav Avatar
Posted By ajay_bhargav
Thu Sep 03 2015, 02:08 PM
Ok as per your code you change frequency by changi...
nordic Avatar
Posted By nordic
Mon Aug 31 2015, 03:37 PM
Hello, I need a help for my project. I want to cha...
ajay_bhargav Avatar
Posted By ajay_bhargav
Mon Aug 31 2015, 06:45 AM
[Topic moved to PIC microcontroller discussion for...
ajay_bhargav Avatar
Posted By ajay_bhargav
Mon Aug 31 2015, 06:44 AM
can you provide code for "USARTReadData();" I doub...
ajay_bhargav Avatar
Posted By ajay_bhargav
Mon Aug 31 2015, 06:43 AM
Here are the sample codes: Attach...
pravin_35 Avatar
Posted By pravin_35
Sat Aug 29 2015, 08:25 AM
Hi every one ,I need a help how to compare the Usa...
gkn06 Avatar
Posted By gkn06
Thu Aug 27 2015, 02:52 PM
ok! to start with which IDE or compiler you're pla...
ajay_bhargav Avatar
Posted By ajay_bhargav
Thu Aug 27 2015, 07:05 AM
ok! to start with which IDE or compiler you're pla...
abdul991 Avatar
Posted By abdul991
Sat Aug 22 2015, 06:07 PM
1. Its a pratical task...2. SNMP manager is implem...
gkn06 Avatar
Posted By gkn06
Wed Aug 19 2015, 10:18 AM
My project is to interface several serial interfac...