xulingfei
驱动牛犊
驱动牛犊
  • 注册日期2004-06-13
  • 最后登录2009-03-09
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:3311回复:30

D12速度上来了!

楼主#
更多 发布于:2004-09-17 19:36
我用P87C52x2,11.0592M晶振单片机,工作在6时钟模式,现在的传输速度又252KByte/s了!
xulingfei
驱动牛犊
驱动牛犊
  • 注册日期2004-06-13
  • 最后登录2009-03-09
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-09-24 15:18
也就是参照反汇编程序,改你C51的程序,知道汇编的程序最短!
leafage
驱动牛犊
驱动牛犊
  • 注册日期2004-06-07
  • 最后登录2010-03-04
  • 粉丝0
  • 关注0
  • 积分12分
  • 威望22点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-09-24 11:13
问题我也遇到了,请教如何将送数据那一段反汇编优化啊,不知如何操作,请教!
xulingfei
驱动牛犊
驱动牛犊
  • 注册日期2004-06-13
  • 最后登录2009-03-09
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-09-24 10:58
能枚举成功,固件的描述符就没有问题!能够影响速度的也就是数据报的大小了!可能还是应用程序的问题。
xue_minggang
驱动牛犊
驱动牛犊
  • 注册日期2004-09-02
  • 最后登录2004-09-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-09-24 08:43
就是D12test.sys,你也没有修改吗?那怎么你的行我的不行呀,是不是在固件里的描述符需要修改啊?
jrmforever
驱动牛犊
驱动牛犊
  • 注册日期2004-07-24
  • 最后登录2010-05-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-09-23 20:54
有谁可以说说固件程序怎么能够有话吗??


我的只有几k阿


救命阿!!!
xulingfei
驱动牛犊
驱动牛犊
  • 注册日期2004-06-13
  • 最后登录2009-03-09
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-09-23 18:21
你们的驱动是不是D12test.Sys?如果是的话,我问用的就是一样的。
xue_minggang
驱动牛犊
驱动牛犊
  • 注册日期2004-09-02
  • 最后登录2004-09-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-09-23 16:38
我们不知道从哪里买来的一套,那个驱动开发包都不能编译,有现成的.sys文件,我觉得驱动可能有问题,可否把你的驱动给我用用啊?
xulingfei
驱动牛犊
驱动牛犊
  • 注册日期2004-06-13
  • 最后登录2009-03-09
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-09-23 16:16
没有可能啊!那你的应用程序就不是一点问题了!在好好试一试。你的驱动用的是什么?
xue_minggang
驱动牛犊
驱动牛犊
  • 注册日期2004-09-02
  • 最后登录2004-09-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2004-09-23 15:52
还是不行,按你的方法,我在缓冲区里输入65536,点“开始”,没有运行,点“停止”也停不下来,输入64也不行了,没改之前输入64还可以运行。
xue_minggang
驱动牛犊
驱动牛犊
  • 注册日期2004-09-02
  • 最后登录2004-09-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2004-09-22 15:22
谢谢啊:)要是可以见面一定请你吃饭 :P

[编辑 -  9/22/04 by  xue_minggang]
xulingfei
驱动牛犊
驱动牛犊
  • 注册日期2004-06-13
  • 最后登录2009-03-09
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2004-09-22 15:06
你定义一个数组,大小为65536,然后再分配空间。
例如:
memset(OutBuf,0,65536);
if(!ReadFile(hFile,OutBuf,65536,&nBytes,NULL))
{
DeviceIoControl(hFile,
       IOCTL_D12_RESET_PIPE,
0,
0,
0,
0,
&nBytes,
NULL);

MessageBox((LPCSTR)"写入数据失败", "提示", MB_ICONSTOP);
return;
}
xue_minggang
驱动牛犊
驱动牛犊
  • 注册日期2004-09-02
  • 最后登录2004-09-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2004-09-22 11:38
是啊,前面有分配数据的呀,就是这句
threadParam->pcIoBuffer = (unsigned char *)malloc (threadParam->uiLength + 16);
但是输入大的就会出问题啊。
xulingfei
驱动牛犊
驱动牛犊
  • 注册日期2004-06-13
  • 最后登录2009-03-09
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2004-09-22 10:56
对就是这个地方,不会有错的!不过事先要分配数据空间!
xue_minggang
驱动牛犊
驱动牛犊
  • 注册日期2004-09-02
  • 最后登录2004-09-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2004-09-22 09:08
就是这个函数吗?
bResult = ReadFile(hFile,
threadParam->pcIoBuffer,
threadParam->uiLength,
&nBytes,
NULL);
里面的threadParam->uiLength就是缓冲区大小吧,就是对话框里设置的缓冲区大小传输过来的吧?这个怎么设置啊?
请原谅我的愚钝。
xulingfei
驱动牛犊
驱动牛犊
  • 注册日期2004-06-13
  • 最后登录2009-03-09
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2004-09-21 17:07
在应用程序读写函数中设置的!
xue_minggang
驱动牛犊
驱动牛犊
  • 注册日期2004-09-02
  • 最后登录2004-09-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2004-09-21 16:56
是吗?在应用程序里怎么设置呀?我们用的应用程序都差不多的吧
xulingfei
驱动牛犊
驱动牛犊
  • 注册日期2004-06-13
  • 最后登录2009-03-09
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2004-09-21 16:19
是在应用程序中设的!应该没有问题!我是这样用的,是65536。
xue_minggang
驱动牛犊
驱动牛犊
  • 注册日期2004-09-02
  • 最后登录2004-09-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2004-09-21 13:26
就是在缓冲区大小里输入的是:64000吗?我不让输入这么大,输入这么大就死了,没反应了,是不是在驱动里设置呀?怎么修改?
谢谢你这么耐心的给我解答 :)
xulingfei
驱动牛犊
驱动牛犊
  • 注册日期2004-06-13
  • 最后登录2009-03-09
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
19楼#
发布于:2004-09-21 11:07
我设的是64K。
上一页
游客

返回顶部