WISP EEPROM Interface
Introduction
In almost all cases, the WISP_4.1 boards (blue WISPs) have 1.8v regulators and 2.0v supervisors. Thus, the user can not reliably save data to the MSP430’s internal 2.2v FLASH. (Lower operating voltage gives the WISP better range).
We included 8k of 1.8v EEPROM (24AA08) on the I2C bus, but it requires some code to talk to the EEPROM chip from the MSP430.
Source Code
There is now code in the community repository for interfacing with the EEPROM as well. This code was adapted from Markus Moessner's by Shane Clark and includes the use of LPM3 to sleep while waiting for EEPROM operations to finish — rather than busy waiting as the original code does.
Here are some easy-to-use routines for reading/writing from/to the 24AA08 EEPROM, based on Markus Moessner's work (below). Tested and working on the WISP 4.1 DL. Contact - anparks with questions/comments.
Markus Moessner's original source code for interfacing the MSP430 to the 24AA08 EEPROM, along with a guide to using it.
Other Resources
EEPROM data sheet:
http://ww1.microchip.com/downloads/en/DeviceDoc/21710J.pdf
TI application note for interfacing EEPROM to the MSP430 using the I2C Module:
http://focus.ti.com/mcu/docs/mcusupporttechdocsc.tsp?sectionId=96&tabId=1502&abstractName=slaa208
The TI application notes and code example are for a similar EEPROM (24xx65 type). However, I’m told that there is a compiler issues with newer versions of IAR work bench. At least this is a starting point.