【MM32 eMiniBoard测评】USB测试
<p>我上一节列出了环境搭建的说明</p><p>我申请这块开发板的主要目的是玩玩USB,所以先测试USB功能</p>
<p>先下载官方示例程序看一看</p>
<p>在官方示例包中如下路径: <strong>MM32F013x_Samples\LibSamples\USB\USB_HID_Suspend</strong></p>
<p>程序包在上一节中已有下载连接。</p>
<p> </p>
<p>先说一些要修改的:</p>
<p>在示例包中修改usb_desc.c文件中的一些USB描述符,</p>
<p>如 CustomHID_StringProduct</p>
<p>我将它改成了</p>
<pre>
<code class="language-cpp">const u8 CustomHID_StringProduct = {
CUSTOMHID_SIZ_STRING_PRODUCT, // bLength
USB_STRING_DESCRIPTOR_TYPE, // bDescriptorType
'e', 0,
'e', 0,
'w', 0,
'o', 0,
'r', 0,
'l', 0,
'd', 0,
'.', 0,
'm', 0,
'm', 0,
'3', 0,
'2', 0,
'H', 0,
'I', 0,
'D', 0
};</code></pre>
<p>main代码如下:</p>
<pre>
<code class="language-cpp"> GPIO_Configuration();
USB_NVIC_Config();
USB_ClockConfig();
USB_Init();
while(1) {
if(bDeviceState == CONFIGURED) {
if(!(_GetUSB_CTRL1()&EP1_CTRL_TRANEN)) {
UserToPMABufferCopy(gTableData, ENDP1,BUFF_SIZE); //BUFF_SIZE
_SetUSB_CTRL1(EP1_CTRL_TRANEN | BUFF_SIZE) ; //Loop IN transmission
for(int i=0;i<0x5fffff;i++){
__nop();
}//延时约1秒,默认无延时,
}
}
}</code></pre>
<p>编译,下载到芯片中,</p>
<p>PC端用某HID测试工具进行测试</p>
<p>见图:</p>
<p></p>
<p>HID设备列表中已有该项【eeworld.mm32HID】</p>
<p>选择该项,打开设备,你会发现每隔1秒钟会收到HID的64字节包数据</p>
<p></p>
<p>至此本章节完成,达到预定目标。</p>
<p>下节测试HID收发数据</p>
<p> </p>
<p>USB传输的最高速率能够达到多少?</p>
w494143467 发表于 2020-10-30 15:14
USB传输的最高速率能够达到多少?
<p>上位机用的别人现成的工具,以后自己写一个就知道了</p>
<p>用的库函数,性能很差,要多优化,估计能到500-800KB/S</p>
<p>某HID测试工具 是什么工具?</p>
页:
[1]