<?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>LPCXpresso IDE中的主题 lpc1342 USB examples</title>
    <link>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560584#M15922</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by bhallett on Tue Jan 26 10:34:35 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello all,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Does anyone know of any example code for USB support which uses the LPC1342 microcotroller? If not, does anyone know if in order to support USB on this microcontroller that an OS is required?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;B&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 16 Jun 2016 00:52:49 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-16T00:52:49Z</dc:date>
    <item>
      <title>lpc1342 USB examples</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560584#M15922</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by bhallett on Tue Jan 26 10:34:35 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello all,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Does anyone know of any example code for USB support which uses the LPC1342 microcotroller? If not, does anyone know if in order to support USB on this microcontroller that an OS is required?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;B&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2016 00:52:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560584#M15922</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-16T00:52:49Z</dc:date>
    </item>
    <item>
      <title>Re: lpc1342 USB examples</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560585#M15923</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by NXP_USA on Tue Jan 26 10:57:48 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: bhallett&lt;/STRONG&gt;&lt;BR /&gt;Hello all,&lt;BR /&gt;&lt;BR /&gt;Does anyone know of any example code for USB support which uses the LPC1342 microcotroller? If not, does anyone know if in order to support USB on this microcontroller that an OS is required?&lt;BR /&gt;&lt;BR /&gt;Regards&lt;BR /&gt;&lt;BR /&gt;B&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The complete NXP example package available on the &lt;/SPAN&gt;&lt;A href="http://"&gt;www.nxp.com/lpcxpresso-support&lt;/A&gt;&lt;SPAN&gt; page has five USB example projects in it. Two of them use the on-chip ROM driver and three are examples ported to LPCXpresso from one of our 3rd party tool vendors. These are all set up to run on the LPC1343, but they should run similarly on the LPC1342. The Mass Storage Class examples will require modification because the LPC1342 has less memory and cannot hold as many MSC device sectors.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2016 00:52:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560585#M15923</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-16T00:52:50Z</dc:date>
    </item>
    <item>
      <title>Re: lpc1342 USB examples</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560586#M15924</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by bhallett on Thu Jan 28 07:02:37 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for the info NXP_USA, thats been a great help. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Do you know of any examples that do not use the CSMIS package?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Barry&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2016 00:52:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560586#M15924</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-16T00:52:50Z</dc:date>
    </item>
    <item>
      <title>Re: lpc1342 USB examples</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560587#M15925</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by elektrknight on Thu Jan 28 13:51:19 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi Barry,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Try&amp;nbsp; LPC13xxSampleSoftware - &lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="http://"&gt;http://ics.nxp.com/support/documents/microcontrollers/zip/code.bundle.lpc13xx.keil.zip&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The USB examples in LPC13xxSampleSoftware use some CMSIS files but it &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;just startup_LPC13xx.s and system_LPC13xx.c and a bunch of macros.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I think it would simple to decouple it completely from CMSIS.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;In fact this is more or less what I did in LPC13xxSampleSoftware &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;GCC port available here:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://"&gt;http://code.google.com/p/32bitmicro/wiki/LPC13xxSampleSoftware&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;BTW LPC1342 is supported out of the box in GCC port, all you need to&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;do is to set variable in the Makefile:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;TARGET_MCU=lpc1342&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Cheers,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Pawel&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2016 00:52:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560587#M15925</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-16T00:52:51Z</dc:date>
    </item>
    <item>
      <title>Re: lpc1342 USB examples</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560588#M15926</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by Rob65 on Thu Jan 28 14:09:58 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Ok, I've downloaded the examples and tested the HID example.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I wanted to create my own special keyboard device and changed the subclass and the protocol in the usbdesc.c (HID_SUBCLASS_BOOT, HID_PROTOCOL_KEYBOARD) and also changed the InReport to contain 4 bytes but Windows does not recognise my device as a keyboard.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I've use the Snoopy USB monitoring program and I do see that the subclass and protocol are sent as expected but that's all - the device still shows as a standard HID device and not a keyboard device in Windows.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I must ne missing from reading the USB spec (I was reading the Device Class Definition for Human Interface Devices (HID) v 1.11)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any help is welcome.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Rob&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2016 00:52:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560588#M15926</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-16T00:52:51Z</dc:date>
    </item>
    <item>
      <title>Re: lpc1342 USB examples</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560589#M15927</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by elektrknight on Thu Jan 28 15:33:32 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; I would first check what the USBView is showing, look for:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;bcdUSB&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;bDeviceClass&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;bDeviceSubClass&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;bDeviceProtocol&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;bMaxPacketSize&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It will tell you what Windows think about your device.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Pawel&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;USBView link&lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="http://"&gt;http://msdn.microsoft.com/en-us/library/cc748123.aspx&lt;/A&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2016 00:52:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560589#M15927</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-16T00:52:52Z</dc:date>
    </item>
    <item>
      <title>Re: lpc1342 USB examples</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560590#M15928</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by Rob65 on Fri Jan 29 13:02:44 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Pawel,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;usbview is showing (what I think) to be correct:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;bcdUSB:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x0200
bDeviceClass:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x03
bDeviceSubClass:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x01
bDeviceProtocol:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x01
bMaxPacketSize0:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x40 (64)
idVendor:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x1FC9
idProduct:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x0003
bcdDevice:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x0100
iManufacturer:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x01
0x0409: "NXP SEMICOND "
iProduct:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x02
0x0409: "LPC13xx USB HID "
iSerialNumber:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x03
0x0409: "DEMO00000000"
bNumConfigurations:&amp;nbsp;&amp;nbsp; 0x01
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;SPAN&gt;I also tried to make it a regular (i.e. non Boot Device with subclass = 0) bur that did not make a difference. Also spent some more time in reading the USB spec, I did not change the Report descriptor so that could also be a problem.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The device manager of Vista reports it with the compatibility Ids set to: USB/Class_03&amp;amp;SubClass_00&amp;amp;Prot_00. I still have to check if that is the same when the Report descriptor is changed but I decided to spend more time on reading the USB specs first.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Rob&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2016 00:52:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560590#M15928</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-16T00:52:52Z</dc:date>
    </item>
    <item>
      <title>Re: lpc1342 USB examples</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560591#M15929</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by Rob65 on Sun Jan 31 10:50:56 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;You'd never guess how happy one could be just seeing abcdef... in a notepad window &lt;SPAN class="lia-unicode-emoji" title=":winking_face:"&gt;&lt;LI-EMOJI id="lia_winking-face" title=":winking_face:"&gt;&lt;/LI-EMOJI&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I changed the usb_hid example from the EmbeddedArtists package to get a working USB keyboard. This will be used to create a custom human interface using buttons and rotary encoders.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;All that had to be done was to change the USB descriptors, create an InReport&amp;nbsp; with 8 bytes and some sample code to simulate key presses.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Note that I did not yet change the bInterval in the endpoint descriptor so the interrupt function is called at a 32 ms interval. In the "Device Class Definition for HID" document from usb.org the example descriptos in appendix E.6 use 10 ms. I guess that 31 keypress/release events per second is enough - if not I can always try the 10 ms to get 100 events per second.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If anyone wants to play around with the keyboard code then just have a look at the changed I made below.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Rob&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;src/demo.h: changed definition of InReport into InReport[8]

src/demo.c: changed definition of InReport into InReport[8] 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; changed GetInReport function to put (and remove) keys in InReport[2] at regular intervals
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
src/hiduser.c: changed HID_GetReport to get the full InReport[] buffer into EP0Buf[]

src/usbdesc.c: changed the HID Report descriptor to identify a keyboard device:

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* HID Report Descriptor */
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; const uint8_t HID_ReportDescriptor[] = {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_UsagePage(HID_USAGE_PAGE_GENERIC),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_Usage(HID_USAGE_GENERIC_KEYBOARD),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_Collection(HID_Application),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_UsagePage(HID_USAGE_PAGE_KEYBOARD),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_UsageMin(0xe0),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_UsageMax(0xe7),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_LogicalMin(0),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_LogicalMax(1),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_ReportSize(1),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_ReportCount(8),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_Input(HID_Data | HID_Variable | HID_Absolute),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_ReportCount(1),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_ReportSize(8),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_Input(HID_Constant),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_ReportCount(5),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_ReportSize(1),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_UsagePage(HID_USAGE_PAGE_LED),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_UsageMin(1),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_UsageMax(5),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_Output(HID_Data | HID_Variable | HID_Absolute),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_ReportCount(1),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_ReportSize(3),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_Output(HID_Constant),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_ReportCount(6),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_ReportSize(8),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_LogicalMin(0),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_LogicalMax(101),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_UsagePage(HID_USAGE_PAGE_KEYBOARD),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_UsageMin(0),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_UsageMax(101),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_Input(HID_Data | HID_Array),
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HID_EndCollection,
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; In the USB_ConfigDescriptor[] enabled the USB_CONFIG_REMOTE_WAKEUP in the bmAttributes field
&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;&amp;nbsp; and changed the InterfaceSubClass and InterFaceProtocol in HID_SUBCLASS_NONE and HID_PROTOCOL_KEYBOARD.
&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;&amp;nbsp; also changed bcdHID in the intefacedescriptor into 0x0101 instead of 0x0100
&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;&amp;nbsp; and the wMaxPacketSize in the endpoint is set to 8 (was 4)

src/demo.c: add simulated keypresses in the GetInReport function:

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void GetInReport (void) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; static unsigned counter = 0;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; static unsigned keycode = 0x04;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch(counter++) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case 1: InReport[2] = keycode++;
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(keycode &amp;gt; 0x1d) keycode = 0x04; // Rotate back from Z to A
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case 3: InReport[2] = 0;
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case 16:counter = 0;
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2016 00:52:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560591#M15929</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-16T00:52:53Z</dc:date>
    </item>
    <item>
      <title>Re: lpc1342 USB examples</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560592#M15930</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by NXP_USA on Mon Feb 01 12:32:36 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: bhallett&lt;/STRONG&gt;&lt;BR /&gt;Thanks for the info NXP_USA, thats been a great help. &lt;BR /&gt;&lt;BR /&gt;Do you know of any examples that do not use the CSMIS package?&lt;BR /&gt;&lt;BR /&gt;Regards&lt;BR /&gt;&lt;BR /&gt;Barry&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;We are working on a tiny version of the USB HID example. It will use the CMSIS header files to declare the peripheral registers, but it will leave out the CMSIS SystemInit setup code. It will compile to less than 1kB.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;-Dave&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2016 00:52:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560592#M15930</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-16T00:52:54Z</dc:date>
    </item>
    <item>
      <title>Re: lpc1342 USB examples</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560593#M15931</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by ktownsend on Tue Feb 02 09:37:04 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: NXP_USA&lt;/STRONG&gt;&lt;BR /&gt;We are working on a tiny version of the USB HID example. It will use the CMSIS header files to declare the peripheral registers, but it will leave out the CMSIS SystemInit setup code. It will compile to less than 1kB.&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I'd definately be glad to see that.&amp;nbsp; I like the ROM-based drivers (they take about 5 minutes to get working), but being limited to a single report is a significant limitation, even if you can vary the length.&amp;nbsp; If you want full control over the report descriptor, the Keil examples are kind of bloated for simple HID though (especially for a 32KB part).&amp;nbsp; If NXP is able to provide something with a smaller overall footprint, that would definately be welcome.&amp;nbsp; A lightweight CDC example would probably make a lot of engineers happy as well, but obviously HID is more relevant for real-world product development.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I've also been avoiding the Keil code because of license issues.&amp;nbsp; I'm not able to distribute anything using it in code form according to license details at the top of the files.&amp;nbsp; Hopefully anything made by NXP won't have the same limitation.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2016 00:52:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560593#M15931</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-16T00:52:54Z</dc:date>
    </item>
    <item>
      <title>Re: lpc1342 USB examples</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560594#M15932</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by domen on Mon Feb 21 10:08:06 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;I agree with KTownsend, license restrictions are really silly for the examples.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You could have a healthy community of people that would improve/fix them. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;But the current state, where I can't publish the code, and the bugs (with fixes) I've reported weren't even merged... well... why do I even bother.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2016 00:52:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/lpc1342-USB-examples/m-p/560594#M15932</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-16T00:52:55Z</dc:date>
    </item>
  </channel>
</rss>

