Fast EEPROM operations

This is the second article about using an external EEPROM I2C chip with an Arduino or any compatible board, like ConnDuino. In a previous article we covered the basics of reading and writing data to the EEPROM. We were able to read and write any data-type, having arbitrary size, but we had to decompose and transfer them to the EEPROM byte after byte. 

In this article, the writing and reading of continuous blocks will be explained. These operations are a little bit more complicated to implement and some better understanding of the EEPROM is required, but for large objects they may be an order of magnitude faster.

Basic operations with EEPROM using Arduino and ConnDuino

A temperature controller should remember the desired temperature level after powering it off and on. An alarm clock, the next time it should ring. Several projects should remember some user preferences. Other projects need more space to store their strings. To these requirements, EEPROM seems a convenient and economical solution. This article makes an introduction to EEPROM modules, how to wire them, understand them and effectively take advantage of them in our programs with an Arduino or any compatible board, like the ConnDuino that is discussed through this site. To be more specific, this article is about EEPROM modules that use the I2C (also called TWI) interface, although a section about the Atmega328 built-in EEPROM is also included. This will be the first in a series of articles, dealing with EEPROM.