flyto
驱动牛犊
驱动牛犊
  • 注册日期2001-10-26
  • 最后登录2005-05-27
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1928回复:4

68013 GPIF EP6读512字节

楼主#
更多 发布于:2005-01-14 09:10
请教高手:
68013 GPIF EP6 AutoIN
设置:列举 Maximum packet size (MSB) =512B

EP6缓存:512字节,双缓存。
EP6AUTOINLENH = 0x02; (512字节)  
GPIFTCB1 = 0x02;  (512字节)  
EP6BCH = 0x02;  (512字节)  
    
结果:每读1024字节产生1次中断,每次中断产生512字节的GPIF波形(CTL1)

如果全都设置为256字节就正常了。
有人做过类似的试验吗?

最新喜欢:

murongyumurong...
flyto
flyto
驱动牛犊
驱动牛犊
  • 注册日期2001-10-26
  • 最后登录2005-05-27
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-01-17 13:16
先感谢各位的回复!
我是想用8位数据,设置
EP6CFG = 0xE2;
EP6FIFOCFG = 0x08;

EP6AUTOINLENH = 0x02;
EP6AUTOINLENL = 0x00;

GPIFTCB1 = 0x02;  
GPIFTCB0 = 0x00

EP6BCH = 0x02;
EP6BCL = 0x00

而且,将所有相关设置改为256字节,是正常的。即:每读256字节产生一个中断,在中断中发出一个宽度为256字节的GPIF波形。

flyto
cahwlx1982
驱动小牛
驱动小牛
  • 注册日期2004-08-16
  • 最后登录2006-06-17
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-01-15 16:48
reuterk说的对!
我你的问题可能就是出在设置数据线的位数上,你可能设置的是16位!也可能你自己想要得到的是8位数据线,但是你没有设置好,结果得到的结果成了16位!
   另外呢,建议你用四缓冲,比较好一点!
reuterk
驱动牛犊
驱动牛犊
  • 注册日期2004-12-24
  • 最后登录2005-02-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2005-01-14 17:56
不知道这里的gpif数据端口的宽度:8or16?
如果是8位的,则所有的相关寄存器都需要设置成512个字节的,如果是16位的,则gpiftcb需要设置为512/2,类推
flyto
驱动牛犊
驱动牛犊
  • 注册日期2001-10-26
  • 最后登录2005-05-27
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-01-14 11:47
补充:用Bulk方式
应该是每读512字节就产生中断的。不知问题在那里。
请教了!谢谢!
flyto
游客

返回顶部