码迷,mamicode.com
首页 > 其他好文 > 详细

BulkLoop实验

时间:2014-08-18 23:25:33      阅读:430      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   使用   strong   文件   数据   

既然OC已经通过USB3.0接口识别了我的FX2LP最小系统,我打算做一下bulkloop例程。

第一步自然是向default FX2LP中写入bulkloop的固件程序:

利用Suite中的USB Control Center程序可以刷写RAM D:\Cypress\Cypress Suite USB 3.4.7\Firmware\Bulkloop 里面有转换好的固件程序——bulkloop.hex文件。

Figure 1

bubuko.com,布布扣

刷写成功(图2)!,设备的名字随着绑定inf文件中的PIDVID的更换而改变。RAM中的程序是掉电丢失,所以如果断开USB重连的话,会发现设备的名字又变成了default设备的名字,也就是上图1中的名字。

Figure 2

bubuko.com,布布扣

这个名字是我在inf文件中给04B4&1004设备特地起的:

Figure 3

bubuko.com,布布扣

现在可以打开Suite自带的封装好的bulkloop.exe程序进行测试:

Figure 4

bubuko.com,布布扣

测试的结果:利用EP2输出,然后利用EP6读回。

Figure 5

bubuko.com,布布扣bubuko.com,布布扣

同样,利用USB Control Center也可以测试bulkloop,下图中,利用EP2发送一组数据,然后利用EP6读回一组数据:

Figure 6

bubuko.com,布布扣

如果Transfer Data-IN点多了,返回错误;如果Transfer Data_OUT点多了,也会返回错误。借此可以理解TD_Init函数中对端点进行配置时,所提到的"Double",这里不深入解释。

Figure 7

bubuko.com,布布扣bubuko.com,布布扣

?

问题是,不同于多数教程中所提到的,我使用了USB Control Center来完成实验,而没有使用USB Console。原因是我的USB Console没有显示我插入的设备:

Figure 8 同一时刻的USB Control Center 和USB Console

bubuko.com,布布扣

总结一下实验流程:

Default FX2LP→安装cyusb.sys→FX2LP被识别成Cypress USB Generic Driver (3.4.7.000)FRANK64【RAM中没有固件】→用Control Center刷写bulkloop固件到RAM→安装cyusb.sys→FX2LP被识别成bulkloop,VID_04B4&PID_1004【RAM中有bulkloop固件】→利用Control Center进行读写实验

这里解释一下,为什么两次安装的驱动都是cyusb.sys:因为官方只提供了这么一个Win Vista x64驱动——cyusb.sys,而且官方的例程都是基于此驱动的。我在对应的cyusb.inf文件中分别添加了04B4&8613和04B4&1004两种设备(固件)的信息,在首次安装驱动的时候,sys文件和inf文件就已经被拷贝到系统目录中,所以第二次需要安装驱动的时候,系统几乎是瞬间就找到匹配的inf,并自动完成了驱动安装。

?

关于遗留问题:在网上看到有人说:"Control Center只能使用EZ驱动,Console只能使用CY驱动。"可我遇到的状况是,使用了CY驱动,但只有Control Center可以工作,Console不能工作。谁能解释一下原因?

BulkLoop实验,布布扣,bubuko.com

BulkLoop实验

标签:style   blog   http   color   使用   strong   文件   数据   

原文地址:http://www.cnblogs.com/sunmaoduo/p/3920683.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!