EmbeddedRelated.com
Forums

I2C with MSP430F2274

Started by pratik chaudhari June 23, 2008
Hello,
I am using the EZ430RF with C2000 for talking with a Microchip
24FC1025 I2C EEPROM. As I understand from the datasheet, the MSP sends an
address byte as soon as you set the flag for transmission of the start
condition. The R/W bit that is the last bit of this byte and it being zero
indicates that MSP is in transmitter mode. However, the EEPROM wants the
last bit of the address byte to zero only when it is being read..i.e. slave
transmission mode. Now this is something like non-compatibility between I2C
buses !
I tried to do it the obvious way..setting the mode for MSP in
accordance to the need of the memory but the program loops after the address
byte statement. I am not getting a ACK after the address byte is received.
The memory is a new PDIP and the MSP works fine for many other thigns
that I have tried.
Can someone please suggest something? Some interface logic or
something that I am missing in the datasheet?

--
Pratik Chaudhari

Beginning Microcontrollers with the MSP430

you have it wrong.. I looked at the data sheet for the memory.. 0 is write 1 is read as it should be. look at page 8 (section 6.0) and page 10 (section 8.0) it clearly shows it as r / !w
read is a logic 1 and write is a logic 0


--- On Mon, 6/23/08, pratik chaudhari wrote:

From: pratik chaudhari
Subject: [msp430] I2C with MSP430F2274
To: m...
Date: Monday, June 23, 2008, 4:09 AM

Hello,
I am using the EZ430RF with C2000 for talking with a Microchip
24FC1025 I2C EEPROM. As I understand from the datasheet, the MSP sends an
address byte as soon as you set the flag for transmission of the start
condition. The R/W bit that is the last bit of this byte and it being zero
indicates that MSP is in transmitter mode. However, the EEPROM wants the
last bit of the address byte to zero only when it is being read..i.e. slave
transmission mode. Now this is something like non-compatibility between I2C
buses !
I tried to do it the obvious way..setting the mode for MSP in
accordance to the need of the memory but the program loops after the address
byte statement. I am not getting a ACK after the address byte is received.
The memory is a new PDIP and the MSP works fine for many other thigns
that I have tried.
Can someone please suggest something? Some interface logic or
something that I am missing in the datasheet?

--
Pratik Chaudhari