qdyangjing
驱动小牛
驱动小牛
  • 注册日期2003-02-26
  • 最后登录2005-11-16
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1039回复:11

看看我的代码?才2100Hz,每次就读One Byte,都响应不过来.

楼主#
更多 发布于:2003-08-13 12:03
但是我的中断服务程序总是响应不过来,看看我的代码:
BOOL XXX::OnSharedHardwareInt(VMHANDLE hCM)
{
byte300h = _inp(0x300);//用于判断是否是自己的中断.
if(0x00 == (byte300h & 0x01)) //自己的中断
{
byte301h = _inp(0x301); //读数据
++counter; //调试
if(counter >= 60)
{
counter = 0;
}
dprintf(\"\\ncounter=%d val=%d\",counter,byte301h);
}
sendPhysicalEOI();
return FALSE;
}

老大,我错在哪里了?

2100Hz,每次一字节,卡上64字节缓冲,出现响应不过来的问题.

***************************** *********向军旗敬礼!******** ********向给分者微笑!******* *****************************
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2003-08-13 13:32
if(NOT_your_INT)
{
return FALSE;
}
...
return TRUE;
qdyangjing
驱动小牛
驱动小牛
  • 注册日期2003-02-26
  • 最后登录2005-11-16
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-08-13 13:39
你是说不是自己的,必须马上返回FALSE?
是自己的一定要返回TRUE吗?
传下去不行?
***************************** *********向军旗敬礼!******** ********向给分者微笑!******* *****************************
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2003-08-13 13:41
不是自己的马上返回FALSE,还有别的ISR等着处理。
你可以全返回FASLE:D,应该就是没有人管这个中断了。
不过你的不是ISA的吗?应该独占中断呀。
qdyangjing
驱动小牛
驱动小牛
  • 注册日期2003-02-26
  • 最后登录2005-11-16
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-08-13 13:44
我测过IRQ3线,系统有很多别的中断,独占方式不行,初始化出错.
***************************** *********向军旗敬礼!******** ********向给分者微笑!******* *****************************
qdyangjing
驱动小牛
驱动小牛
  • 注册日期2003-02-26
  • 最后登录2005-11-16
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-08-13 13:46
再问一下:
我共享APP的数组,用事件方式通知APP的接收线程来取,乒乓方式操作缓冲区.有人说这种还不是最快的,是吗?
***************************** *********向军旗敬礼!******** ********向给分者微笑!******* *****************************
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
6楼#
发布于:2003-08-13 13:50
what\'s “乒乓方式”?
qdyangjing
驱动小牛
驱动小牛
  • 注册日期2003-02-26
  • 最后登录2005-11-16
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-08-13 13:52
把共享缓冲区分成两半,驱动写满一半,就通知APP,自己再写另一半.
***************************** *********向军旗敬礼!******** ********向给分者微笑!******* *****************************
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
8楼#
发布于:2003-08-13 13:55
你就那么些数据,这样也够了呀。
qdyangjing
驱动小牛
驱动小牛
  • 注册日期2003-02-26
  • 最后登录2005-11-16
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-08-13 13:56
谢谢,我去试试,有问题再来.
***************************** *********向军旗敬礼!******** ********向给分者微笑!******* *****************************
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
10楼#
发布于:2003-08-13 13:59
累死了,qq聊吧,我开一下午先。
libin2309
驱动大牛
驱动大牛
  • 注册日期2002-11-20
  • 最后登录2005-12-29
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-08-13 16:10
ISA的中断,频率最高能到多少,哪位有经验的大虾说一下!
我是一只小小鸟,永远也飞也飞不高,但我永远在飞!
游客

返回顶部