Line 4: Line 4:
 
=Intro=
 
=Intro=
 
{{Box|type=l_green_light|text=In this tutorial we will interface the EEPROM IC 'AT24C16' with 8051. AT24C16 works on '''I2C''' protocol, hence it is recommended to go through the [[I2C/TWI Basics]] tutorial first. AT24C16 has 16K bits of EEPROM Memory. This can be quite useful when your project needs some kind of permanent storage in real time. Say, you want to read some sensor, keep count, time and want these values to be stored, and retrieve them even if the unit is turned off and turn ON back again! You need an EEPROM then, because 8051 does not have on built in! <br\>
 
{{Box|type=l_green_light|text=In this tutorial we will interface the EEPROM IC 'AT24C16' with 8051. AT24C16 works on '''I2C''' protocol, hence it is recommended to go through the [[I2C/TWI Basics]] tutorial first. AT24C16 has 16K bits of EEPROM Memory. This can be quite useful when your project needs some kind of permanent storage in real time. Say, you want to read some sensor, keep count, time and want these values to be stored, and retrieve them even if the unit is turned off and turn ON back again! You need an EEPROM then, because 8051 does not have on built in! <br\>
=Schematic=
+
=Schematic=
 
The schematic is pretty simple, you could connect the I2C lines to any of the two 8051 port pins, because the 8051 does not have in built hardware to handle I2C communication, we need to 'bit-bang' it.  
 
The schematic is pretty simple, you could connect the I2C lines to any of the two 8051 port pins, because the 8051 does not have in built hardware to handle I2C communication, we need to 'bit-bang' it.  
 
For this tutorial we have made connections as shown in the image below, also notice the character LCD in 4 bit mode.
 
For this tutorial we have made connections as shown in the image below, also notice the character LCD in 4 bit mode.

Revision as of 13:09, 12 August 2014

Video Tutorial

Intro

In this tutorial we will interface the EEPROM IC 'AT24C16' with 8051. AT24C16 works on I2C protocol, hence it is recommended to go through the I2C/TWI Basics tutorial first. AT24C16 has 16K bits of EEPROM Memory. This can be quite useful when your project needs some kind of permanent storage in real time. Say, you want to read some sensor, keep count, time and want these values to be stored, and retrieve them even if the unit is turned off and turn ON back again! You need an EEPROM then, because 8051 does not have on built in! <br\>

Schematic

The schematic is pretty simple, you could connect the I2C lines to any of the two 8051 port pins, because the 8051 does not have in built hardware to handle I2C communication, we need to 'bit-bang' it. For this tutorial we have made connections as shown in the image below, also notice the character LCD in 4 bit mode. So what we do in this tutorial is write some strings to the EEPROM and read them back. Schematic 8051 Interfacing EPROM.JPG

The AT24C16

The AT24C16 is one variant of AT24C series others are AT24C01, AT24C02,AT24C04,AT24C08, the tutorial should hold good for all of these. Table below show memory arrangement for all of these

IC Memory Size Page Numbers
AT24C01 1K Bits(128 Bytes) 0
AT24C02 2K Bits(256 Bytes) 0
AT24C04 4K Bits(512 Bytes) 0 to 1
AT24C08 8K Bits(1024 Bytes) 0 to 3
AT24C16 16K Bits(2048 Bytes) 0 to 7