nn_buaa
驱动牛犊
驱动牛犊
  • 注册日期2002-03-04
  • 最后登录2005-06-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1413回复:4

我用68013的slavefifo为什么只读一个字节数据呢?

楼主#
更多 发布于:2004-02-10 12:06
我将ep8设置为slavefifo的fifo,当slwr没有写信号时,ep8是不能读取数据的,当slwr有写信号时,ep8可以读取数据,但每次只能读一个数据,这说明我的slave fifo工作了,但问题可能出在哪里呢?谢谢!
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-02-10 13:17
你读数据的时候是不是判断满标志?如果是的话可不是吗,因为你读了数据之后端点就不满了,满标志就没有了!
如果不是上面的原因,就把读写信号和片选以及标志信号都检查一下。
一般说来半满标志信号有效一次要读取你设置端点大小一半的数据(比如端点是512双缓冲,那就读512)
满标志要读取全部的数据(1024),如果是空标志,那才能一个个的读。
nn_buaa
驱动牛犊
驱动牛犊
  • 注册日期2002-03-04
  • 最后登录2005-06-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-02-10 13:55
我用的是autoin方式,没有查半满,非空标志,只是往ep8fifo中写入数据,而且我的pktend设置为高,ep8aotoinlenh=0x02;应该每次读回512字节数据才对啊,和半满,全满没什么关系吧?谢谢!
nn_buaa
驱动牛犊
驱动牛犊
  • 注册日期2002-03-04
  • 最后登录2005-06-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-02-10 15:32
jinghuiren等大虾们帮着想想原因啊!这种现象很奇怪啊
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-02-12 22:45
写也需要的,因为如果你不知道端点的空满状态的话,怎么能往端点里写数据呢?如果端点是满的话你怎么能把数据写进去呢?这样数据不就丢失了吗?
还有你怎么判断只读到了一个字节的数据?应该至少是16位吧,难道你只用了8位总线吗?
游客

返回顶部