ISR和IST的通数据通讯问题

ccyy2002 2007-01-09 03:09:21
To pass data between an ISR and an IST

Reserve physical memory for the ISR in your Config.bib file.
Config.bib contains several examples of reserving physical memory for the serial and debug drivers.

Use the reserved memory in your ISR call.
Because the ISR runs in kernel mode, the ISR can access the reserved memory to buffer data.

Call the MmMapIoSpace function in your IST to map the physical memory to a virtual address.
这个是我查到的资料里说的,但是我看到BSP的config.bib的MEMORY区都是用的虚拟地址分配的内存块,我可以在这个区象资料说的直接定义物理内存地址吗?
然后在ISR里直接把数据缓冲数组的头地址赋值为这段物理地址或者应该是这个物理地址对应的静态虚拟地址?冲区满后在IST中将这段物理地址转换为用户区的虚拟地址,从而处理数据.
...全文
228 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
gooogleman 2010-05-12
  • 打赏
  • 举报
回复
楼主想通过 这个来提高中断的实时性。不错。这个方法不错的。
fanggui 2010-05-12
  • 打赏
  • 举报
回复
config.bib里面定义的都是虚拟地址
物理地址和虚拟地址的对应关系可以见“oemaddrtab_cgf.inc”文件(在你的BSP目录下可以搜索到)

另,可以参考这个帖子的得分贴:
http://topic.csdn.net/u/20100204/10/df7ee35d-2137-4696-af64-84c6c39f7f07.html

jiereliyi 2010-02-04
  • 打赏
  • 举报
回复
帮顶
GARY 2009-10-20
  • 打赏
  • 举报
回复
不太清楚,帮顶。

19,502

社区成员

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

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