Reply by Frank van Eijkelenburg●June 28, 20082008-06-28
emeb wrote:
> On Jun 26, 6:46 am, Frank van Eijkelenburg
> <fei.technolut...@gmail.com> wrote:
>> On Jun 18, 4:27 pm, Frank van Eijkelenburg
>>
>>
>>
>> <fei.technolut...@gmail.com> wrote:
>>> Hi,
>>> I am still using the LPC2138 ;). Now I have a problem with I2C. When I
>>> try to send some bytes to an EEPROM device, the following happens:
>>> - I2C start condition is made
>>> - interrupt is generated
>>> - I2C address is sent
>>> - EEPROM device gives an ACK
>>> And now nothing happens. If I look at the I2C bus state, the
>>> microcontroller accepted the ACK. However, no new interrupt is given
>>> due to a bus state change. The SI bit is high in the control register.
>>> Should I continuously receive interrupts when the SI bit is set? If
>>> so, maybe at a higher level the interrupt is turned off. Any other
>>> ideas?
>>> TIA,
>>> Frank
>> It is working now. The main problem was in my generic interrupt
>> handling code. After changing the generic interrupt handling,
>> everything worked fine.
>
> Thanks for the follow-up. I assume it was a fairly simple software
> bug, not some lurking inconsistency in the way the LPC2138 works?
>
> Eric
Yes, it was a software bug in the code I use. The LPC2138 was working
correctly.
Frank
Reply by emeb●June 26, 20082008-06-26
On Jun 26, 6:46 am, Frank van Eijkelenburg
<fei.technolut...@gmail.com> wrote:
> On Jun 18, 4:27 pm, Frank van Eijkelenburg
>
>
>
> <fei.technolut...@gmail.com> wrote:
> > Hi,
>
> > I am still using the LPC2138 ;). Now I have a problem with I2C. When I
> > try to send some bytes to an EEPROM device, the following happens:
>
> > - I2C start condition is made
> > - interrupt is generated
> > - I2C address is sent
> > - EEPROM device gives an ACK
>
> > And now nothing happens. If I look at the I2C bus state, the
> > microcontroller accepted the ACK. However, no new interrupt is given
> > due to a bus state change. The SI bit is high in the control register.
>
> > Should I continuously receive interrupts when the SI bit is set? If
> > so, maybe at a higher level the interrupt is turned off. Any other
> > ideas?
>
> > TIA,
> > Frank
>
> It is working now. The main problem was in my generic interrupt
> handling code. After changing the generic interrupt handling,
> everything worked fine.
Thanks for the follow-up. I assume it was a fairly simple software
bug, not some lurking inconsistency in the way the LPC2138 works?
Eric
Reply by Frank van Eijkelenburg●June 26, 20082008-06-26
On Jun 18, 4:27 pm, Frank van Eijkelenburg
<fei.technolut...@gmail.com> wrote:
> Hi,
>
> I am still using the LPC2138 ;). Now I have a problem with I2C. When I
> try to send some bytes to an EEPROM device, the following happens:
>
> - I2C start condition is made
> - interrupt is generated
> - I2C address is sent
> - EEPROM device gives an ACK
>
> And now nothing happens. If I look at the I2C bus state, the
> microcontroller accepted the ACK. However, no new interrupt is given
> due to a bus state change. The SI bit is high in the control register.
>
> Should I continuously receive interrupts when the SI bit is set? If
> so, maybe at a higher level the interrupt is turned off. Any other
> ideas?
>
> TIA,
> Frank
It is working now. The main problem was in my generic interrupt
handling code. After changing the generic interrupt handling,
everything worked fine.
Reply by Frank van Eijkelenburg●June 18, 20082008-06-18
Hi,
I am still using the LPC2138 ;). Now I have a problem with I2C. When I
try to send some bytes to an EEPROM device, the following happens:
- I2C start condition is made
- interrupt is generated
- I2C address is sent
- EEPROM device gives an ACK
And now nothing happens. If I look at the I2C bus state, the
microcontroller accepted the ACK. However, no new interrupt is given
due to a bus state change. The SI bit is high in the control register.
Should I continuously receive interrupts when the SI bit is set? If
so, maybe at a higher level the interrupt is turned off. Any other
ideas?
TIA,
Frank