阅读:1413回复:4
我用68013的slavefifo为什么只读一个字节数据呢?
我将ep8设置为slavefifo的fifo,当slwr没有写信号时,ep8是不能读取数据的,当slwr有写信号时,ep8可以读取数据,但每次只能读一个数据,这说明我的slave fifo工作了,但问题可能出在哪里呢?谢谢!
|
|
沙发#
发布于:2004-02-10 13:17
你读数据的时候是不是判断满标志?如果是的话可不是吗,因为你读了数据之后端点就不满了,满标志就没有了!
如果不是上面的原因,就把读写信号和片选以及标志信号都检查一下。 一般说来半满标志信号有效一次要读取你设置端点大小一半的数据(比如端点是512双缓冲,那就读512) 满标志要读取全部的数据(1024),如果是空标志,那才能一个个的读。 |
|
板凳#
发布于:2004-02-10 13:55
我用的是autoin方式,没有查半满,非空标志,只是往ep8fifo中写入数据,而且我的pktend设置为高,ep8aotoinlenh=0x02;应该每次读回512字节数据才对啊,和半满,全满没什么关系吧?谢谢!
|
|
地板#
发布于:2004-02-10 15:32
jinghuiren等大虾们帮着想想原因啊!这种现象很奇怪啊
|
|
地下室#
发布于:2004-02-12 22:45
写也需要的,因为如果你不知道端点的空满状态的话,怎么能往端点里写数据呢?如果端点是满的话你怎么能把数据写进去呢?这样数据不就丢失了吗?
还有你怎么判断只读到了一个字节的数据?应该至少是16位吧,难道你只用了8位总线吗? |
|