阅读:1177回复:9
gpiffiforead传输问题。
为什么这段程序不能执行:
............. if ( GPIFTRIG & 0x80 ) // if GPIF interface IDLE { if ( !( EP2468STAT & 0x02 ) )// if EP6 FIFO is not full { SYNCDELAY; GPIFTCB1 = 0x00; SYNCDELAY; GPIFTCB0 = 0x20; SYNCDELAY; GPIFTRIG = GPIFTRIGRD | GPIF_EP6; // launch GPIF FIFO READ Transaction to EP6 FIFO SYNCDELAY; while( !( GPIFTRIG & 0x80 ) ) { ; } } } .................. :( |
|
沙发#
发布于:2004-06-29 21:05
怎么知道你这里没执行呢?
|
|
|
板凳#
发布于:2004-06-29 21:30
我在程序里设置了一个变量
............. led=1; //先点亮指示灯; if ( GPIFTRIG & 0x80 ) // if GPIF interface IDLE { if ( !( EP2468STAT & 0x02 ) )// if EP6 FIFO is not full { SYNCDELAY; GPIFTCB1 = 0x00; SYNCDELAY; GPIFTCB0 = 0x20; SYNCDELAY; GPIFTRIG = GPIFTRIGRD | GPIF_EP6; // launch GPIF FIFO READ Transaction to EP6 FIFO SYNCDELAY; while( !( GPIFTRIG & 0x80 ) ) { ; } } } delay(4000); led=0;//关断指示灯; .................. 结果就是点亮了就不熄灭了 。而却在发其他的请求就controlpanel也不动了。 :( |
|
地板#
发布于:2004-06-30 09:06
用户被禁言,该主题自动屏蔽! |
|
地下室#
发布于:2004-06-30 18:43
delay函数没问题啊,就是上面这段程序一运行就死了。必须重新连接。
还有就是我用fiforead读的数据怎么才能看得到啊? :( |
|
5楼#
发布于:2004-07-03 12:23
怀疑是GPIF的波形编辑的不对。
我也正在做,也有问题。 看FIFO READ的数据用CONTROL PANNEL就可以啊。 |
|
|
6楼#
发布于:2004-07-04 09:54
用户被禁言,该主题自动屏蔽! |
|
7楼#
发布于:2004-07-04 13:00
楼上的大侠,我想问一下那个判断结束的标志:
(我想用tc寄存器来记数,在gpifreadydfg中的TCxrdy5位该怎么设置呢?) 还有在gpif编程软件中的sbust TC for RDY5 的选项该不该选呢? TCXpire是怎么选呢? :( |
|
8楼#
发布于:2004-07-04 13:47
用户被禁言,该主题自动屏蔽! |
|
9楼#
发布于:2004-07-05 11:44
有所收获,但希望能在详细些。
|
|
|