<?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>i.MX RT Crossover MCUs中的主题 Re:  LP I2C Master Does Not Complete Bus Transaction</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LP-I2C-Master-Does-Not-Complete-Bus-Transaction/m-p/876837#M2354</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jorge,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks you for your reply.&amp;nbsp; Here is a snippet from the code where I set up the I2C receive.&amp;nbsp; I currently have it commented currently as, as I posted, it does not work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lpi2c_master_transfer_t transfer;&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; memset(&amp;amp;transfer, 0, sizeof(transfer));&lt;BR /&gt;//&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; transfer.flags = kLPI2C_TransferDefaultFlag;&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; transfer.slaveAddress = m_address;&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; transfer.direction = kLPI2C_Read;&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; transfer.subaddress = 1;&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; transfer.subaddressSize = 1;&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; transfer.data = in_data;&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; transfer.dataSize = count;&lt;BR /&gt;//&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; status_t status = LPI2C_MasterTransferNonBlocking(m_base, &amp;amp;m_handle, &amp;amp;transfer);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have also tried: transfer.flags = kLPI2C_TransferDefaultFlag | kLPI2C_TransferRepeatedStartFlag;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;m_base has been set to LPI2C1_BASE&lt;/P&gt;&lt;P&gt;m_handle is set by calling LPI2C_MasterTransferCreateHandle(m_base, &amp;amp;m_handle, lpi2c_master_callback, this);&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 07 Feb 2019 15:29:28 GMT</pubDate>
    <dc:creator>dpolonsky</dc:creator>
    <dc:date>2019-02-07T15:29:28Z</dc:date>
    <item>
      <title>LP I2C Master Does Not Complete Bus Transaction</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LP-I2C-Master-Does-Not-Complete-Bus-Transaction/m-p/876835#M2352</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="margin-bottom: .0001pt;"&gt;I am using the LPI2C_MasterTransferNonBlocking API to control the I2C bus on a i.MX RT 1052 EVKB.&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;The API creates a complete bus transaction the first time (either read or write) and fails in subsequent calls. See the logic analyzer trace of a failed transaction, attached&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;The callback that is registered via the LPI2C_MasterTransferCreateHandle API is called on the first use of&amp;nbsp; LPI2C_MasterTransferNonBlocking but not on the second, presumably because the bus transaction never completes.&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;If I substitute LPI2C_MasterTransferBlocking for LPI2C_MasterTransferNonBlocking in my code all works as expected.&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;I would like to use LPI2C_MasterTransferNonBlocking to implement an receive with a timeout.&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;Any help would be appreciated.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 31 Jan 2019 16:12:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LP-I2C-Master-Does-Not-Complete-Bus-Transaction/m-p/876835#M2352</guid>
      <dc:creator>dpolonsky</dc:creator>
      <dc:date>2019-01-31T16:12:41Z</dc:date>
    </item>
    <item>
      <title>Re:  LP I2C Master Does Not Complete Bus Transaction</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LP-I2C-Master-Does-Not-Complete-Bus-Transaction/m-p/876836#M2353</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi David Polonsky&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you share the code that you are using? I can see in the scope that you correctly set a start, read with address and then there isn't any response in the Bus, also no STOP, so it could be that the slave is not responding to the master.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have you checked the code in the example code in of lpi2c_interrupt_b2b_transfer_master? there is implemented a communication where it writes and read from the slave.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Jorge Alcala&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Feb 2019 01:50:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LP-I2C-Master-Does-Not-Complete-Bus-Transaction/m-p/876836#M2353</guid>
      <dc:creator>jorge_a_vazquez</dc:creator>
      <dc:date>2019-02-07T01:50:05Z</dc:date>
    </item>
    <item>
      <title>Re:  LP I2C Master Does Not Complete Bus Transaction</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LP-I2C-Master-Does-Not-Complete-Bus-Transaction/m-p/876837#M2354</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jorge,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks you for your reply.&amp;nbsp; Here is a snippet from the code where I set up the I2C receive.&amp;nbsp; I currently have it commented currently as, as I posted, it does not work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lpi2c_master_transfer_t transfer;&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; memset(&amp;amp;transfer, 0, sizeof(transfer));&lt;BR /&gt;//&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; transfer.flags = kLPI2C_TransferDefaultFlag;&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; transfer.slaveAddress = m_address;&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; transfer.direction = kLPI2C_Read;&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; transfer.subaddress = 1;&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; transfer.subaddressSize = 1;&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; transfer.data = in_data;&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; transfer.dataSize = count;&lt;BR /&gt;//&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; status_t status = LPI2C_MasterTransferNonBlocking(m_base, &amp;amp;m_handle, &amp;amp;transfer);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have also tried: transfer.flags = kLPI2C_TransferDefaultFlag | kLPI2C_TransferRepeatedStartFlag;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;m_base has been set to LPI2C1_BASE&lt;/P&gt;&lt;P&gt;m_handle is set by calling LPI2C_MasterTransferCreateHandle(m_base, &amp;amp;m_handle, lpi2c_master_callback, this);&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Feb 2019 15:29:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LP-I2C-Master-Does-Not-Complete-Bus-Transaction/m-p/876837#M2354</guid>
      <dc:creator>dpolonsky</dc:creator>
      <dc:date>2019-02-07T15:29:28Z</dc:date>
    </item>
    <item>
      <title>Re:  LP I2C Master Does Not Complete Bus Transaction</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LP-I2C-Master-Does-Not-Complete-Bus-Transaction/m-p/876838#M2355</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sorry for the delays. Regarding your configurations, did you "count" in datasize is considering the subaddress? is it also sent by the slave? please consider that your transfer will be&lt;/P&gt;&lt;P&gt;start + slaveaddress(w) + subAddress + repeated start + slaveaddress(r) + Rx data buffer + stop&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So the slave has to consider the subaddress in the setup.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Jorge Alcala&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Feb 2019 19:16:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LP-I2C-Master-Does-Not-Complete-Bus-Transaction/m-p/876838#M2355</guid>
      <dc:creator>jorge_a_vazquez</dc:creator>
      <dc:date>2019-02-26T19:16:05Z</dc:date>
    </item>
  </channel>
</rss>

