fishrimper
驱动牛犊
驱动牛犊
  • 注册日期2003-10-08
  • 最后登录2006-09-25
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1008回复:5

如何做到从设备中一次读取较多的数据?

楼主#
更多 发布于:2003-10-17 08:36
从设备读取数据时,怎么才能做到一次读取较多的数据,比如32k/次。
我采用的是buffered方式,查看了一下,每次只能读不到2K的数据。这是怎么回事呢?
libin2309
驱动大牛
驱动大牛
  • 注册日期2002-11-20
  • 最后登录2005-12-29
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-10-17 09:44
BUFFERED方式读到的数据量应当是不止2K的。
你改成DIRECT方式试一试!
DIRECT应该是能读到很多的。
我是一只小小鸟,永远也飞也飞不高,但我永远在飞!
fishrimper
驱动牛犊
驱动牛犊
  • 注册日期2003-10-08
  • 最后登录2006-09-25
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-10-17 09:46
呵呵,休假结束了?
buffered方式能达到每次32K的数据传输量吗?
libin2309
驱动大牛
驱动大牛
  • 注册日期2002-11-20
  • 最后登录2005-12-29
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-10-17 09:49
呵呵,休假结束了?
buffered方式能达到每次32K的数据传输量吗?
 

没有呢,过几天还要回去!
你还是使用DIRECT方式吧,我试过,这么大的数据量没什么问题的。
我是一只小小鸟,永远也飞也飞不高,但我永远在飞!
fishrimper
驱动牛犊
驱动牛犊
  • 注册日期2003-10-08
  • 最后登录2006-09-25
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-10-17 09:56
那我试一下用direct方式,
可以给我传一段有关中断的代码吗?
谢谢!
libin2309
驱动大牛
驱动大牛
  • 注册日期2002-11-20
  • 最后登录2005-12-29
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-10-17 09:59
ISA的中断很简单,没什么难度,你只需要确认,然后返回TRUE,就可以了。一般中断的数据传输要用到延迟处理程序。也就是在中断处理函数里连接DPC,然后返回TRUE,在DPC里做你要做的事!驱动书上有详细地讲解!
我是一只小小鸟,永远也飞也飞不高,但我永远在飞!
游客

返回顶部