| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
- <meta http-equiv="X-UA-Compatible" content="IE=9"/>
- <meta name="generator" content="Doxygen 1.8.13"/>
- <meta name="viewport" content="width=device-width, initial-scale=1"/>
- <title>Lightweight USB stack: usb_std.h Source File</title>
- <link href="../../tabs.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="../../jquery.js"></script>
- <script type="text/javascript" src="../../dynsections.js"></script>
- <link href="../../navtree.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="../../resize.js"></script>
- <script type="text/javascript" src="../../navtreedata.js"></script>
- <script type="text/javascript" src="../../navtree.js"></script>
- <script type="text/javascript">
- $(document).ready(initResizable);
- </script>
- <link href="../../search/search.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="../../search/searchdata.js"></script>
- <script type="text/javascript" src="../../search/search.js"></script>
- <link href="../../doxygen.css" rel="stylesheet" type="text/css" />
- </head>
- <body>
- <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
- <div id="titlearea">
- <table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
- <td id="projectalign" style="padding-left: 0.5em;">
- <div id="projectname">Lightweight USB stack
-  <span id="projectnumber">1.0</span>
- </div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- <!-- end header part -->
- <!-- Generated by Doxygen 1.8.13 -->
- <script type="text/javascript">
- var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
- </script>
- <script type="text/javascript" src="../../menudata.js"></script>
- <script type="text/javascript" src="../../menu.js"></script>
- <script type="text/javascript">
- $(function() {
- initMenu('../../',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
- });
- </script>
- <div id="main-nav"></div>
- </div><!-- top -->
- <div id="side-nav" class="ui-resizable side-nav-resizable">
- <div id="nav-tree">
- <div id="nav-tree-contents">
- <div id="nav-sync" class="sync"></div>
- </div>
- </div>
- <div id="splitbar" style="-moz-user-select:none;"
- class="ui-resizable-handle">
- </div>
- </div>
- <script type="text/javascript">
- $(document).ready(function(){initNavTree('da/d24/a00068_source.html','../../');});
- </script>
- <div id="doc-content">
- <!-- window showing the filter options -->
- <div id="MSearchSelectWindow"
- onmouseover="return searchBox.OnSearchSelectShow()"
- onmouseout="return searchBox.OnSearchSelectHide()"
- onkeydown="return searchBox.OnSearchSelectKey(event)">
- </div>
- <!-- iframe showing the search results (closed by default) -->
- <div id="MSearchResultsWindow">
- <iframe src="javascript:void(0)" frameborder="0"
- name="MSearchResults" id="MSearchResults">
- </iframe>
- </div>
- <div class="header">
- <div class="headertitle">
- <div class="title">usb_std.h</div> </div>
- </div><!--header-->
- <div class="contents">
- <div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/* This file is the part of the Lightweight USB device Stack for STM32 microcontrollers</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> *</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> * Copyright ©2016 Dmitry Filimonchuk <dmitrystu[at]gmail[dot]com></span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * Licensed under the Apache License, Version 2.0 (the "License");</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * you may not use this file except in compliance with the License.</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * You may obtain a copy of the License at</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> * http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * Unless required by applicable law or agreed to in writing, software</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * distributed under the License is distributed on an "AS IS" BASIS,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * See the License for the specific language governing permissions and</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> * limitations under the License.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> */</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> </div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="preprocessor">#ifndef _USB_STD_H_</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#define _USB_STD_H_</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#if defined(__cplusplus)</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="keyword">extern</span> <span class="stringliteral">"C"</span> {</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#define __CAT(x,y) x ## y</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#define CAT(x,y) __CAT(x,y)</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> </div><div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga63eb203f5f5e37dc55157680549c656c"> 40</a></span> <span class="preprocessor">#define VERSION_BCD(maj, min, rev) (((maj & 0xFF) << 8) | ((min & 0x0F) << 4) | (rev & 0x0F))</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga872cd80ad22caad26fe45fe2182645d4"> 43</a></span> <span class="preprocessor">#define USB_ARRAY_DESC(...) {.bLength = 2 + sizeof((uint16_t[]){__VA_ARGS__}),\</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor"> .bDescriptorType = USB_DTYPE_STRING,\</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor"> .wString = {__VA_ARGS__}}</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga362afc1ada1c8cbeca04329e99c2e8f9"> 47</a></span> <span class="preprocessor">#define USB_STRING_DESC(s) {.bLength = sizeof(CAT(u,s)),\</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor"> .bDescriptorType = USB_DTYPE_STRING,\</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor"> .wString = {CAT(u,s)}}</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> </div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga7b68661c679b3b44dfed37455fff2dde"> 52</a></span> <span class="preprocessor">#define USB_CFG_POWER_MA(mA) ((mA) >> 1)</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="preprocessor">#define USB_CFG_ATTR_RESERVED 0x80</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor">#define USB_CFG_ATTR_SELFPOWERED 0x40</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gaf97b4b6b7cfda4ecf08ce1172b4be451"> 64</a></span> <span class="preprocessor">#define USB_EPDIR_IN 0x00 </span></div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga51a142fba352a184c600e68190f4ef09"> 65</a></span> <span class="preprocessor">#define USB_EPDIR_OUT 0x80 </span></div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gad21ccfa9002cb22958cd5a38682114ee"> 66</a></span> <span class="preprocessor">#define USB_EPTYPE_CONTROL 0x00 </span></div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga87bcf2bb75709226f08268be4d472c7a"> 67</a></span> <span class="preprocessor">#define USB_EPTYPE_ISOCHRONUS 0x01 </span></div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga2e0da3e7ed8f844ab9322b6cf5b5a84b"> 68</a></span> <span class="preprocessor">#define USB_EPTYPE_BULK 0x02 </span></div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gade4942219a9d3206c31adf64bc72ba71"> 69</a></span> <span class="preprocessor">#define USB_EPTYPE_INTERRUPT 0x03 </span></div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga782f6de3a1fe7f7087882663d0f314f8"> 70</a></span> <span class="preprocessor">#define USB_EPATTR_NO_SYNC 0x00 </span></div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga4ca5965884c1ea94cdeedaa50d2cab11"> 71</a></span> <span class="preprocessor">#define USB_EPATTR_ASYNC 0x04 </span></div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gab02aee2779e7783f4292560f942ce2c6"> 72</a></span> <span class="preprocessor">#define USB_EPATTR_ADAPTIVE 0x08 </span></div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gac5b7635e12514f6acba6a29f72e7cbbe"> 73</a></span> <span class="preprocessor">#define USB_EPATTR_SYNC 0x0C </span></div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga6305caac69f911af7d3f642916db6739"> 74</a></span> <span class="preprocessor">#define USB_EPUSAGE_DATA 0x00 </span></div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga18284e16d696647a8fcbc71697cc217c"> 75</a></span> <span class="preprocessor">#define USB_EPUSAGE_FEEDBACK 0x10 </span></div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga4bf1b931e18c6f97abd18fa603e92ab7"> 76</a></span> <span class="preprocessor">#define USB_EPUSAGE_IMP_FEEDBACK 0x20 </span></div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga746bc73e4e35c42810c1b72aa91eea4e"> 81</a></span> <span class="preprocessor">#define NO_DESCRIPTOR 0x00 </span></div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gaad4d076ee1eb5cba8efec47779bce3e9"> 82</a></span> <span class="preprocessor">#define INTSERIALNO_DESCRIPTOR 0xFE </span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="preprocessor">#define USB_CLASS_PER_INTERFACE 0x00 </span></div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga1e00c14ff205d2d88be93faa2a81927a"> 89</a></span> <span class="preprocessor">#define USB_SUBCLASS_NONE 0x00 </span></div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga2ed8ff1595c1184d0aa4eefbc3c2e39c"> 90</a></span> <span class="preprocessor">#define USB_PROTO_NONE 0x00 </span></div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gadda0f765fb3bbb06a4f66d6431998a65"> 91</a></span> <span class="preprocessor">#define USB_CLASS_AUDIO 0x01 </span></div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga8785f84db1be6b0b5da34cd91a1b6138"> 92</a></span> <span class="preprocessor">#define USB_CLASS_PHYSICAL 0x05 </span></div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gaa5f3153d014b6267ba8da243b6b46443"> 93</a></span> <span class="preprocessor">#define USB_CLASS_STILL_IMAGE 0x06 </span></div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga2c519456bac2f388baabf8db178169ac"> 94</a></span> <span class="preprocessor">#define USB_CLASS_PRINTER 0x07 </span></div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gab3e03403111b64480ba298d2641cf92f"> 95</a></span> <span class="preprocessor">#define USB_CLASS_MASS_STORAGE 0x08 </span></div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gaa99b73e335df09e6545fc44798a3c1f2"> 96</a></span> <span class="preprocessor">#define USB_CLASS_HUB 0x09 </span></div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gaac5a936a2d1a6e3403798b031294992a"> 97</a></span> <span class="preprocessor">#define USB_CLASS_CSCID 0x0B </span></div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gaebefa708b1fb84af2ab6c60b414d7e7f"> 98</a></span> <span class="preprocessor">#define USB_CLASS_CONTENT_SEC 0x0D </span></div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga2bc85c84fbcdb58a651eae036ce5c3b9"> 99</a></span> <span class="preprocessor">#define USB_CLASS_VIDEO 0x0E </span></div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga42a579e1be399e32a495b82634411449"> 100</a></span> <span class="preprocessor">#define USB_CLASS_HEALTHCARE 0x0F </span></div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gae3107c8f58dec700e3bdfeabf15680cd"> 101</a></span> <span class="preprocessor">#define USB_CLASS_AV 0x10 </span></div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga2dd0351cedfc2324ac2f9a412b8f52c8"> 102</a></span> <span class="preprocessor">#define USB_CLASS_BILLBOARD 0x11 </span></div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga6d6c5e74c304e3fe44e951888c767764"> 103</a></span> <span class="preprocessor">#define USB_CLASS_CBRIDGE 0x12 </span></div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gae0008b8c1888f45c1d8abf0858c3f859"> 104</a></span> <span class="preprocessor">#define USB_CLASS_DIAGNOSTIC 0xDC </span></div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga3b2d878638ec2583b4c7cc6b98227d90"> 105</a></span> <span class="preprocessor">#define USB_CLASS_WIRELESS 0xE0 </span></div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga23f5dcd78c94757a5ef269fbb5acb636"> 106</a></span> <span class="preprocessor">#define USB_CLASS_MISC 0xEF </span></div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga02fb07e20ad6d1af64439f40093bc80f"> 107</a></span> <span class="preprocessor">#define USB_CLASS_APP_SPEC 0xFE </span></div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga468ff9393384f125de57a533c8e5240b"> 108</a></span> <span class="preprocessor">#define USB_CLASS_VENDOR 0xFF </span></div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gacacc4de7981ab8e877680cd5a8c3b227"> 109</a></span> <span class="preprocessor">#define USB_SUBCLASS_VENDOR 0xFF </span></div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga4468c2fe98b271b38d71e9a0689dd3bc"> 110</a></span> <span class="preprocessor">#define USB_PROTO_VENDOR 0xFF </span></div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga1d44bd0e96a322b245b67f3ef4537577"> 111</a></span> <span class="preprocessor">#define USB_CLASS_IAD 0xEF </span></div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gaaf2d6c6cd7b43e2372cd74cf1b36f82c"> 112</a></span> <span class="preprocessor">#define USB_SUBCLASS_IAD 0x02 </span></div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga3a637995f1146443c98cfd98185a2b83"> 113</a></span> <span class="preprocessor">#define USB_PROTO_IAD 0x01 </span></div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="preprocessor">#define USB_DTYPE_DEVICE 0x01 </span></div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga76eb46fb8a7219b6c824036f56b94a94"> 119</a></span> <span class="preprocessor">#define USB_DTYPE_CONFIGURATION 0x02 </span></div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gad2d9345dbf8bb1ed7f49c7856d5d1ef8"> 120</a></span> <span class="preprocessor">#define USB_DTYPE_STRING 0x03 </span></div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gabde1b2a68da742b490fa1281c80cce39"> 121</a></span> <span class="preprocessor">#define USB_DTYPE_INTERFACE 0x04 </span></div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gaefd56033b4b680837f946ffccdfa7d3b"> 122</a></span> <span class="preprocessor">#define USB_DTYPE_ENDPOINT 0x05 </span></div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gaf4bc77da317012c0324d2c2d34b2ea5d"> 123</a></span> <span class="preprocessor">#define USB_DTYPE_QUALIFIER 0x06 </span></div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga01816e9350a1549df049179f297de6e5"> 124</a></span> <span class="preprocessor">#define USB_DTYPE_OTHER 0x07 </span></div><div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga99bbf7c3e4f9d751bf07d64a0ccd9713"> 125</a></span> <span class="preprocessor">#define USB_DTYPE_INTERFACEPOWER 0x08 </span></div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga3313728a669e31a1a086b25b0168f4ce"> 126</a></span> <span class="preprocessor">#define USB_DTYPE_OTG 0x09 </span></div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gadeb010e5871ad986b4020baa8d38acd3"> 127</a></span> <span class="preprocessor">#define USB_DTYPE_DEBUG 0x0A </span></div><div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga9b4bc4deb61f79f8ce0fa650a4329764"> 128</a></span> <span class="preprocessor">#define USB_DTYPE_INTERFASEASSOC 0x0B </span></div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga3db10dc9f3b3a09d06fb33084ef5bb33"> 129</a></span> <span class="preprocessor">#define USB_DTYPE_CS_INTERFACE 0x24 </span></div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gad91ea073e6d698b8c81ba0a549cc2fd3"> 130</a></span> <span class="preprocessor">#define USB_DTYPE_CS_ENDPOINT 0x25 </span></div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="preprocessor">#define USB_STD_GET_STATUS 0x00 </span></div><div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga2ad287478695ce37d8920c9470b2ed27"> 136</a></span> <span class="preprocessor">#define USB_STD_CLEAR_FEATURE 0x01 </span></div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gab75849b041fcad933c092cb2c92e687c"> 137</a></span> <span class="preprocessor">#define USB_STD_SET_FEATURE 0x03 </span></div><div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga62ab8761749f25c14fd23dbe5e24924d"> 138</a></span> <span class="preprocessor">#define USB_STD_SET_ADDRESS 0x05 </span></div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="preprocessor">#define USB_STD_GET_DESCRIPTOR 0x06 </span></div><div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga97f0c52d7008d8ba62008f5e17be6b45"> 142</a></span> <span class="preprocessor">#define USB_STD_SET_DESCRIPTOR 0x07 </span></div><div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gac5d4ec37f340f3af59de27d81bd3b9a2"> 145</a></span> <span class="preprocessor">#define USB_STD_GET_CONFIG 0x08 </span></div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="preprocessor">#define USB_STD_SET_CONFIG 0x09 </span></div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="preprocessor">#define USB_STD_GET_INTERFACE 0x0A </span></div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="preprocessor">#define USB_STD_SET_INTERFACE 0x0B </span></div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga5ddeb8485dcaad324de96acd426215ac"> 151</a></span> <span class="preprocessor">#define USB_STD_SYNCH_FRAME 0x0C </span></div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="preprocessor">#define USB_FEAT_ENDPOINT_HALT 0x00 </span></div><div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga70e67e3f889ad2c728416a00a4d4c8b0"> 158</a></span> <span class="preprocessor">#define USB_FEAT_REMOTE_WKUP 0x01</span></div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="preprocessor">#define USB_FEAT_TEST_MODE 0x02</span></div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="preprocessor">#define USB_FEAT_DEBUG_MODE 0x06</span></div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span> </div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga9ed63c8f4b74289bed63db2d9f93eb62"> 165</a></span> <span class="preprocessor">#define USB_TEST_J 0x01 </span></div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="preprocessor">#define USB_TEST_K 0x02 </span></div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="preprocessor">#define USB_TEST_SE0_NAK 0x03 </span></div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="preprocessor">#define USB_TEST_PACKET 0x04 </span></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="preprocessor">#define USB_TEST_FORCE_ENABLE 0x05 </span></div><div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga94cc55d6876e137b0d8101d72ed69f0a"> 174</a></span> <span class="preprocessor">#define USB_LANGID_AFR 0x0436 </span></div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#gae12f4f9fcbaf8f19ba4f2ded69fd6b0c"> 175</a></span> <span class="preprocessor">#define USB_LANGID_SQI 0x041c </span></div><div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga1701867b88f438ef2974c255664099d3"> 176</a></span> <span class="preprocessor">#define USB_LANGID_ARA_SA 0x0401 </span></div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="../../da/d74/a00099.html#ga21cf0cae77c05fd596928d03305d7bac"> 177</a></span> <span class="preprocessor">#define USB_LANGID_ARA_IQ 0x0801 </span></div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="preprocessor">#define USB_LANGID_ARA_EG 0x0c01 </span></div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="preprocessor">#define USB_LANGID_ARA_LY 0x1001 </span></div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="preprocessor">#define USB_LANGID_ARA_DZ 0x1401 </span></div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="preprocessor">#define USB_LANGID_ARA_MA 0x1801 </span></div><div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga45b915f83d3d6628dfb85b4ae31820fd"> 182</a></span> <span class="preprocessor">#define USB_LANGID_ARA_TN 0x1c01 </span></div><div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga462b7e5ded9ae8710944a97ca5e83fb9"> 183</a></span> <span class="preprocessor">#define USB_LANGID_ARA_OM 0x2001 </span></div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga5a48d6b35c7b2301a7e036c097867a2f"> 184</a></span> <span class="preprocessor">#define USB_LANGID_ARA_YE 0x2401 </span></div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaee62d46e330112064ff74a2fd65c11ce"> 185</a></span> <span class="preprocessor">#define USB_LANGID_ARA_SY 0x2801 </span></div><div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gabb676aa3b94575ccd727eb968624b489"> 186</a></span> <span class="preprocessor">#define USB_LANGID_ARA_JO 0x2c01 </span></div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga6f07445ba034346ccc4bef26a17b5851"> 187</a></span> <span class="preprocessor">#define USB_LANGID_ARA_LB 0x3001 </span></div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga0302c8c1be64432c31f27170dfbe206b"> 188</a></span> <span class="preprocessor">#define USB_LANGID_ARA_KW 0x3401 </span></div><div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga8af05fea7f120c71c8f5c3e897c29457"> 189</a></span> <span class="preprocessor">#define USB_LANGID_ARA_AE 0x3801 </span></div><div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gad47156bec526ff4bbd331525896ae06f"> 190</a></span> <span class="preprocessor">#define USB_LANGID_ARA_BH 0x3c01 </span></div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga65b35f8c5cd4ae83390bf8a98f4df9f2"> 191</a></span> <span class="preprocessor">#define USB_LANGID_ARA_QA 0x4001 </span></div><div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaf891fd72f0f5ad5e6984847a6b011a34"> 192</a></span> <span class="preprocessor">#define USB_LANGID_HYE 0x042b </span></div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga11f1790497de811a0e072ba7c7684b68"> 193</a></span> <span class="preprocessor">#define USB_LANGID_ASM 0x044d </span></div><div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga61ae6a8eee7ad8906cb8722116266252"> 194</a></span> <span class="preprocessor">#define USB_LANGID_AZE_LAT 0x042c </span></div><div class="line"><a name="l00195"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gadc76982d03e9aff677b0f4cabe6dc9df"> 195</a></span> <span class="preprocessor">#define USB_LANGID_AZE_CYR 0x082c </span></div><div class="line"><a name="l00196"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga9e1c369132e5b01f056285e9e9fa0a79"> 196</a></span> <span class="preprocessor">#define USB_LANGID_EUS 0x042d </span></div><div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga6330ca29cea920f35b2c2d639e2b7d64"> 197</a></span> <span class="preprocessor">#define USB_LANGID_BEL 0x0423 </span></div><div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga236503a113663bfbb1b63ce4a1121ca8"> 198</a></span> <span class="preprocessor">#define USB_LANGID_BEN 0x0445 </span></div><div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga21e93373661ac6fe9806983f255d2b09"> 199</a></span> <span class="preprocessor">#define USB_LANGID_BUL 0x0402 </span></div><div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaa586565edf317e0089ace4d3d112c3b8"> 200</a></span> <span class="preprocessor">#define USB_LANGID_MYA 0x0455 </span></div><div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gac44b1c5b80cc9d6fe1491c3fc31ebcdc"> 201</a></span> <span class="preprocessor">#define USB_LANGID_CAT 0x0403 </span></div><div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gab2a7060ed0de0bcdca8f73e3deb4765b"> 202</a></span> <span class="preprocessor">#define USB_LANGID_ZHO_TW 0x0404 </span></div><div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga2345eeda8f54c7ec9f09819df374ea62"> 203</a></span> <span class="preprocessor">#define USB_LANGID_ZHO_CN 0x0804 </span></div><div class="line"><a name="l00204"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga5fdcae4659eb901e6a73428c5b16fcdb"> 204</a></span> <span class="preprocessor">#define USB_LANGID_ZHO_HK 0x0c04 </span></div><div class="line"><a name="l00205"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga4e2d182a0560cabd31e77d679e7d8e96"> 205</a></span> <span class="preprocessor">#define USB_LANGID_ZHO_SG 0x1004 </span></div><div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga7a7075db9fee6d6081e7b08e6813acf7"> 206</a></span> <span class="preprocessor">#define USB_LANGID_ZHO_MO 0x1404 </span></div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga187b06ad9246227c08797ed816e0cc5c"> 207</a></span> <span class="preprocessor">#define USB_LANGID_HRV 0x041a </span></div><div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gab4c7a02f16f4622dcae86395e50b4a86"> 208</a></span> <span class="preprocessor">#define USB_LANGID_CZE 0x0405 </span></div><div class="line"><a name="l00209"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gae4cfe6e901c0890a8ddc6205d88e1b3d"> 209</a></span> <span class="preprocessor">#define USB_LANGID_DAN 0x0406 </span></div><div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gad14f06512b0d323ffce9954243439582"> 210</a></span> <span class="preprocessor">#define USB_LANGID_NLD_NL 0x0413 </span></div><div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaab154bd49494cc56409d06cf8285fe95"> 211</a></span> <span class="preprocessor">#define USB_LANGID_NLD_BE 0x0813 </span></div><div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaf4e4201172559ed70d1ab1306f234ed9"> 212</a></span> <span class="preprocessor">#define USB_LANGID_ENG_US 0x0409 </span></div><div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga8df106ed14eaee0c932eb076ebb0e79d"> 213</a></span> <span class="preprocessor">#define USB_LANGID_ENG_UK 0x0809 </span></div><div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga3fc39446d940d9ca81dedf686b937e93"> 214</a></span> <span class="preprocessor">#define USB_LANGID_ENG_AU 0x0c09 </span></div><div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaa0ed84297dc360eae7ec7b5e25e5e81d"> 215</a></span> <span class="preprocessor">#define USB_LANGID_ENG_CA 0x1009 </span></div><div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga47e3e15004c628cb0cf1f3aa9af8d864"> 216</a></span> <span class="preprocessor">#define USB_LANGID_ENG_NZ 0x1409 </span></div><div class="line"><a name="l00217"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gab383313472f22e21ed93201fe9897b51"> 217</a></span> <span class="preprocessor">#define USB_LANGID_ENG_IE 0x1809 </span></div><div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaf317805b07477d35713dac06bb6339ed"> 218</a></span> <span class="preprocessor">#define USB_LANGID_ENG_ZA 0x1c09 </span></div><div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga31b6046a25a5b62010a6cd0b6dd04011"> 219</a></span> <span class="preprocessor">#define USB_LANGID_ENG_JM 0x2009 </span></div><div class="line"><a name="l00220"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaee330d76e4b085e7a10322e10e4d0ff9"> 220</a></span> <span class="preprocessor">#define USB_LANGID_ENG_CAR 0x2409 </span></div><div class="line"><a name="l00221"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga699401b6e3557735998611f4096334f8"> 221</a></span> <span class="preprocessor">#define USB_LANGID_ENG_BZ 0x2809 </span></div><div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga6729ab56d95a5a44580bf1b2e379e73b"> 222</a></span> <span class="preprocessor">#define USB_LANGID_ENG_TH 0x2c09 </span></div><div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga5495b2e7f748a8a5b6fa127cc20280f8"> 223</a></span> <span class="preprocessor">#define USB_LANGID_ENG_ZW 0x3009 </span></div><div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga7b0b278f132fbe27229c41a6c4d01db2"> 224</a></span> <span class="preprocessor">#define USB_LANGID_ENG_PH 0x3409 </span></div><div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaa80ae77557c2109d2ef266bbbaa3fde5"> 225</a></span> <span class="preprocessor">#define USB_LANGID_EST 0x0425 </span></div><div class="line"><a name="l00226"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gadf3de60325bd15e753039ef7f814bf8c"> 226</a></span> <span class="preprocessor">#define USB_LANGID_FAO 0x0438 </span></div><div class="line"><a name="l00227"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gafc78a32b5f63f21122a060d231c8bcc9"> 227</a></span> <span class="preprocessor">#define USB_LANGID_FAS 0x0429 </span></div><div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga0fca688a1102c9c64e8cfe14e3d762fc"> 228</a></span> <span class="preprocessor">#define USB_LANGID_FIN 0x040b </span></div><div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaf6a2f97dfd8b929369025486ba7ae52b"> 229</a></span> <span class="preprocessor">#define USB_LANGID_FRA 0x040c </span></div><div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaaf1f10e878022d0ade2e1f6936d7e11a"> 230</a></span> <span class="preprocessor">#define USB_LANGID_FRA_BE 0x080c </span></div><div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gac2af2c91afb866f4d44224998f360771"> 231</a></span> <span class="preprocessor">#define USB_LANGID_FRA_CA 0x0c0c </span></div><div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gad6fba573d8f76b0af4cc6eef240bf094"> 232</a></span> <span class="preprocessor">#define USB_LANGID_FRA_SZ 0x100c </span></div><div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga13fdb4e228e2bf74e4e9877d3bd8d121"> 233</a></span> <span class="preprocessor">#define USB_LANGID_FRA_LU 0x140c </span></div><div class="line"><a name="l00234"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gac1a0dc8c20c8ebb13edad389d4cba61b"> 234</a></span> <span class="preprocessor">#define USB_LANGID_FRA_MC 0x180c </span></div><div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga05c94f204f9b408b9f7106c3c01e343a"> 235</a></span> <span class="preprocessor">#define USB_LANGID_KAT 0x0437 </span></div><div class="line"><a name="l00236"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gad0944016d1ba943e9e0257c6a318f8a1"> 236</a></span> <span class="preprocessor">#define USB_LANGID_DEU 0x0407 </span></div><div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga60c3e52efa8446073f97160595665d52"> 237</a></span> <span class="preprocessor">#define USB_LANGID_DEU_SZ 0x0807 </span></div><div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga0b0615cd5fcd9629de50567891dbc922"> 238</a></span> <span class="preprocessor">#define USB_LANGID_DEU_AT 0x0c07 </span></div><div class="line"><a name="l00239"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gab5ace605d61d23dbc4317625145f9810"> 239</a></span> <span class="preprocessor">#define USB_LANGID_DEU_LU 0x1007 </span></div><div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaeb263e7928ee6a8d786447b03ad4131a"> 240</a></span> <span class="preprocessor">#define USB_LANGID_DEU_LI 0x1407 </span></div><div class="line"><a name="l00241"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gacd7391cb2285178e2733682b609e70e6"> 241</a></span> <span class="preprocessor">#define USB_LANGID_ELL 0x0408 </span></div><div class="line"><a name="l00242"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga2c16f68670cc9d6b035556eec493090b"> 242</a></span> <span class="preprocessor">#define USB_LANGID_GUJ 0x0447 </span></div><div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga9f2ce3d7d765bbf667be7dcbbeba0a1b"> 243</a></span> <span class="preprocessor">#define USB_LANGID_HEB 0x040d </span></div><div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga656a069fe0f6333f9c8889428956a043"> 244</a></span> <span class="preprocessor">#define USB_LANGID_HIN 0x0439 </span></div><div class="line"><a name="l00245"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga8223d5c07165cdfd044494552cbfdbb8"> 245</a></span> <span class="preprocessor">#define USB_LANGID_HUN 0x040e </span></div><div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gab022a652008946209b121f861b8d96cd"> 246</a></span> <span class="preprocessor">#define USB_LANGID_ISL 0x040f </span></div><div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga56450c9e294554bdb06bcbb5d42ec351"> 247</a></span> <span class="preprocessor">#define USB_LANGID_IND 0x0421 </span></div><div class="line"><a name="l00248"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga01cd3d0c9cc2fa398247ca277984d2c2"> 248</a></span> <span class="preprocessor">#define USB_LANGID_ITA 0x0410 </span></div><div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaf11198bd2ba2bd02ce5ef947caf65e1a"> 249</a></span> <span class="preprocessor">#define USB_LANGID_ITA_SZ 0x0810 </span></div><div class="line"><a name="l00250"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gacdf258934127a21928060aa42c2c641b"> 250</a></span> <span class="preprocessor">#define USB_LANGID_JPN 0x0411 </span></div><div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga7b1365f89cdd464df1875cc067e2a202"> 251</a></span> <span class="preprocessor">#define USB_LANGID_KAN 0x044b </span></div><div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga13c830a7028d68a1b4bed9f06c4758d8"> 252</a></span> <span class="preprocessor">#define USB_LANGID_KAS 0x0860 </span></div><div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga79e13a9d27914d7d73027887c78f9cf8"> 253</a></span> <span class="preprocessor">#define USB_LANGID_KAZ 0x043f </span></div><div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaccee92dc16949205ff8ae52ccf04bef7"> 254</a></span> <span class="preprocessor">#define USB_LANGID_KOK 0x0457 </span></div><div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gad513d0702e68ffa4ac91959412a842da"> 255</a></span> <span class="preprocessor">#define USB_LANGID_KOR 0x0412 </span></div><div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gae544367818d469c288ee80a167621d03"> 256</a></span> <span class="preprocessor">#define USB_LANGID_KOR_JOH 0x0812 </span></div><div class="line"><a name="l00257"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga2824a7dca652fa85943a56278e4cd3d1"> 257</a></span> <span class="preprocessor">#define USB_LANGID_LAV 0x0426 </span></div><div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga2460ede70d1acef19d3d7f9d3f9fa18c"> 258</a></span> <span class="preprocessor">#define USB_LANGID_LIT 0x0427 </span></div><div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga3a80b7ecc2f0c021c50ef8dbdf9ea287"> 259</a></span> <span class="preprocessor">#define USB_LANGID_LIT_CLS 0x0827 </span></div><div class="line"><a name="l00260"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gae85bbd404381dcd87bca7110810fbaad"> 260</a></span> <span class="preprocessor">#define USB_LANGID_MKD 0x042f </span></div><div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga5b21748f49770f9c992fda54ddc7bf62"> 261</a></span> <span class="preprocessor">#define USB_LANGID_MSA 0x043e </span></div><div class="line"><a name="l00262"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga432c619903ffbcb40d9c3c6a32dd951f"> 262</a></span> <span class="preprocessor">#define USB_LANGID_MSA_BN 0x083e </span></div><div class="line"><a name="l00263"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga2405fa1c0b5e42fdf40d0cb5d3720a1a"> 263</a></span> <span class="preprocessor">#define USB_LANGID_MAL 0x044c </span></div><div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga3bf5ff6d1354eb2508b80a18d007f022"> 264</a></span> <span class="preprocessor">#define USB_LANGID_MNI 0x0458 </span></div><div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga755e857c20def561e3cb5d0924d44178"> 265</a></span> <span class="preprocessor">#define USB_LANGID_MAR 0x044e </span></div><div class="line"><a name="l00266"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gad599a691feca916bb402086eacc02c46"> 266</a></span> <span class="preprocessor">#define USB_LANGID_NEP 0x0861 </span></div><div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gac0a4619e774d8368a8c953b436e97d83"> 267</a></span> <span class="preprocessor">#define USB_LANGID_NOB 0x0414 </span></div><div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaae34b38bd115bed7d208a5e22340edb0"> 268</a></span> <span class="preprocessor">#define USB_LANGID_NNO 0x0814 </span></div><div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gacf9a06e976fbc243479988dabe7501bd"> 269</a></span> <span class="preprocessor">#define USB_LANGID_ORI 0x0448 </span></div><div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gae89b6d5cf8a3f4fe14ebab51de4a26aa"> 270</a></span> <span class="preprocessor">#define USB_LANGID_POL 0x0415 </span></div><div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaff9b969ec45eb97c16b64bd9ec0ffc36"> 271</a></span> <span class="preprocessor">#define USB_LANGID_POR_BR 0x0416 </span></div><div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga8344bc8adf19c23a114f5743710428cb"> 272</a></span> <span class="preprocessor">#define USB_LANGID_POR 0x0816 </span></div><div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaac2c66514c4815a25d603fa31448d84e"> 273</a></span> <span class="preprocessor">#define USB_LANGID_PAN 0x0446 </span></div><div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga96911c3933cd184bbef3f6351b49cbef"> 274</a></span> <span class="preprocessor">#define USB_LANGID_RON 0x0418 </span></div><div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gad384d9c015eb99a48a9b186c2546402d"> 275</a></span> <span class="preprocessor">#define USB_LANGID_RUS 0x0419 </span></div><div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gac75c30d80bce35b08aef9b07a48dfa18"> 276</a></span> <span class="preprocessor">#define USB_LANGID_SAN 0x044f </span></div><div class="line"><a name="l00277"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga4a0b0c92d947eac51ec18505a3a01e2b"> 277</a></span> <span class="preprocessor">#define USB_LANGID_SRB_CYR 0x0c1a </span></div><div class="line"><a name="l00278"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga999746a9a6121348da1d61154154d55c"> 278</a></span> <span class="preprocessor">#define USB_LANGID_SRB_LAT 0x081a </span></div><div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga83f5c597f012efe453ca91e16d986509"> 279</a></span> <span class="preprocessor">#define USB_LANGID_SND 0x0459 </span></div><div class="line"><a name="l00280"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga9cfc7e8d64f195613458d886566f797b"> 280</a></span> <span class="preprocessor">#define USB_LANGID_SLK 0x041b </span></div><div class="line"><a name="l00281"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga31ef80bf1084fac4e4675c823246bab8"> 281</a></span> <span class="preprocessor">#define USB_LANGID_SLV 0x0424 </span></div><div class="line"><a name="l00282"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga2bfcf5448108c461bf424819a2e1ed2a"> 282</a></span> <span class="preprocessor">#define USB_LANGID_SPA 0x040a </span></div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga8a673f2ea379d57d8149dc8e84f869ca"> 283</a></span> <span class="preprocessor">#define USB_LANGID_SPA_MX 0x080a </span></div><div class="line"><a name="l00284"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga59e594203c54cd7433d89c942a761f7e"> 284</a></span> <span class="preprocessor">#define USB_LANGID_SPA_MDN 0x0c0a </span></div><div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga2f4fab8fb0826b6f31e4efe4d71b13dd"> 285</a></span> <span class="preprocessor">#define USB_LANGID_SPA_GT 0x100a </span></div><div class="line"><a name="l00286"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaaea75d46b7f6562d9e806a179052c6e2"> 286</a></span> <span class="preprocessor">#define USB_LANGID_SPA_CR 0x140a </span></div><div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gad622f699a8f8f9ad2ea73819d6e32af9"> 287</a></span> <span class="preprocessor">#define USB_LANGID_SPA_PA 0x180a </span></div><div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga6f0f08f615e13644f52dc02739fa05e1"> 288</a></span> <span class="preprocessor">#define USB_LANGID_SPA_DO 0x1c0a </span></div><div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gae24f278743cf3c741f3f48d59a1dfd52"> 289</a></span> <span class="preprocessor">#define USB_LANGID_SPA_VE 0x200a </span></div><div class="line"><a name="l00290"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga7e28b3378153e597469fe8df74da4cae"> 290</a></span> <span class="preprocessor">#define USB_LANGID_SPA_CO 0x240a </span></div><div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga8db004aa750f892b83740a0b61e0a3eb"> 291</a></span> <span class="preprocessor">#define USB_LANGID_SPA_PE 0x280a </span></div><div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaea793f863766fc994fdb09788ae59759"> 292</a></span> <span class="preprocessor">#define USB_LANGID_SPA_AR 0x2c0a </span></div><div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga8e07181367527b661b84f0350be952f8"> 293</a></span> <span class="preprocessor">#define USB_LANGID_SPA_EC 0x300a </span></div><div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaefa1f560b1ca74a00630e70d77436044"> 294</a></span> <span class="preprocessor">#define USB_LANGID_SPA_CL 0x340a </span></div><div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga095b147ad2419a3a429bebd348f00238"> 295</a></span> <span class="preprocessor">#define USB_LANGID_SPA_UY 0x380a </span></div><div class="line"><a name="l00296"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga9a9873fb8fe9f89638baf009a38f5c22"> 296</a></span> <span class="preprocessor">#define USB_LANGID_SPA_PY 0x3c0a </span></div><div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga68377f08a887c27043d4c6feb658559d"> 297</a></span> <span class="preprocessor">#define USB_LANGID_SPA_BO 0x400a </span></div><div class="line"><a name="l00298"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga725c18b6dfe52c1dc5dda3f33b976177"> 298</a></span> <span class="preprocessor">#define USB_LANGID_SPA_SV 0x440a </span></div><div class="line"><a name="l00299"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gafc34fac9d83ddfb37d15f4ba36f1e417"> 299</a></span> <span class="preprocessor">#define USB_LANGID_SPA_HN 0x480a </span></div><div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga99e5fac34f2da15b9585e8a430e74f94"> 300</a></span> <span class="preprocessor">#define USB_LANGID_SPA_NI 0x4c0a </span></div><div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaa39b4c1857fd8251c20fe104d81438f9"> 301</a></span> <span class="preprocessor">#define USB_LANGID_SPA_PR 0x500a </span></div><div class="line"><a name="l00302"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga8eabbcb878e4cad190fa58a8c18cbd3a"> 302</a></span> <span class="preprocessor">#define USB_LANGID_NSO 0x0430 </span></div><div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga5e3c899b43b8e37f7757abc8451bdf0f"> 303</a></span> <span class="preprocessor">#define USB_LANGID_SWA 0x0441 </span></div><div class="line"><a name="l00304"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga41e33d555e7333d819e0dc7cf6380fc3"> 304</a></span> <span class="preprocessor">#define USB_LANGID_SWE 0x041d </span></div><div class="line"><a name="l00305"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gadf04828d7318b5fa5852ed60b962078a"> 305</a></span> <span class="preprocessor">#define USB_LANGID_SWE_FI 0x081d </span></div><div class="line"><a name="l00306"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga74e6282e8292ae356b6a37d14cd3fac6"> 306</a></span> <span class="preprocessor">#define USB_LANGID_TAM 0x0449 </span></div><div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga5f6a9eb5e0aeb77746daf95c05c9286e"> 307</a></span> <span class="preprocessor">#define USB_LANGID_TAT 0x0444 </span></div><div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga70eff89f5356ad720b23c72e9abcdc8d"> 308</a></span> <span class="preprocessor">#define USB_LANGID_TEL 0x044a </span></div><div class="line"><a name="l00309"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga25fa707a9b01e5867b5332f0fe6825e7"> 309</a></span> <span class="preprocessor">#define USB_LANGID_THA 0x041e </span></div><div class="line"><a name="l00310"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga1adc1c2b51dd63f5304266b84bc20651"> 310</a></span> <span class="preprocessor">#define USB_LANGID_TUR 0x041f </span></div><div class="line"><a name="l00311"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga2d577b14416c33ba5c0ac7a17fdefbf6"> 311</a></span> <span class="preprocessor">#define USB_LANGIG_UKR 0x0422 </span></div><div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaaacf7b5620eb1fbf60de7bb3af7b13f1"> 312</a></span> <span class="preprocessor">#define USB_LANGID_URD_PK 0x0420 </span></div><div class="line"><a name="l00313"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gac7520d8a8bc860ed3563c2ca8a534871"> 313</a></span> <span class="preprocessor">#define USB_LANGID_URD_IN 0x0820 </span></div><div class="line"><a name="l00314"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gac95459cee6a68f93c288aa25f30ba5f7"> 314</a></span> <span class="preprocessor">#define USB_LANGID_UZB_LAT 0x0443 </span></div><div class="line"><a name="l00315"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga5d430de8f166cd8bf2f9e9c5c0c39f10"> 315</a></span> <span class="preprocessor">#define USB_LANGID_UZB_CYR 0x0843 </span></div><div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga228fdca1570c7823e9d7aa808a851e00"> 316</a></span> <span class="preprocessor">#define USB_LANGID_VIE 0x042a </span></div><div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#ga7e9f68ef1d053fce180916dbff26d068"> 320</a></span> <span class="preprocessor">struct usb_header_descriptor {</span></div><div class="line"><a name="l00321"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaa68e8b227605e7630192ce1175526a3c"> 321</a></span>  uint8_t bLength; </div><div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaa079548a39a9818621a7662e7198d30a"> 322</a></span>  uint8_t bDescriptorType; </div><div class="line"><a name="l00323"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gab5ca7ebc64cf266f0ca8dab2e95ca5bf"> 323</a></span> } __attribute__((packed));</div><div class="line"><a name="l00324"></a><span class="lineno"><a class="line" href="../../d0/d61/a00100.html#gaadeba8e6bef18787f238f073ddf458e7"> 324</a></span> </div><div class="line"><a name="l00330"></a><span class="lineno"><a class="line" href="../../d5/ddf/a00224.html#a1e2a7c0e47692b77dc022e9c4f9b39bb"> 330</a></span> <span class="keyword">struct </span><a class="code" href="../../de/dc2/a00228.html">usb_device_descriptor</a> {</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#af3f980ad55af3fd6c222a8802996ab63">bLength</a>; </div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#ad1ba08da6ad5b6023f1d0d1461daab7d">bDescriptorType</a>; </div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>  uint16_t <a class="code" href="../../de/dc2/a00228.html#aa400edb6c3183d4922411cdaf980b84e">bcdUSB</a>; </div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#aa657267e1d9762b7d2ed3eb60a78d9ad">bDeviceClass</a>; </div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#aecfbe730bc3eeccc9c4b5fd17f5f3c3c">bDeviceSubClass</a>; </div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#a56829af76e57a6ea4fc621b52a0664f8">bDeviceProtocol</a>; </div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#ac7f47eb197506ac5c555bb4f2fe82d32">bMaxPacketSize0</a>; </div><div class="line"><a name="l00338"></a><span class="lineno"><a class="line" href="../../de/dc2/a00228.html"> 338</a></span>  uint16_t <a class="code" href="../../de/dc2/a00228.html#a043126e48bebbab536540e44428b6b4f">idVendor</a>; </div><div class="line"><a name="l00339"></a><span class="lineno"><a class="line" href="../../de/dc2/a00228.html#af3f980ad55af3fd6c222a8802996ab63"> 339</a></span>  uint16_t <a class="code" href="../../de/dc2/a00228.html#a70d5ecc7bad486b8a8840d86aa151579">idProduct</a>; </div><div class="line"><a name="l00340"></a><span class="lineno"><a class="line" href="../../de/dc2/a00228.html#ad1ba08da6ad5b6023f1d0d1461daab7d"> 340</a></span>  uint16_t <a class="code" href="../../de/dc2/a00228.html#a41416aa4a49999d2f3f0f67bdc5fa7da">bcdDevice</a>; </div><div class="line"><a name="l00341"></a><span class="lineno"><a class="line" href="../../de/dc2/a00228.html#aa400edb6c3183d4922411cdaf980b84e"> 341</a></span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#ad082330020575944b8471459b816cb40">iManufacturer</a>; </div><div class="line"><a name="l00342"></a><span class="lineno"><a class="line" href="../../de/dc2/a00228.html#aa657267e1d9762b7d2ed3eb60a78d9ad"> 342</a></span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#acb90b91c59e65adbcc21949cf0f486f7">iProduct</a>; </div><div class="line"><a name="l00343"></a><span class="lineno"><a class="line" href="../../de/dc2/a00228.html#aecfbe730bc3eeccc9c4b5fd17f5f3c3c"> 343</a></span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#a105d91b68091e61c9b13ea673fb98eaf">iSerialNumber</a>; </div><div class="line"><a name="l00344"></a><span class="lineno"><a class="line" href="../../de/dc2/a00228.html#a56829af76e57a6ea4fc621b52a0664f8"> 344</a></span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#a603204b0517e9ece9bc0d8476b2a7cdc">bNumConfigurations</a>; </div><div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="../../de/dc2/a00228.html#ac7f47eb197506ac5c555bb4f2fe82d32"> 345</a></span> } __attribute__((packed));</div><div class="line"><a name="l00346"></a><span class="lineno"><a class="line" href="../../de/dc2/a00228.html#a043126e48bebbab536540e44428b6b4f"> 346</a></span> </div><div class="line"><a name="l00352"></a><span class="lineno"><a class="line" href="../../de/dc2/a00228.html#a603204b0517e9ece9bc0d8476b2a7cdc"> 352</a></span> <span class="keyword">struct </span><a class="code" href="../../d0/d53/a00232.html">usb_qualifier_descriptor</a> {</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#af3f980ad55af3fd6c222a8802996ab63">bLength</a>; </div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#ad1ba08da6ad5b6023f1d0d1461daab7d">bDescriptorType</a>; </div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  uint16_t <a class="code" href="../../de/dc2/a00228.html#aa400edb6c3183d4922411cdaf980b84e">bcdUSB</a>; </div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#aa657267e1d9762b7d2ed3eb60a78d9ad">bDeviceClass</a>; </div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#aecfbe730bc3eeccc9c4b5fd17f5f3c3c">bDeviceSubClass</a>; </div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#a56829af76e57a6ea4fc621b52a0664f8">bDeviceProtocol</a>; </div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#ac7f47eb197506ac5c555bb4f2fe82d32">bMaxPacketSize0</a>; </div><div class="line"><a name="l00360"></a><span class="lineno"><a class="line" href="../../d0/d53/a00232.html"> 360</a></span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#a603204b0517e9ece9bc0d8476b2a7cdc">bNumConfigurations</a>; </div><div class="line"><a name="l00361"></a><span class="lineno"><a class="line" href="../../d0/d53/a00232.html#a3e6c8b51ad11a3da0fc009c687a77dfa"> 361</a></span>  uint8_t bReserved; </div><div class="line"><a name="l00362"></a><span class="lineno"><a class="line" href="../../d0/d53/a00232.html#a582044cb88d5f55bb3ef0806b76f9264"> 362</a></span> } __attribute__((packed));</div><div class="line"><a name="l00363"></a><span class="lineno"><a class="line" href="../../d0/d53/a00232.html#a874de12e9e13ce063723c54efeefad3a"> 363</a></span> </div><div class="line"><a name="l00368"></a><span class="lineno"><a class="line" href="../../d0/d53/a00232.html#aad381579b0c8dc6ea6847da18ff317f8"> 368</a></span> <span class="keyword">struct </span><a class="code" href="../../d7/d40/a00236.html">usb_config_descriptor</a> {</div><div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="../../d0/d53/a00232.html#a99ff8e4de9012f83efe7c136100e46e8"> 369</a></span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#af3f980ad55af3fd6c222a8802996ab63">bLength</a>; </div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#ad1ba08da6ad5b6023f1d0d1461daab7d">bDescriptorType</a>; </div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  uint16_t wTotalLength; </div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  uint8_t bNumInterfaces; </div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  uint8_t bConfigurationValue; </div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  uint8_t iConfiguration; </div><div class="line"><a name="l00376"></a><span class="lineno"><a class="line" href="../../d7/d40/a00236.html"> 376</a></span>  uint8_t bmAttributes; </div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>  uint8_t bMaxPower; </div><div class="line"><a name="l00382"></a><span class="lineno"><a class="line" href="../../d7/d40/a00236.html#af50d14a1e97dab1a4483f03b969ca431"> 382</a></span> } __attribute__((packed));</div><div class="line"><a name="l00383"></a><span class="lineno"><a class="line" href="../../d7/d40/a00236.html#ace6c0975162873b87744269bd188d297"> 383</a></span> </div><div class="line"><a name="l00388"></a><span class="lineno"><a class="line" href="../../d7/d40/a00236.html#a228c71b864eef8c5b997ad49b996ae9b"> 388</a></span> <span class="keyword">struct </span><a class="code" href="../../d9/d21/a00240.html">usb_interface_descriptor</a> {</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#af3f980ad55af3fd6c222a8802996ab63">bLength</a>; </div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#ad1ba08da6ad5b6023f1d0d1461daab7d">bDescriptorType</a>; </div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  uint8_t bInterfaceNumber; </div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  uint8_t bAlternateSetting; </div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  uint8_t bNumEndpoints; </div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  uint8_t bInterfaceClass; </div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  uint8_t bInterfaceSubClass; </div><div class="line"><a name="l00396"></a><span class="lineno"><a class="line" href="../../d9/d21/a00240.html"> 396</a></span>  uint8_t bInterfaceProtocol; </div><div class="line"><a name="l00397"></a><span class="lineno"><a class="line" href="../../d9/d21/a00240.html#a7959ad865fb5527dba879ded533f5976"> 397</a></span>  uint8_t iInterface; </div><div class="line"><a name="l00398"></a><span class="lineno"><a class="line" href="../../d9/d21/a00240.html#a757761276c9053ed877cee89cba167ea"> 398</a></span> } __attribute__((packed));</div><div class="line"><a name="l00399"></a><span class="lineno"><a class="line" href="../../d9/d21/a00240.html#aea613784e25f453d059635a8d292a249"> 399</a></span> </div><div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="../../d9/d21/a00240.html#ac807fb07b6b89886836ad5c1253dae82"> 403</a></span> <span class="keyword">struct </span><a class="code" href="../../d6/d08/a00244.html">usb_iad_descriptor</a> {</div><div class="line"><a name="l00404"></a><span class="lineno"><a class="line" href="../../d9/d21/a00240.html#a177ebd30941b905658e1f89654d320c2"> 404</a></span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#af3f980ad55af3fd6c222a8802996ab63">bLength</a>; </div><div class="line"><a name="l00405"></a><span class="lineno"><a class="line" href="../../d9/d21/a00240.html#a63008abbea76cc397836554747386055"> 405</a></span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#ad1ba08da6ad5b6023f1d0d1461daab7d">bDescriptorType</a>; </div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>  uint8_t bFirstInterface; </div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>  uint8_t bInterfaceCount; </div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>  uint8_t bFunctionClass; </div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>  uint8_t bFunctionSubClass; </div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  uint8_t bFunctionProtocol; </div><div class="line"><a name="l00411"></a><span class="lineno"><a class="line" href="../../d6/d08/a00244.html"> 411</a></span>  uint8_t iFunction; </div><div class="line"><a name="l00413"></a><span class="lineno"><a class="line" href="../../d6/d08/a00244.html#aea76281c184c2edc4c0044774329c84f"> 413</a></span> } __attribute__((packed));</div><div class="line"><a name="l00414"></a><span class="lineno"><a class="line" href="../../d6/d08/a00244.html#a413aec9e7bcc1999b0e72ad8ba7051a5"> 414</a></span> </div><div class="line"><a name="l00418"></a><span class="lineno"><a class="line" href="../../d6/d08/a00244.html#a6d42c4f6a3e7819d3fbb3a2686b2f7a0"> 418</a></span> <span class="keyword">struct </span><a class="code" href="../../dd/dd7/a00248.html">usb_endpoint_descriptor</a> {</div><div class="line"><a name="l00419"></a><span class="lineno"><a class="line" href="../../d6/d08/a00244.html#af4033521399a2cf040f94894b8015335"> 419</a></span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#af3f980ad55af3fd6c222a8802996ab63">bLength</a>; </div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#ad1ba08da6ad5b6023f1d0d1461daab7d">bDescriptorType</a>; </div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  uint8_t bEndpointAddress; </div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  uint8_t bmAttributes; </div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  uint16_t wMaxPacketSize; </div><div class="line"><a name="l00426"></a><span class="lineno"><a class="line" href="../../dd/dd7/a00248.html"> 426</a></span>  uint8_t bInterval; </div><div class="line"><a name="l00428"></a><span class="lineno"><a class="line" href="../../dd/dd7/a00248.html#aa6e24b3aa0c8130a4d39f2133ac5ed12"> 428</a></span> } __attribute__((packed));</div><div class="line"><a name="l00429"></a><span class="lineno"><a class="line" href="../../dd/dd7/a00248.html#a5007051761d339b5bb27268a016947a5"> 429</a></span> </div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="keyword">struct </span><a class="code" href="../../dc/ded/a00252.html">usb_string_descriptor</a> {</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#af3f980ad55af3fd6c222a8802996ab63">bLength</a>; </div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#ad1ba08da6ad5b6023f1d0d1461daab7d">bDescriptorType</a>; </div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>  uint16_t wString[]; </div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span> } __attribute__((packed, aligned(2)));</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span> </div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="keyword">struct </span><a class="code" href="../../d0/def/a00256.html">usb_debug_descriptor</a> {</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#af3f980ad55af3fd6c222a8802996ab63">bLength</a>; </div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>  uint8_t <a class="code" href="../../de/dc2/a00228.html#ad1ba08da6ad5b6023f1d0d1461daab7d">bDescriptorType</a>; </div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>  uint8_t bDebugInEndpoint; </div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>  uint8_t bDebugOutEndpoint; </div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span> } __attribute__((packed));</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span> </div><div class="line"><a name="l00457"></a><span class="lineno"><a class="line" href="../../d0/def/a00256.html#a32a4a0365bea8aef7b508060e3f6ab12"> 457</a></span> <span class="preprocessor">#if defined (__cplusplus)</span></div><div class="line"><a name="l00458"></a><span class="lineno"><a class="line" href="../../d0/def/a00256.html#a13f8f52175fe797a42a69d25006a62a7"> 458</a></span> }</div><div class="line"><a name="l00459"></a><span class="lineno"><a class="line" href="../../d0/def/a00256.html#a002dcd77452e5a406a18302cb47869c1"> 459</a></span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00460"></a><span class="lineno"><a class="line" href="../../d0/def/a00256.html#a7f503a02c94f81f8ac7bb387b28f17af"> 460</a></span> <span class="preprocessor">#endif //_USB_STD_H_</span></div><div class="ttc" id="a00228_html_a56829af76e57a6ea4fc621b52a0664f8"><div class="ttname"><a href="../../de/dc2/a00228.html#a56829af76e57a6ea4fc621b52a0664f8">usb_device_descriptor::bDeviceProtocol</a></div><div class="ttdeci">uint8_t bDeviceProtocol</div><div class="ttdoc">USB device protocol. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00344">usb_std.h:344</a></div></div>
- <div class="ttc" id="a00228_html_aecfbe730bc3eeccc9c4b5fd17f5f3c3c"><div class="ttname"><a href="../../de/dc2/a00228.html#aecfbe730bc3eeccc9c4b5fd17f5f3c3c">usb_device_descriptor::bDeviceSubClass</a></div><div class="ttdeci">uint8_t bDeviceSubClass</div><div class="ttdoc">USB device subclass. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00343">usb_std.h:343</a></div></div>
- <div class="ttc" id="a00256_html"><div class="ttname"><a href="../../d0/def/a00256.html">usb_debug_descriptor</a></div><div class="ttdoc">USB debug descriptor. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00456">usb_std.h:456</a></div></div>
- <div class="ttc" id="a00244_html"><div class="ttname"><a href="../../d6/d08/a00244.html">usb_iad_descriptor</a></div><div class="ttdoc">USB interface association descriptor. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00411">usb_std.h:411</a></div></div>
- <div class="ttc" id="a00228_html_ad1ba08da6ad5b6023f1d0d1461daab7d"><div class="ttname"><a href="../../de/dc2/a00228.html#ad1ba08da6ad5b6023f1d0d1461daab7d">usb_device_descriptor::bDescriptorType</a></div><div class="ttdeci">uint8_t bDescriptorType</div><div class="ttdoc">USB_DTYPE_DEVICE Device descriptor. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00340">usb_std.h:340</a></div></div>
- <div class="ttc" id="a00228_html_a105d91b68091e61c9b13ea673fb98eaf"><div class="ttname"><a href="../../de/dc2/a00228.html#a105d91b68091e61c9b13ea673fb98eaf">usb_device_descriptor::iSerialNumber</a></div><div class="ttdeci">uint8_t iSerialNumber</div><div class="ttdoc">String index for the product serial number. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00351">usb_std.h:351</a></div></div>
- <div class="ttc" id="a00228_html_aa400edb6c3183d4922411cdaf980b84e"><div class="ttname"><a href="../../de/dc2/a00228.html#aa400edb6c3183d4922411cdaf980b84e">usb_device_descriptor::bcdUSB</a></div><div class="ttdeci">uint16_t bcdUSB</div><div class="ttdoc">BCD of the supported USB specification. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00341">usb_std.h:341</a></div></div>
- <div class="ttc" id="a00228_html_aa657267e1d9762b7d2ed3eb60a78d9ad"><div class="ttname"><a href="../../de/dc2/a00228.html#aa657267e1d9762b7d2ed3eb60a78d9ad">usb_device_descriptor::bDeviceClass</a></div><div class="ttdeci">uint8_t bDeviceClass</div><div class="ttdoc">USB device class. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00342">usb_std.h:342</a></div></div>
- <div class="ttc" id="a00228_html_ac7f47eb197506ac5c555bb4f2fe82d32"><div class="ttname"><a href="../../de/dc2/a00228.html#ac7f47eb197506ac5c555bb4f2fe82d32">usb_device_descriptor::bMaxPacketSize0</a></div><div class="ttdeci">uint8_t bMaxPacketSize0</div><div class="ttdoc">Size of the control endpoint&#39;s bank in bytes. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00345">usb_std.h:345</a></div></div>
- <div class="ttc" id="a00228_html_ad082330020575944b8471459b816cb40"><div class="ttname"><a href="../../de/dc2/a00228.html#ad082330020575944b8471459b816cb40">usb_device_descriptor::iManufacturer</a></div><div class="ttdeci">uint8_t iManufacturer</div><div class="ttdoc">String index for the manufacturer&#39;s name. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00349">usb_std.h:349</a></div></div>
- <div class="ttc" id="a00232_html"><div class="ttname"><a href="../../d0/d53/a00232.html">usb_qualifier_descriptor</a></div><div class="ttdoc">USB device qualifier descriptor. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00360">usb_std.h:360</a></div></div>
- <div class="ttc" id="a00228_html_a41416aa4a49999d2f3f0f67bdc5fa7da"><div class="ttname"><a href="../../de/dc2/a00228.html#a41416aa4a49999d2f3f0f67bdc5fa7da">usb_device_descriptor::bcdDevice</a></div><div class="ttdeci">uint16_t bcdDevice</div><div class="ttdoc">Product release (version) number. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00348">usb_std.h:348</a></div></div>
- <div class="ttc" id="a00228_html_a603204b0517e9ece9bc0d8476b2a7cdc"><div class="ttname"><a href="../../de/dc2/a00228.html#a603204b0517e9ece9bc0d8476b2a7cdc">usb_device_descriptor::bNumConfigurations</a></div><div class="ttdeci">uint8_t bNumConfigurations</div><div class="ttdoc">Total number of configurations supported by the device. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00352">usb_std.h:352</a></div></div>
- <div class="ttc" id="a00252_html"><div class="ttname"><a href="../../dc/ded/a00252.html">usb_string_descriptor</a></div><div class="ttdoc">USB string descriptor. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00444">usb_std.h:444</a></div></div>
- <div class="ttc" id="a00228_html_a70d5ecc7bad486b8a8840d86aa151579"><div class="ttname"><a href="../../de/dc2/a00228.html#a70d5ecc7bad486b8a8840d86aa151579">usb_device_descriptor::idProduct</a></div><div class="ttdeci">uint16_t idProduct</div><div class="ttdoc">Unique product ID for the USB product. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00347">usb_std.h:347</a></div></div>
- <div class="ttc" id="a00240_html"><div class="ttname"><a href="../../d9/d21/a00240.html">usb_interface_descriptor</a></div><div class="ttdoc">USB interface descriptor. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00396">usb_std.h:396</a></div></div>
- <div class="ttc" id="a00228_html_a043126e48bebbab536540e44428b6b4f"><div class="ttname"><a href="../../de/dc2/a00228.html#a043126e48bebbab536540e44428b6b4f">usb_device_descriptor::idVendor</a></div><div class="ttdeci">uint16_t idVendor</div><div class="ttdoc">Vendor ID for the USB product. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00346">usb_std.h:346</a></div></div>
- <div class="ttc" id="a00228_html"><div class="ttname"><a href="../../de/dc2/a00228.html">usb_device_descriptor</a></div><div class="ttdoc">Represents a USB device descriptor. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00338">usb_std.h:338</a></div></div>
- <div class="ttc" id="a00228_html_acb90b91c59e65adbcc21949cf0f486f7"><div class="ttname"><a href="../../de/dc2/a00228.html#acb90b91c59e65adbcc21949cf0f486f7">usb_device_descriptor::iProduct</a></div><div class="ttdeci">uint8_t iProduct</div><div class="ttdoc">String index for the product name/details. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00350">usb_std.h:350</a></div></div>
- <div class="ttc" id="a00248_html"><div class="ttname"><a href="../../dd/dd7/a00248.html">usb_endpoint_descriptor</a></div><div class="ttdoc">USB endpoint descriptor. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00426">usb_std.h:426</a></div></div>
- <div class="ttc" id="a00228_html_af3f980ad55af3fd6c222a8802996ab63"><div class="ttname"><a href="../../de/dc2/a00228.html#af3f980ad55af3fd6c222a8802996ab63">usb_device_descriptor::bLength</a></div><div class="ttdeci">uint8_t bLength</div><div class="ttdoc">Size of the descriptor, in bytes. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00339">usb_std.h:339</a></div></div>
- <div class="ttc" id="a00236_html"><div class="ttname"><a href="../../d7/d40/a00236.html">usb_config_descriptor</a></div><div class="ttdoc">USB device configuration descriptor. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d24/a00068_source.html#l00376">usb_std.h:376</a></div></div>
- </div><!-- fragment --></div><!-- contents -->
- </div><!-- doc-content -->
- <!-- start footer part -->
- <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
- <ul>
- <li class="navelem"><a class="el" href="../../dir_bfccd401955b95cf8c75461437045ac0.html">inc</a></li><li class="navelem"><b>usb_std.h</b></li>
- <li class="footer">Generated by
- <a href="http://www.doxygen.org/index.html">
- <img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
- </ul>
- </div>
- </body>
- </html>
|