<?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>LPC MicrocontrollersのトピックHAL_USBDeInit</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/HAL-USBDeInit/m-p/574995#M19146</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by brunoalmeida on Mon Jul 28 17:00:04 MST 2014&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;I found this code on LPCUSBLib/Drivers/USB/Core/HAL/LPC18XX/HAL_LPC18xx.c&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void HAL_USBDeInit(uint8_t corenum, uint8_t mode)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;HAL_DisableUSBInterrupt(corenum);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;if (mode == USB_MODE_Device) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#if defined(USB_CAN_BE_HOST)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;USBSTS_H = 0xFFFFFFFF;/* clear all current interrupts */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;PORTSC1_H &amp;amp;= ~(1 &amp;lt;&amp;lt; 12);/* clear port power */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;USBMODE_H =&amp;nbsp;&amp;nbsp; (1 &amp;lt;&amp;lt; 0);/* set USB mode reserve */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#endif&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;else if (mode == USB_MODE_Host) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#if defined(USB_CAN_BE_DEVICE)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;/* Clear all pending interrupts */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;USBSTS_D&amp;nbsp;&amp;nbsp; = 0xFFFFFFFF;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;ENDPTNAK&amp;nbsp;&amp;nbsp; = 0xFFFFFFFF;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;ENDPTNAKEN = 0;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;ENDPTSETUPSTAT = USB_REG(corenum)-&amp;gt;ENDPTSETUPSTAT;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;ENDPTCOMPLETE&amp;nbsp; = USB_REG(corenum)-&amp;gt;ENDPTCOMPLETE;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;while (USB_REG(corenum)-&amp;gt;ENDPTPRIME) ;/* Wait until all bits are 0 */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;ENDPTFLUSH = 0xFFFFFFFF;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;while (USB_REG(corenum)-&amp;gt;ENDPTFLUSH) ;/* Wait until all bits are 0 */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#endif&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; (...)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Is this right ? To de-initialize a host i will modify device configuration and to deinit a device i will modify a host configuration ?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 20:15:35 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T20:15:35Z</dc:date>
    <item>
      <title>HAL_USBDeInit</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/HAL-USBDeInit/m-p/574995#M19146</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by brunoalmeida on Mon Jul 28 17:00:04 MST 2014&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;I found this code on LPCUSBLib/Drivers/USB/Core/HAL/LPC18XX/HAL_LPC18xx.c&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void HAL_USBDeInit(uint8_t corenum, uint8_t mode)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;HAL_DisableUSBInterrupt(corenum);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;if (mode == USB_MODE_Device) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#if defined(USB_CAN_BE_HOST)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;USBSTS_H = 0xFFFFFFFF;/* clear all current interrupts */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;PORTSC1_H &amp;amp;= ~(1 &amp;lt;&amp;lt; 12);/* clear port power */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;USBMODE_H =&amp;nbsp;&amp;nbsp; (1 &amp;lt;&amp;lt; 0);/* set USB mode reserve */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#endif&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;else if (mode == USB_MODE_Host) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#if defined(USB_CAN_BE_DEVICE)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;/* Clear all pending interrupts */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;USBSTS_D&amp;nbsp;&amp;nbsp; = 0xFFFFFFFF;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;ENDPTNAK&amp;nbsp;&amp;nbsp; = 0xFFFFFFFF;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;ENDPTNAKEN = 0;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;ENDPTSETUPSTAT = USB_REG(corenum)-&amp;gt;ENDPTSETUPSTAT;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;ENDPTCOMPLETE&amp;nbsp; = USB_REG(corenum)-&amp;gt;ENDPTCOMPLETE;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;while (USB_REG(corenum)-&amp;gt;ENDPTPRIME) ;/* Wait until all bits are 0 */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USB_REG(corenum)-&amp;gt;ENDPTFLUSH = 0xFFFFFFFF;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;while (USB_REG(corenum)-&amp;gt;ENDPTFLUSH) ;/* Wait until all bits are 0 */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#endif&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; (...)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Is this right ? To de-initialize a host i will modify device configuration and to deinit a device i will modify a host configuration ?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 20:15:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/HAL-USBDeInit/m-p/574995#M19146</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T20:15:35Z</dc:date>
    </item>
  </channel>
</rss>

