<?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>Kinetis Microcontrollers中的主题 Re: Bulk USB Transfers - No Interrupt?</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Bulk-USB-Transfers-No-Interrupt/m-p/176842#M1533</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, You should be getting a Token Done interrupt if a packet was successfully transferred during an out or an in transaction.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You don't have&amp;nbsp;everything correctly configured if your not getting the interrupt.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Some things to look for:&lt;/P&gt;&lt;P&gt;1. Make sure&amp;nbsp;your BDT table&amp;nbsp;is on a 512k boundary in memory. Make sure you have the BDT structure correctly defined.&lt;/P&gt;&lt;P&gt;2.&amp;nbsp;Have you&amp;nbsp;set the correct state of the DATA1/0 toggle flag? It must toggle on&amp;nbsp;transactions sent&amp;nbsp;through that endpoint and must be&amp;nbsp;reset after certain sequences through the control endpoints.&lt;/P&gt;&lt;P&gt;3. Are you&amp;nbsp;receiving/transmitting&amp;nbsp;through the correct odd or&amp;nbsp;even buffer?&lt;/P&gt;&lt;P&gt;4. Make sure you only clear one interrupt flag at a time. Do not use bit structures to modify the interrupt flags. The compiler turns them into a read&amp;nbsp;modify write sequences, this sequence clears more flags than you&amp;nbsp;intend. It can cause missed interrupt conditions.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Are you seeing an ACK during the in or Out transactions with the USB analyzer. If your not seeing an ACK,&amp;nbsp;the registers&amp;nbsp;aren't set up correctly and&amp;nbsp;You won't get the interrupt.&amp;nbsp;You&amp;nbsp;may see an&amp;nbsp;ACK without a&amp;nbsp;token done interrupt&amp;nbsp;if the USB controller thinks the last packet was a retransmit.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I spent almost 6 weeks porting over a&amp;nbsp;USB driver from one of our other products onto the kinetis platform. I spent a&amp;nbsp;great deal&amp;nbsp;of time getting it to generate the Token done&amp;nbsp;interrupts reliably.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 03 Jul 2012 23:10:18 GMT</pubDate>
    <dc:creator>ndavies</dc:creator>
    <dc:date>2012-07-03T23:10:18Z</dc:date>
    <item>
      <title>Bulk USB Transfers - No Interrupt?</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Bulk-USB-Transfers-No-Interrupt/m-p/176841#M1532</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am working with a K60 and using CW 10.2 and PE on a target board with no RTOS. I am trying to get communication over a bulk USB endpoint &amp;nbsp;(Endpoint 1) working with my target board being a device.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Enumeration proceeds with no problem over endpoint 0. I was expecting to receive a token done interrupt for endpoint 1 when an IN or OUT packet is received from the host but I do not get one.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I&amp;nbsp;have&amp;nbsp;modified&amp;nbsp;the&amp;nbsp;PE&amp;nbsp;USB&amp;nbsp;interrupt&amp;nbsp;routine&amp;nbsp;to&amp;nbsp;look&amp;nbsp;for&amp;nbsp;this&amp;nbsp;interrupt.&amp;nbsp;With a USB analyzer I see that the host does send the IN packet to the correct device address and endpoint.&amp;nbsp;Is this not what I should expect? If not, how is an IN or OUT packet supposed to be detected other than with constant polling.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Elizabeth&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 03 Jul 2012 03:50:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Bulk-USB-Transfers-No-Interrupt/m-p/176841#M1532</guid>
      <dc:creator>ERussell</dc:creator>
      <dc:date>2012-07-03T03:50:02Z</dc:date>
    </item>
    <item>
      <title>Re: Bulk USB Transfers - No Interrupt?</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Bulk-USB-Transfers-No-Interrupt/m-p/176842#M1533</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, You should be getting a Token Done interrupt if a packet was successfully transferred during an out or an in transaction.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You don't have&amp;nbsp;everything correctly configured if your not getting the interrupt.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Some things to look for:&lt;/P&gt;&lt;P&gt;1. Make sure&amp;nbsp;your BDT table&amp;nbsp;is on a 512k boundary in memory. Make sure you have the BDT structure correctly defined.&lt;/P&gt;&lt;P&gt;2.&amp;nbsp;Have you&amp;nbsp;set the correct state of the DATA1/0 toggle flag? It must toggle on&amp;nbsp;transactions sent&amp;nbsp;through that endpoint and must be&amp;nbsp;reset after certain sequences through the control endpoints.&lt;/P&gt;&lt;P&gt;3. Are you&amp;nbsp;receiving/transmitting&amp;nbsp;through the correct odd or&amp;nbsp;even buffer?&lt;/P&gt;&lt;P&gt;4. Make sure you only clear one interrupt flag at a time. Do not use bit structures to modify the interrupt flags. The compiler turns them into a read&amp;nbsp;modify write sequences, this sequence clears more flags than you&amp;nbsp;intend. It can cause missed interrupt conditions.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Are you seeing an ACK during the in or Out transactions with the USB analyzer. If your not seeing an ACK,&amp;nbsp;the registers&amp;nbsp;aren't set up correctly and&amp;nbsp;You won't get the interrupt.&amp;nbsp;You&amp;nbsp;may see an&amp;nbsp;ACK without a&amp;nbsp;token done interrupt&amp;nbsp;if the USB controller thinks the last packet was a retransmit.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I spent almost 6 weeks porting over a&amp;nbsp;USB driver from one of our other products onto the kinetis platform. I spent a&amp;nbsp;great deal&amp;nbsp;of time getting it to generate the Token done&amp;nbsp;interrupts reliably.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 03 Jul 2012 23:10:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Bulk-USB-Transfers-No-Interrupt/m-p/176842#M1533</guid>
      <dc:creator>ndavies</dc:creator>
      <dc:date>2012-07-03T23:10:18Z</dc:date>
    </item>
    <item>
      <title>Re: Bulk USB Transfers - No Interrupt?</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Bulk-USB-Transfers-No-Interrupt/m-p/176843#M1534</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have gotten it working. It was a missing ACK during the IN transaction. Thank you so much for your help!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Jul 2012 21:22:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Bulk-USB-Transfers-No-Interrupt/m-p/176843#M1534</guid>
      <dc:creator>ERussell</dc:creator>
      <dc:date>2012-07-05T21:22:19Z</dc:date>
    </item>
    <item>
      <title>Re: Bulk USB Transfers - No Interrupt?</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Bulk-USB-Transfers-No-Interrupt/m-p/176844#M1535</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Pls give me a sample code for Bulk USB Transfers - No RTOS&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tkanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 25 Jul 2012 12:54:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Bulk-USB-Transfers-No-Interrupt/m-p/176844#M1535</guid>
      <dc:creator>PRJOY</dc:creator>
      <dc:date>2012-07-25T12:54:05Z</dc:date>
    </item>
  </channel>
</rss>

