WINCE 5.0下 流驱动 外部中断与逻辑中断映射及使能问题

JamyLou 2011-10-04 12:11:29
在wince5.0下开发流驱动,如果使用了外部中断比如EINT19,在驱动初始化要获得逻辑中断的时候是不是只需要调用KernelIoControl()函数来获取逻辑中断就可以了,并且中断的使能或者禁止的功能需要在相关函数中额外添加么,比如OEMInterruptEnable(),OEMInterruptDisable()函数中需要加入对应中断信号的使能或者禁止操作的相关代码么,还是系统自己自动完成的,一直有这个疑问,请高手解答下,急 ,知道的告诉下,万分感谢
...全文
62 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
JamyLou 2011-10-04
  • 打赏
  • 举报
回复
谢谢回答,我看过BSP里的OEMInterruptEnable / OEMInterruptDisable / OEMInterruptDone 这些函数,感觉都针对中断做了处理,但是我看很多资料上说,对使用的中断需要自己去定义一个SYSINTR,然后再在这些函数里去实现相应的操作,这样的机制是不是在WINCE4.2当中采取的,因为一些资料在讲这个的时候没有说清楚版本,所以看的优点迷惑。
paul_chao 2011-10-04
  • 打赏
  • 举报
回复
大哉問, 中斷處理在 WinCE 可以用一個 Chapter 來解釋, 故建議 LZ 還是去買本書來看吧
1. WinCE5.0 時引入了 PQOAL 的概念, 所以新的 BSP 的 KERNEL 應都有遵循這個架構, 但很多 BSP 是從WINCE4.2 改上來的, 那就不一定了.
2. 每一顆CPU對中斷處理方式皆不同, 所以相對應的處理方式會實現在 OEMInterruptEnable / OEMInterruptDisable / OEMInterruptDone 中, 理論上你拿到 BSP 時應皆已實現, 若沒有你就要自己加入.
3. IRQ 與 SYSINTR 不同, 通常在實做 BSP 時, 會依據 CPU Reference Manual 來固定 IRQ, 而 SYSINTR 則可用 KernelIoControl(IOCTL_HAL_REQUEST_SYSINTR,....) 來動態配置.

Paul, Chao @ Techware

19,504

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧