lansing
驱动牛犊
驱动牛犊
  • 注册日期2003-04-23
  • 最后登录2005-09-01
  • 粉丝0
  • 关注0
  • 积分15分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1119回复:3

9054dma传输

楼主#
更多 发布于:2004-07-26 11:07
一次dma可以被分成若干块传输,dma控制器的中断是不是用来检测每块传输完成的?(我认为一次传输分很多块,每块完成时应该有个中断吧?)
那如果要多次发起dma传输,是否应该还有一个中断信号?
请大家帮忙看看这个思路正确吗?
当local端发出新的一次dma传输的中断信号时,驱动将该信号通知应用程序,应用程序再次调用驱动中dma传输的部分实现循环。

myswin
驱动小牛
驱动小牛
  • 注册日期2003-10-13
  • 最后登录2005-11-21
  • 粉丝0
  • 关注0
  • 积分15分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-07-26 21:50
一次DMA传完后肯定会有中断的~~~
-----------
我认为一次传输分很多块,每块完成时应该有个中断吧?
----------
你是指的分散-集中模式?
=========== D =========== R =========== I =========== V =========== E ---------抵制日货-------
lansing
驱动牛犊
驱动牛犊
  • 注册日期2003-04-23
  • 最后登录2005-09-01
  • 粉丝0
  • 关注0
  • 积分15分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-07-27 09:43
不是,是块模式。
但是如果数据缓冲区的大小没有一次DMA传输的数据量大,是不是一次dma就要分多块传输?那样前面的数据不是被后面的数据覆盖掉了?想不通!

大侠们帮忙呀!
lansing
驱动牛犊
驱动牛犊
  • 注册日期2003-04-23
  • 最后登录2005-09-01
  • 粉丝0
  • 关注0
  • 积分15分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-07-28 15:11
我其实是想实现如下功能:
fifo满的时候发出中断,pc机发起一次DMA传输将数据读回,过一段时间FIFO又有中断,再进行DMA传输。一次DMA传输完的中断和FIFO满的中断是不同吧?怎么在9054的中断寄存器上体现出来呢?

可能我原来没说清楚,请大家给看看应该怎么做?谢谢!
游客

返回顶部