版块
论坛
喜欢
话题
应用
搜索
登录
注册
wwei_wang的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=27407
求教关于OEMInterruptxxx函数(wxl_50685330请进)
我用的板子是x86架构的,我现在正在写单片驱动,有几个问题想请教大侠:(1)如果我想在OEMInterruptxxx函数中实现对我的设备开/关中断的话,那么我是不是应该在这个c文件(好像是cfwpc.c)中定义一个全局变量来保存我设备的地址啊?(这个地址应该可由Interrupt...
全文
回复
(
9
)
2004-12-03 16:40
来自版块 -
Wince 程序开发
◆
◆
表情
告诉我的粉丝
提 交
wwei_wang
:
非常感谢wxl_50685330大哥以及chang_nicolas兄弟的无私援助,分已给出,请两位笑纳! :P
(2004-12-07 14:29)
回复
wxl_50685330
:
对头,对头!!!!!!!!!!!!!!:)
(2004-12-07 14:01)
回复
wwei_wang
:
谢谢wxl_50685330大哥,不过我还得罗嗦一下,呵呵。 你看全局共享缓冲区是不是可以这么实现? 假设我的CONFIG.bib里面是这样设置的: NK 80220000 009E0000 RAMIMAGE RAM 80C00000 01...
(2004-12-07 13:56)
回复
wxl_50685330
:
:) 可以在你的CONFIG.bib里面预留一块出来作为公共缓冲区。比如 xxx 8C020000 00001000 RESERVED 记住这个地址,在驱动中和isr中可以访问它来交换数据。不过注意访问时需要先映射(如果isr是写在kernel的可以不映射)
(2004-12-07 13:24)
回复
wwei_wang
:
哈哈,谢谢wxl_50685330大哥的解答,问一个很菜的问题: 前面你说,我的ISR和我的驱动之间要交换数据可以通过一个全局的缓冲区,比如drvier_global,那么这个全局的缓冲区怎么定义啊?在我的驱动和ISR中分别怎么使用啊? :P
(2004-12-07 09:10)
回复
wxl_50685330
:
1.设备地址保不保存要看你的实际需要了,如果你清楚每个设备的地址,可以直接用。 2.是 3.要交换数据可以通过一个全局的缓冲区,比如drvier_global 4.不是很
(2004-12-06 13:17)
回复
wwei_wang
:
谢谢楼上兄弟,不过你可能误会了。 其实我的IST中有很多事情要做的。我的问题的出发点是如何使用和实现OEMInterruptxxx以及用HookInterrupt这些函数,因为我想用这种方法来做,顺便练练手。 还请多多指教! :D
(2004-12-06 09:33)
回复
wwei_wang
:
谢谢楼上兄弟,不过你可能误会了。 其实我的IST中有很多事情要做的。我的问题的出发点是如何使用和实现OEMInterruptxxx以及用HookInterrupt这些函数,因为我想用这种方法来做,顺便练练手。
(2004-12-06 09:33)
回复
chang_nicolas
:
如果只是实现在ISR中设备的开关的话,只是设置GPIO的电平高低就行了吧,就不用写IST了,直接在ISR中就解决了,OemInterruptEnable这样的函数也不用了,只是处理个GPIO中断
(2004-12-06 09:19)
回复
wwei_wang
加关注
写私信
0
关注
0
粉丝
615
帖子
返回顶部