Hi,

On Fri, 2 Oct 2009 12:53:16 -0400
Todd Allen <[email protected]> wrote:

> Hi,
> 
> I'm working on an open source wind data logger (see sourceforge
> "osdatalogger"), and I'm having a bit of trouble getting i2c bus
> communications working properly.  It's the simplest configuration
> possible, a single master (a MSP430F2619) talking to a single slave (a
> Ramtron FM6124 event data recorder).  Everything seemed to be working
> fine until I simulated a 100 mph wind on all six channels (60 Hz events
> on each channel).  I'm getting sporadic NACKs.  I'm running the i2c
> clock at 100 kHz.  If I slow the clock down to 25 kHz things seem to
> work fine, as far as communications go, but I can't keep up with the
> events (the FM6124 fills up in a second).
> 
Just from the top of my hat: if I am correct you'll have to keep polling
until you receive an ACK when you are writing data to the device before
you can write more data. It is a while ago since I last used an i2c
device and I got the same issue. OTOH the Ramtron devices claim to be
faster than ordinary 2416s, they are NVRAM's after all. You could try to
setup the simulation in a way to verify the written data afterwards.

BTW: just read about a typhoon somewhere in the pacific last night where
wind speeds are up to 130 mph...

> The MSP430X2xx user's guide section on i2c is at best confusing.
> According to the diagram for master transmitter mode, you can't get the
> ACK from the slave address until you've stuffed a data byte into the
> transmit buffer.
> >From there on, it's not clear to me whether I'm getting the ACK/NACK
> >for the
> byte I just wrote or the previous byte.
> 

I2C is confusing compare to SPI.

> I can't seem to find any examples of working code out there that's not a
> bit-banging approach, which I'm trying to resist because I want the i2c
> clock to go at its maximum of 100 kHz and I don't want to muck around
> with a 'scope and NOPs and all that.  Does anyone have a working
> example using the interrupt flags provided by the i2c module, either
> using interrupts or polling the flags?
> 
> Thanks,
> Todd
> **
> 

Regards, 
Hans

Reply via email to