📄 ez-usb 68013a开发指南 - - csdnblog.htm
字号:
stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t"
o:spt="75" coordsize="21600,21600"><V:STROKE
joinstyle="miter"></V:STROKE><V:FORMULAS><V:F
eqn="if lineDrawn pixelLineWidth 0"></V:F><V:F eqn="sum @0 1 0"></V:F><V:F
eqn="sum 0 0 @1"></V:F><V:F eqn="prod @2 1 2"></V:F><V:F
eqn="prod @3 21600 pixelWidth"></V:F><V:F
eqn="prod @3 21600 pixelHeight"></V:F><V:F eqn="sum @0 0 1"></V:F><V:F
eqn="prod @6 1 2"></V:F><V:F eqn="prod @7 21600 pixelWidth"></V:F><V:F
eqn="sum @8 21600 0"></V:F><V:F eqn="prod @7 21600 pixelHeight"></V:F><V:F
eqn="sum @10 21600 0"></V:F></V:FORMULAS><V:PATH o:connecttype="rect"
gradientshapeok="t" o:extrusionok="f"></V:PATH><O:LOCK aspectratio="t"
v:ext="edit"></O:LOCK></V:SHAPETYPE><V:SHAPE id=_x0000_i1025
style="WIDTH: 83.25pt; HEIGHT: 129pt" type="#_x0000_t75"><V:IMAGEDATA
o:title=""
src="file:///C:\DOCUME~1\cs\LOCALS~1\Temp\msohtml1\01\clip_image001.png"></V:IMAGEDATA></V:SHAPE><O:P></O:P></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 36.75pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">2</SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">)<SPAN
lang=EN-US>FW.C</SPAN>负责了设备连接、重枚举、设备初始化等过程<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 36.75pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">3</SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">)<SPAN
lang=EN-US>PERIPH.C</SPAN>负责响应各种中断事件。<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 36.75pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">4</SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">)<SPAN
lang=EN-US>dscr.a51</SPAN>文件定义了<SPAN
lang=EN-US>USB</SPAN>设备握手时需要的各种描述符<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 36.75pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">5</SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">)<SPAN
lang=EN-US>FX2REGS.H</SPAN>定义了<SPAN lang=EN-US>USB</SPAN>中所有的寄存器<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 36.75pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">6</SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">)<SPAN
lang=EN-US>FX2.H</SPAN>主要定义了各种二级中断向量和描述符的数据结构<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 36.75pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">7</SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">)编译后的二进制代码和工程同名,扩展名为<SPAN
lang=EN-US>HEX</SPAN>。<SPAN lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 36.75pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">8) </SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">相应的头文件和类库在<SPAN lang=EN-US>KEIL
C</SPAN>的<SPAN lang=EN-US>lib</SPAN>和<SPAN
lang=EN-US>inc</SPAN>文件夹内,需在项目设置中设置路径。<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 36.75pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 36.75pt; TEXT-INDENT: -18.75pt; mso-list: l1 level2 lfo1; tab-stops: list 36.75pt"><STRONG
style="mso-bidi-font-weight: normal"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><SPAN
style="mso-list: Ignore">4.2<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN></SPAN></STRONG><STRONG
style="mso-bidi-font-weight: normal"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN
style="mso-spacerun: yes"> </SPAN></SPAN></STRONG><STRONG
style="mso-bidi-font-weight: normal"><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">硬件程序烧录<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></STRONG></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 54.75pt; TEXT-INDENT: -18pt; mso-list: l3 level1 lfo2; tab-stops: list 54.75pt"><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><SPAN
style="mso-list: Ignore">1)</SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">因为本产品要求将二进制代码和硬件<SPAN
lang=EN-US>PID/VID</SPAN>烧录在<SPAN lang=EN-US>EEPROM</SPAN>,而不是使用<SPAN
lang=EN-US>CYPRESS</SPAN>推荐的在线下载方式,所以外部采用了<SPAN lang=EN-US>8K</SPAN>的<SPAN
lang=EN-US>EEPROM</SPAN>。上电后<ST1:CHMETCNV w:st="on" unitname="a"
sourcevalue="68013" hasspace="False" negative="False" numbertype="1"
tcsc="0"><SPAN lang=EN-US><B
style="COLOR: black; BACKGROUND-COLOR: #ffff66">68013</B>A</SPAN></ST1:CHMETCNV>会将<SPAN
lang=EN-US>EEPROM</SPAN>中的数据和程序加载到<SPAN lang=EN-US>RAM</SPAN>中运行。<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 54.75pt; TEXT-INDENT: -18pt; mso-list: l3 level1 lfo2; tab-stops: list 54.75pt"><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><SPAN
style="mso-list: Ignore">2)</SPAN></SPAN><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">HEX</SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">文件只是<ST1:CHMETCNV w:st="on"
unitname="a" sourcevalue="68013" hasspace="False" negative="False"
numbertype="1" tcsc="0"><SPAN lang=EN-US><B
style="COLOR: black; BACKGROUND-COLOR: #ffff66">68013</B>A</SPAN></ST1:CHMETCNV>上<SPAN
lang=EN-US>8051</SPAN>的程序代码,还要加上<SPAN
lang=EN-US>PID/VID</SPAN>等信息才能正确运行,<SPAN
lang=EN-US>CYPRESS</SPAN>在开发包中提供了<SPAN
lang=EN-US>HEX2BIN.EXE</SPAN>这个工具,可以根据<SPAN
lang=EN-US>HEX</SPAN>生成完备的<SPAN lang=EN-US>IIC</SPAN>文件,将此文件烧录到<SPAN
lang=EN-US>EEPROM</SPAN>上即可。<SPAN lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 54.75pt; TEXT-INDENT: -18pt; mso-list: l3 level1 lfo2; tab-stops: list 54.75pt"><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><SPAN
style="mso-list: Ignore">3)</SPAN></SPAN><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">HEX2BIN.EXE</SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">的使用方法如下:<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 49.5pt; TEXT-INDENT: 5.25pt"><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">将<SPAN
lang=EN-US>XXX.HEX</SPAN>文件拷贝到<SPAN
lang=EN-US>HEX2BIN.EXE</SPAN>所在目录,打开<SPAN
lang=EN-US>CMD</SPAN>,按如下格式输入:<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 49.5pt; TEXT-INDENT: 5.25pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">hex2bix -i -o xxx.iic xxx.hex -f
0xC2 -v 0x1234 -p 0x1234<O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 49.5pt; TEXT-INDENT: 5.25pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">-i<SPAN
style="mso-tab-count: 2">
</SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">表示输出文件,也就是<SPAN
lang=EN-US>IIC</SPAN>文件<SPAN lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 49.5pt; TEXT-INDENT: 5.25pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">-o<SPAN
style="mso-tab-count: 1"> </SPAN><SPAN
style="mso-tab-count: 1"> </SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">表示输入文件,也就是<SPAN
lang=EN-US>HEX</SPAN>文件<SPAN lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 49.5pt; TEXT-INDENT: 5.25pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">-f<SPAN
style="mso-tab-count: 2">
</SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">表示<ST1:CHMETCNV w:st="on"
unitname="a" sourcevalue="68013" hasspace="False" negative="False"
numbertype="1" tcsc="0"><SPAN lang=EN-US><B
style="COLOR: black; BACKGROUND-COLOR: #ffff66">68013</B>A</SPAN></ST1:CHMETCNV>发送<SPAN
lang=EN-US>PID/VID</SPAN>的方式,这里为<SPAN lang=EN-US>C0</SPAN>,即从<SPAN
lang=EN-US>EEPROM</SPAN>上读取。<SPAN lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 49.5pt; TEXT-INDENT: 5.25pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">-v<SPAN
style="mso-tab-count: 1"> </SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">表示<SPAN
lang=EN-US>VID</SPAN>的<SPAN lang=EN-US>BCD</SPAN>码,开发阶段使用<SPAN
lang=EN-US>1234<O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 49.5pt; TEXT-INDENT: 5.25pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">-p<SPAN
style="mso-tab-count: 1"> </SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">表示<SPAN
lang=EN-US>PID</SPAN>的<SPAN lang=EN-US>BCD</SPAN>码,开发阶段使用<SPAN
lang=EN-US>1234<O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 54.75pt; TEXT-INDENT: -18pt; mso-list: l3 level1 lfo2; tab-stops: list 54.75pt"><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><SPAN
style="mso-list: Ignore">4)</SPAN></SPAN><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">将生成的<SPAN
lang=EN-US>IIC</SPAN>文件用烧写器烧录到<SPAN
lang=EN-US>EEPROM</SPAN>上,本项目使用的是深圳思泰佳电子公司的<SPAN
lang=EN-US>NSP</SPAN>通用烧写器,此烧写器不支持<SPAN lang=EN-US>IIC</SPAN>类型,选择<SPAN
lang=EN-US>BIN</SPAN>类型可替代。<SPAN lang=EN-US><O:P></O:P></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 36.75pt"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><O:P></O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 36.75pt; TEXT-INDENT: -18.75pt; mso-list: l1 level2 lfo1; tab-stops: list 36.75pt"><STRONG
style="mso-bidi-font-weight: normal"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><SPAN
style="mso-list: Ignore">4.3<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN></SPAN></STRONG><STRONG
style="mso-bidi-font-weight: normal"><SPAN lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体"><SPAN
style="mso-spacerun: yes"> </SPAN></SPAN></STRONG><STRONG
style="mso-bidi-font-weight: normal"><SPAN
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">驱动的识别<SPAN
lang=EN-US><O:P></O:P></SPAN></SPAN></STRONG></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt 54.75pt; TEXT-INDENT: -18pt; mso-list: l5 level1 lfo3; tab-stops: list 54.75pt"><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><SPAN
style="mso-list: Ignore">1)</SPAN></SPAN><SPAN
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -