<?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 I2C for LPC1769 in LPCXpresso IDE</title>
    <link>https://community.nxp.com/t5/LPCXpresso-IDE/I2C-for-LPC1769/m-p/562109#M16587</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by fumio yoshizawa on Wed Oct 07 21:28:59 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi everyone,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Please teach me how to use PCA9674 by LPC1769. I could use PCA9674 and PCF8594 by on LPC11U14 device board.This time I changed CPU and EEPROM to LPC1769 and24LC64 .&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I make the board almost same as LPC11U14 board.So Program little bit modify for LPC1769. Then I success to read write EEPROM for 24LC64.But I cann't&amp;nbsp; hundle for PCA9674.&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The program read function about this.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;/* MC24LC64 I2C read transfer */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;volatile uint8_t *R_24LC64(int subads, int len)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;// Write SLA(W), address, SLA(R), and read one byte back.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I2CWriteLength = 2;//Write transfer byte = 2byte&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I2CReadLength = len;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Read transfer byte = len byte&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I2CMasterBuffer[0] = MC24LC64_ADDR;//Slave address&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I2CMasterBuffer[1] = 0x00;//sub address&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;//I2CMasterBuffer[2] = subads;//sub address&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I2CMasterBuffer[2] = MC24LC64_ADDR | RD_BIT;//Read transfer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I2CEngine();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Go I2C Transfer engine&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;return I2CSlaveBuffer;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Above do work well, But ...&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;volatile uint8_t *Keyinp(void)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CWriteLength = 3;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CReadLength = 1;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CMasterBuffer[0] = PCA9674_ADDR;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CMasterBuffer[1] = 0x00;&amp;nbsp; // address&amp;nbsp; p0～p5&amp;nbsp; は　3f&amp;nbsp;&amp;nbsp; p0-p7 は　ff&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CMasterBuffer[2] = 0xff;&amp;nbsp; // address&amp;nbsp; p0～p5&amp;nbsp; は　3f&amp;nbsp;&amp;nbsp; p0-p7 は　ff&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CMasterBuffer[3] = PCA9674_ADDR | RD_BIT;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CEngine();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return I2CSlaveBuffer;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I use key input by PCA9674. Hardware maybe I think OK.I use SDA, SCL pull up 4.7K resister.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Was it wrong for PCA9674?&amp;nbsp; I wander how to set better about frequency.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best Regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 16 Jun 2016 00:53:32 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-16T00:53:32Z</dc:date>
    <item>
      <title>I2C for LPC1769</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/I2C-for-LPC1769/m-p/562109#M16587</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by fumio yoshizawa on Wed Oct 07 21:28:59 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi everyone,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Please teach me how to use PCA9674 by LPC1769. I could use PCA9674 and PCF8594 by on LPC11U14 device board.This time I changed CPU and EEPROM to LPC1769 and24LC64 .&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I make the board almost same as LPC11U14 board.So Program little bit modify for LPC1769. Then I success to read write EEPROM for 24LC64.But I cann't&amp;nbsp; hundle for PCA9674.&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The program read function about this.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;/* MC24LC64 I2C read transfer */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;volatile uint8_t *R_24LC64(int subads, int len)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;// Write SLA(W), address, SLA(R), and read one byte back.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I2CWriteLength = 2;//Write transfer byte = 2byte&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I2CReadLength = len;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Read transfer byte = len byte&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I2CMasterBuffer[0] = MC24LC64_ADDR;//Slave address&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I2CMasterBuffer[1] = 0x00;//sub address&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;//I2CMasterBuffer[2] = subads;//sub address&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I2CMasterBuffer[2] = MC24LC64_ADDR | RD_BIT;//Read transfer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I2CEngine();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Go I2C Transfer engine&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;return I2CSlaveBuffer;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Above do work well, But ...&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;volatile uint8_t *Keyinp(void)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CWriteLength = 3;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CReadLength = 1;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CMasterBuffer[0] = PCA9674_ADDR;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CMasterBuffer[1] = 0x00;&amp;nbsp; // address&amp;nbsp; p0～p5&amp;nbsp; は　3f&amp;nbsp;&amp;nbsp; p0-p7 は　ff&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CMasterBuffer[2] = 0xff;&amp;nbsp; // address&amp;nbsp; p0～p5&amp;nbsp; は　3f&amp;nbsp;&amp;nbsp; p0-p7 は　ff&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CMasterBuffer[3] = PCA9674_ADDR | RD_BIT;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2CEngine();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return I2CSlaveBuffer;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I use key input by PCA9674. Hardware maybe I think OK.I use SDA, SCL pull up 4.7K resister.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Was it wrong for PCA9674?&amp;nbsp; I wander how to set better about frequency.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best Regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2016 00:53:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/I2C-for-LPC1769/m-p/562109#M16587</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-16T00:53:32Z</dc:date>
    </item>
  </channel>
</rss>

