<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: I2C EEprom SDA Line Stays Down. in 8-bit Microcontrollers</title>
    <link>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160192#M9618</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The "probing with a multimeter" hints something.&lt;/P&gt;&lt;P&gt;A multimeter usually contains a capacitor between its input, 100nF is common.&lt;/P&gt;&lt;P&gt;Putting a 100nF capacitor between ground and a high (pulled up by 10k) SCL-line will generate a clock pulse.&lt;/P&gt;&lt;P&gt;SDA, similar.&lt;/P&gt;&lt;P&gt;Looks like an ACK/STOP problem?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I suggest you look at the end of the I2C transfer&amp;nbsp;to eeprom (with scope or&amp;nbsp;analyser), and compare what you see to what that eeprom needs according to its datasheet. (which eeprom ?)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 13 Mar 2009 19:10:27 GMT</pubDate>
    <dc:creator>MrBean</dc:creator>
    <dc:date>2009-03-13T19:10:27Z</dc:date>
    <item>
      <title>I2C EEprom SDA Line Stays Down.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160189#M9615</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm using MC9S08QE128, I'm actually using poll and isr iic.&amp;nbsp; I got them to work but after I read from the eeprom, the SDA line won't pull up.&amp;nbsp; Do you guys have any idea?&amp;nbsp; I've included my code just in case.&amp;nbsp; The reading part is in the ISR routine.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The only way to pull it up again is to probe the SCL with the multimeter and then probe the SDA.&amp;nbsp; This seems to bring it up again.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;FWFan.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Mar 2009 04:06:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160189#M9615</guid>
      <dc:creator>FWFan</dc:creator>
      <dc:date>2009-03-10T04:06:52Z</dc:date>
    </item>
    <item>
      <title>Re: I2C EEprom SDA Line Stays Down.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160190#M9616</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello FWFan,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Do you have external pullup resistors on both IIC bus lines?&amp;nbsp; If so, what value?&amp;nbsp; I would expect in the vicinity of 3k3.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Mac&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Mar 2009 11:31:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160190#M9616</guid>
      <dc:creator>bigmac</dc:creator>
      <dc:date>2009-03-10T11:31:55Z</dc:date>
    </item>
    <item>
      <title>Re: I2C EEprom SDA Line Stays Down.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160191#M9617</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Bigmac,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have external pullup resistors for both i2c buses.&amp;nbsp; They are all 10k values.&amp;nbsp; Two of them are from the demo board, two of them I added for the IIC1 bus.&amp;nbsp; I use IIC2 for the eeprom and IIC1 for the LCD.&amp;nbsp; It seems the eeprom does not release SDA after I do a read.&amp;nbsp; I've included a more updated code.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;FWFan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Mar 2009 23:22:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160191#M9617</guid>
      <dc:creator>FWFan</dc:creator>
      <dc:date>2009-03-10T23:22:42Z</dc:date>
    </item>
    <item>
      <title>Re: I2C EEprom SDA Line Stays Down.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160192#M9618</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The "probing with a multimeter" hints something.&lt;/P&gt;&lt;P&gt;A multimeter usually contains a capacitor between its input, 100nF is common.&lt;/P&gt;&lt;P&gt;Putting a 100nF capacitor between ground and a high (pulled up by 10k) SCL-line will generate a clock pulse.&lt;/P&gt;&lt;P&gt;SDA, similar.&lt;/P&gt;&lt;P&gt;Looks like an ACK/STOP problem?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I suggest you look at the end of the I2C transfer&amp;nbsp;to eeprom (with scope or&amp;nbsp;analyser), and compare what you see to what that eeprom needs according to its datasheet. (which eeprom ?)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 13 Mar 2009 19:10:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160192#M9618</guid>
      <dc:creator>MrBean</dc:creator>
      <dc:date>2009-03-13T19:10:27Z</dc:date>
    </item>
    <item>
      <title>Re: I2C EEprom SDA Line Stays Down.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160193#M9619</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi MrBean,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My eeprom is from On Semi, but I think it's the same as the Fairchild NM24C02.&amp;nbsp; It's a 2k eeprom.&amp;nbsp; Looks like I send out a noack and stop the master after the reading is done:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;case 2:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; eepromReadData[count] = IIC2D;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IIC2C1_TXAK = 0; // send out ack after reception&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //IIC2C1_TX = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; delay(10000);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; count++;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (count == (ARRAYSIZE+1)) { // taken into acount of 0xa1&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; count = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IIC2C1_TXAK = 1;// no ack&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IIC2C1_MST = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rcvseq = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dsplyLabel(); // write lcd labels&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Do you think I should lower the pull up resistors to 3.3k as Bigmac may have hinted?&amp;nbsp; I'll also look at the scope as you said.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you very much for your help.&lt;/P&gt;&lt;P&gt;FWFan&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/files/community_files/8BITCOMM/13605_nm24c02_03.pdf" rel="nofollow" target="_self"&gt;nm24c02_03.pdf&lt;/A&gt;&lt;/P&gt;&lt;DIV class="message-edit-history"&gt;&lt;SPAN class="edit-author"&gt;Message Edited by t.dowe on&lt;/SPAN&gt; &lt;SPAN class="local-date"&gt;2009-10-27&lt;/SPAN&gt; &lt;SPAN class="local-time"&gt;11:51 AM&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 13 Mar 2009 23:33:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160193#M9619</guid>
      <dc:creator>FWFan</dc:creator>
      <dc:date>2009-03-13T23:33:21Z</dc:date>
    </item>
    <item>
      <title>Re: I2C EEprom SDA Line Stays Down.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160194#M9620</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You must clear or set the TXAK-bit &lt;EM&gt;before&lt;/EM&gt; the read.&lt;/P&gt;&lt;P&gt;ACK every (sequential) byte read, except the last one.&lt;/P&gt;&lt;PRE&gt;
       case 2:            IIC2C1_TXAK = 0; // send out ack after reception            if (count == ARRAYSIZE-1)  //@last byte; declare ARRAY[size] gives ARRAY[0]..ARRAY[size-1]              IIC2C1_TXAK = 1;// no ack            eepromReadData[count] = IIC2D;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV class="message-edit-history"&gt;&lt;SPAN class="edit-author"&gt;Message Edited by MrBean on&lt;/SPAN&gt; &lt;SPAN class="local-date"&gt;2009-03-16 13:12&lt;/SPAN&gt; &lt;SPAN class="local-time"&gt;01:12 PM&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Oct 2020 09:05:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160194#M9620</guid>
      <dc:creator>MrBean</dc:creator>
      <dc:date>2020-10-29T09:05:35Z</dc:date>
    </item>
    <item>
      <title>Re: I2C EEprom SDA Line Stays Down.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160195#M9621</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you MrBean.&lt;/P&gt;&lt;P&gt;I will try that.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;FWFan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Mar 2009 07:07:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/I2C-EEprom-SDA-Line-Stays-Down/m-p/160195#M9621</guid>
      <dc:creator>FWFan</dc:creator>
      <dc:date>2009-03-19T07:07:54Z</dc:date>
    </item>
  </channel>
</rss>

