20楼#
发布于:2003-01-24 14:08
这个偶不知道,也很想知道,你搞出来了记着贴出来呀。
|
|
21楼#
发布于:2003-01-24 15:14
jinghuiren
\"测的时间是8051读外部ram填充端点然后再传输到主机方这段时间\" 我一直很困惑,这个速度怎么测,要用仪器吗?还是用软件测阿 netpk 那应该是固件的问题了,特别是设置pipe一段。 |
|
22楼#
发布于:2003-01-24 15:42
我也知道是固件问题,呵呵,我就是不知道是怎么回事,那可是Cypress的原版Samples程序啊
|
|
23楼#
发布于:2003-01-24 22:09
我用的方法只是在读端点缓冲区的ioctl命令前面加了一个调用cpu指令的命令,然后在读出来并存到文件中后有调用了一次,两者相减再出一当前的cpu周期数就是消耗的时间,其实64k还是太少,我是让这个ioctl循环了1000次(也就是64M数据)测出的时间。为了测这个时间,我同学专门为我编了一个小函数,贴出来让你看看:
|
|
|
24楼#
发布于:2003-01-27 09:51
jinghuiren兄,那个不能识别的问题已经解决,呵呵,我用Keil重新建立一个工程,把源文件导入,重新编译就可以了,我猜想可能是Samples中的工程是Keil早些版本建立的,和现在的版本不是很兼容,呵呵,害了我改了很多天的程序,呵呵
一个问题请教:我按照你的思路做了程序,也参考了BulkPerformance的思路(它说一个Frame可以容纳13个Bulk),先是在固件中使用Poll的方法,测试速度是1s大概1000个包(64B),就是64k的速度,换成端口中断(设置INnBC)只有32k的速度了,我使用的Ep2,pair with Ep3,为测试速度,没有填写端点缓冲区,只要发现Ep2可用就设置In2Bc为64,上层App不停循环发DeviceIo,返回非零就加成功计数变量,应该远远不止这个速度才对啊,感觉一个Frame(1ms)才读成功一次Bulk包(64B),真是想不通那个环节出了问题…… 如何编写App或者Driver才能让一个Frame中能够容纳n(至少>3)个Bulk包? jinghuiren、Hemu兄以及看到这个帖子的朋友们有没有什么建议? 谢谢…… |
|
25楼#
发布于:2003-01-29 15:33
怎么没有人回答啊,急死了……
jinghuiren兄快来帮忙啊 感激中…… |
|
26楼#
发布于:2003-02-07 19:10
哎,之前放假回家去了,今天才回来,太早了!!!
我看你用的方法好像还是使用的中断传输吧,那样的话,1.1协议规定最多1ms进行一次64B的bulk传输。我想你需要使用bulk方式,这样在一个frame里面传输的数据包才能达到你的要求。 |
|
27楼#
发布于:2003-02-08 11:32
jinghuiren 你的测试程序好像有问题,不少变量不知怎么弄,最后我自己做了个近似测试,速度竟然只有200k/s,与我想象相差不少,不过基本满足我们的需求了。
|
|
28楼#
发布于:2003-02-08 12:05
哦,你要先读一下.c文件,里面有说明:
/开始计时处调用SetBeginPoint(),返回BOOL //结束计时片调用SetEndPoint(),返回BOOL //需要得到时间消耗处调用GetTimeLapse(),返回double,单位为ms 例如:你要计算一个读取一个512字节数据包所需要的时间,可以这样用 double nTimes; SetBeginPoint(); ioctl();//读取数据的函数 SetEndPoint(); nTimes = GetTimeLapse(); nTimes 就是所用的时间, 然后你再在ioctl();之前加上一个for(int i = 0; i<n; i++)循环,得到的就是读取n个512数据包所用的时间了。 |
|
29楼#
发布于:2003-02-09 09:39
各位新年好!!
感谢jinghuiren兄,我也是放假今天才回来,呵呵 看了jinghuiren兄的建议觉得有点道理,可是我觉得我已经是使用的Bulk方式了,不知道那个地方没有做对,还是请给个思路吧 |
|
30楼#
发布于:2003-02-09 13:17
那就奇怪了,你要使用的bulk方式没道理1ms只能进行一次传输呀。
|
|
31楼#
发布于:2003-02-09 15:21
1ms一个包是我对于64K速度的猜测,具体我也不知道怎么回事,因为我没有办法看到具体的传输过程,呵呵,我在固件的主程序中不停地轮询端点的空闲位(Busy位),一旦发现可以用就直接写传输字节寄存器为64,Arm端点传输,只开了端点0的几个必要的中断(满足setup包的),其余的都关闭了,应该是没有问题的,不知道怎么回事,郁闷死了……
|
|
32楼#
发布于:2003-02-10 13:45
那我也没什么招了,我的全是理论上的东西,具体的传输我还真没做过,因此里面有什么问题我还真不知道,哎,没办法,我无法解除你的郁闷了,真是抱歉!
只好帮你顶一下,希望有那位高人能指点一下! |
|
33楼#
发布于:2003-02-11 12:44
还是非常感谢jinghuiren兄,清算结题,呵呵……
|
|
上一页
下一页