double
论坛版主
论坛版主
  • 注册日期2002-03-30
  • 最后登录2015-05-05
  • 粉丝0
  • 关注0
  • 积分24分
  • 威望4点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
阅读:5066回复:33

68013中的slave fifo一问

楼主#
更多 发布于:2003-04-17 23:26
我用68013做的板子,使用control panel,固件程序使用的是bulkloop改进,现在想做一个测试,就是通过control panel向ep2写数据时(此时fifoadr[1:0]=00,选中ep2),测flagc(empty)的电平,将flagc设为低有效。结果是,当固件刚下载进去时,flagc为低电平,也就是ep2 fifo为空,结果正确。但是当数据写入时,flagc仍为高电平,也就是说fifo仍为空。
另作一个测试,将fifoadr[1:0]=10,选中ep6,此时利用成中原有的部分,即数据写入ep2后备转发到ep6。测试结果是,当固件下载后,flagc为低电平,也就是ep6 fifo为空。向ep2写数据后,数据被转到ep6,此时测试,flagc为高电平,也就是说,此时ep6 fifo不为空。
以上的结果是我非常迷惑,通过ep2的结果看,好像数据并没有进入fifo,但是通过ep6的测试又证明数据已经传到fifo。
另说一下,ep2为out bulk endpoint,ep6为in bulk endpoint。是不是out的端点载使用flag管脚时和in的端点有所区别呢。
望高手指教,不胜感激!

最新喜欢:

flytomoonflytom... lmhhlmhhlmhhlm... wshsabcwshsab...
轻轻的我来了 带给你欢乐 悄悄的我走了 带走你忧愁
double
论坛版主
论坛版主
  • 注册日期2002-03-30
  • 最后登录2015-05-05
  • 粉丝0
  • 关注0
  • 积分24分
  • 威望4点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-04-18 10:38
麻烦大家帮个忙,帮忙参考一下好吧。
轻轻的我来了 带给你欢乐 悄悄的我走了 带走你忧愁
guo_bin76
驱动牛犊
驱动牛犊
  • 注册日期2003-02-13
  • 最后登录2010-11-20
  • 粉丝0
  • 关注0
  • 积分129分
  • 威望74点
  • 贡献值1点
  • 好评度12点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-04-18 13:24
snow
double
论坛版主
论坛版主
  • 注册日期2002-03-30
  • 最后登录2015-05-05
  • 粉丝0
  • 关注0
  • 积分24分
  • 威望4点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-04-18 13:35
现在的问题是我要将数据从host传到master,需要使用out endpoint,
这种情况下需要使用到标志位。
轻轻的我来了 带给你欢乐 悄悄的我走了 带走你忧愁
guo_bin76
驱动牛犊
驱动牛犊
  • 注册日期2003-02-13
  • 最后登录2010-11-20
  • 粉丝0
  • 关注0
  • 积分129分
  • 威望74点
  • 贡献值1点
  • 好评度12点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-04-18 20:09
snow
double
论坛版主
论坛版主
  • 注册日期2002-03-30
  • 最后登录2015-05-05
  • 粉丝0
  • 关注0
  • 积分24分
  • 威望4点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-04-18 20:50
我现在的问题是,当将ep2设为out时,写入数据,flagc没有电平变化。当将ep2设为in时,写入数据,此时flagc有数据变化。我的分析是,这说明ep2的fifo是可以写入数据的,flagc也是由作用的。问题是出在当端点为out时,此时写的数据是否是真的被传到fifo内,因为我些数据时只能写64bytes。
轻轻的我来了 带给你欢乐 悄悄的我走了 带走你忧愁
hemu
驱动小牛
驱动小牛
  • 注册日期2002-04-10
  • 最后登录2004-06-02
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-04-18 21:26
你的工作我做过,我想是你有的地方没做好,我的epmty会上下跳。
double
论坛版主
论坛版主
  • 注册日期2002-03-30
  • 最后登录2015-05-05
  • 粉丝0
  • 关注0
  • 积分24分
  • 威望4点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-04-18 22:44
hemu兄,我现在十分迷惑,我用cypress公司提供的bulkloop例子,按理说是不应该有问题的呀,可是就是不行,而且我发现,用control panel写端点2的时候,只能写128字节,不只是什么原因。
不知你用bulkloop实验过没有,有没有成功。
还有一个请求,就是希望hemu兄能否将你的程序发给我看一下,参考参考。我现在真的是很郁闷。
我的email:liuyanbo@263.net
oicq:35409915
多谢hemu兄的指教。
轻轻的我来了 带给你欢乐 悄悄的我走了 带走你忧愁
hemu
驱动小牛
驱动小牛
  • 注册日期2002-04-10
  • 最后登录2004-06-02
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-04-19 14:31
行啊,总算有人也用fifo模式了,正好交流一下,我做测试时没有你的情况,ep2 1024byte后full满了。
BRANDER
驱动牛犊
驱动牛犊
  • 注册日期2002-09-29
  • 最后登录2009-05-01
  • 粉丝0
  • 关注0
  • 积分52分
  • 威望15点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-04-19 15:09
首先你要将EP2的配置寄存器中设置为OUT模式,同时将相应的寄存器设置FLAGC表示EP2的EMPTY,你可能没有设置。另外你的主板不支持2.0,所以只能128个字节。
double
论坛版主
论坛版主
  • 注册日期2002-03-30
  • 最后登录2015-05-05
  • 粉丝0
  • 关注0
  • 积分24分
  • 威望4点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2003-04-20 21:11
你说的设置响应的寄存器,我看了一下,好像默认的情况,如果ipconfig[1..0]=11,设为fifo模式,此时flagc默认就是表示fifo的empty状态。
轻轻的我来了 带给你欢乐 悄悄的我走了 带走你忧愁
hemu
驱动小牛
驱动小牛
  • 注册日期2002-04-10
  • 最后登录2004-06-02
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-04-21 23:08
果然很奇怪,我也是这么测试过slave fifo 模式用ep2传,但是emptey是与预想的一致的,窜口测试是到配置fifo那儿,empty变有效,送一次数就无效了。固件配置一段应该有问题的。
double
论坛版主
论坛版主
  • 注册日期2002-03-30
  • 最后登录2015-05-05
  • 粉丝0
  • 关注0
  • 积分24分
  • 威望4点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2003-04-22 10:24
但是,用的都是公司提供的例子,应该是没有问题的呀,要是说是主板不支持2。0的话,但是测ep6(in)却是正确的。所以觉得很奇怪。
另外问一句,你是不是有评估板呀。
轻轻的我来了 带给你欢乐 悄悄的我走了 带走你忧愁
hemu
驱动小牛
驱动小牛
  • 注册日期2002-04-10
  • 最后登录2004-06-02
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2003-04-23 18:50
我到没注意,除了评估板还有什么板啊。
double
论坛版主
论坛版主
  • 注册日期2002-03-30
  • 最后登录2015-05-05
  • 粉丝0
  • 关注0
  • 积分24分
  • 威望4点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2003-04-23 20:00
我用的是我自己做的板子
轻轻的我来了 带给你欢乐 悄悄的我走了 带走你忧愁
hemu
驱动小牛
驱动小牛
  • 注册日期2002-04-10
  • 最后登录2004-06-02
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2003-04-24 11:24
对啊,我老师卖了开发板,不过我自己的板子也完了,也可以的啊。
yjmpepe
驱动牛犊
驱动牛犊
  • 注册日期2003-04-18
  • 最后登录2016-01-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2003-04-25 10:13
偷偷问一句,楼上的bulkloop改进是怎么写的?Cypress的bulkloop传数是写在TD_Pool里的,你用的是auto模式吗?你是不是把bulk的功能加到slave fifo的程序里了?
hemu
驱动小牛
驱动小牛
  • 注册日期2002-04-10
  • 最后登录2004-06-02
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2003-04-25 19:54
不懂楼上的意思,什么“把bulk的功能加到slave fifo的程序里”?
yjmpepe
驱动牛犊
驱动牛犊
  • 注册日期2003-04-18
  • 最后登录2016-01-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2003-04-27 20:07
我的意思是用souce模式,在51可以干预数据发收的情况下把bulk回传给host
double
论坛版主
论坛版主
  • 注册日期2002-03-30
  • 最后登录2015-05-05
  • 粉丝0
  • 关注0
  • 积分24分
  • 威望4点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
19楼#
发布于:2003-04-28 09:12
郁闷呀
已经一个星期了
还没有解决问题
我想是不是外围的配置信号需要特定的设置呀
我的设置是,在写ep2的时候,fifoadr[1..0]=00,slwr,slrd,sloe都设为高电平,默认低电平有效。
轻轻的我来了 带给你欢乐 悄悄的我走了 带走你忧愁
上一页
游客

返回顶部