study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:3659回复:22

usbn9604问题,急!

楼主#
更多 发布于:2001-09-17 11:32
我用的是usbn9604,在初始化完成后主机找到设备,但是板卡并没有收到主机发的setup包,这是什么原因?
有时intr脚始终为低电平,中断程序不能再次响应。
有没有人碰到过类似问题,怎么解决的?
或者能不能提供初始化这一部分的源代码,可以写信给我,有重谢!sunzheng@ri.gdt.com.cn,或直接和我联系,010-64982299-6533(孙)
万分感激!!!

最新喜欢:

Jkw_DevJkw_De...
学无止境
study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-09-24 08:19
问题终于解决了!
原来在setaddress的时候0x0080写成0x0008了,结果没有了地址。
怎么犯了这样的错误!!!唉,一个多星期的时间都浪费在别的地方了,现在只想睡觉。
学无止境
study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-09-20 21:51
现在找到一点点规律:
如果在初始化后加一定延时,时间较短则只能收到reset包、较长则只能收到setup包。为什么?
reset信号要在2.5us内被识别并在5.5us内解释它是什么意思?是芯片识别给我一个中断,还是我得到中断后要在2.5us(5.5us)内进入reset状态?
学无止境
study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2001-09-20 17:51
而且9604支持5v和3.3v电源,倒是我用的dsp可能会有问题。只是为什么总是第二包发不上去?
学无止境
study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2001-09-20 17:44
晶振的波形非常好,读写信号的波形也一样好。
学无止境
study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2001-09-20 17:42
我不行了!
有没有人能解决这个问题,在北京最好,可以看看实际情况,我愿意付报酬。在这样下去十一都没法过了。
电话详谈:010-64982299-6533(孙先生)
WXDiablo@263.net
学无止境
wtt
wtt
驱动牛犊
驱动牛犊
  • 注册日期2001-07-23
  • 最后登录2006-10-09
  • 粉丝0
  • 关注0
  • 积分60分
  • 威望7点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2001-09-20 17:01
你查看一下9604的晶振幅度对不对。最好用有源的试一下。
study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2001-09-20 16:19
是啊!
我一步步的按它的程序走,连中间读过的寄存器都一个也没放过。
学无止境
wtt
wtt
驱动牛犊
驱动牛犊
  • 注册日期2001-07-23
  • 最后登录2006-10-09
  • 粉丝0
  • 关注0
  • 积分60分
  • 威望7点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2001-09-20 10:28
用DSP的话,你必须将示例读懂后,参照他的步骤格式写,我想应该可以,我没用DSP写过。
study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2001-09-19 19:21
现在我焊了两块板,同样的程序包起来效果不一样。
一块不断的收到reset包,收不到setup包。
一块只能收到setup包,没有reset包,而且只能用data1回8bytes!!!
学无止境
study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2001-09-19 11:10
不是我不想用c,原来用cypress的使用c,现在用dsp没有c的开发包。
我快被n多的判断搞定了!!!
学无止境
study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2001-09-19 09:53
送完DATA1后,有没有寄存器必须要读,才可以发DATA0?
学无止境
wtt
wtt
驱动牛犊
驱动牛犊
  • 注册日期2001-07-23
  • 最后登录2006-10-09
  • 粉丝0
  • 关注0
  • 积分60分
  • 威望7点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2001-09-19 09:36
study:
    最好用c写,如一定用汇编请参考示例的格式步骤,向你这样写是不行的。
粘得牢
驱动牛犊
驱动牛犊
  • 注册日期2001-09-10
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2001-09-18 22:23
我的9603也收不到setup包,有那位兄弟愿意和我讨论一下?
多多指教!
study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2001-09-18 15:12
程序我看了,确实是1、0、1、0、1....交替
可是我试了,不行!
我使用汇编,在用data1送完8bytes后检查tcs0寄存器,发现主机已将fifo0中的数据取走,ack位也为1,接着用data0送8bytes后,检查tsc0,主机不取数。why???
那个c的例子是在rx0的setup事件中送8bytes,送完后产生了tx0事件,进入tx0中断后再发送余下的字节。
这样有什么不同,难道主机每收8bytes都会向设备发请求?收到后再接着发?
学无止境
wtt
wtt
驱动牛犊
驱动牛犊
  • 注册日期2001-07-23
  • 最后登录2006-10-09
  • 粉丝0
  • 关注0
  • 积分60分
  • 威望7点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2001-09-18 14:35
study:
      你应看一下NS提供的示例程序(C51),按着示例的格式写。
我记得返回的PID应是101...,望与你共同讨论。
study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2001-09-18 14:17
我用的cpu比较快,加了最大的等待周期(可能不需要)和较长的延时(初始化usbn9604后)。
看些一写的是:data1、data0、data1.......可是这样第二包就不取了
我用:data0、data0、data1主机倒是都拿走了,可是不应该这样,谁遇到过。
学无止境
fjw
fjw
驱动牛犊
驱动牛犊
  • 注册日期2001-09-06
  • 最后登录2003-03-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2001-09-18 13:02
study,问题解决了?第一个字节长度位应该包含本字的。
怎么我还是收不到setup包??你的问题怎么解决的?
study
驱动牛犊
驱动牛犊
  • 注册日期2001-05-14
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2001-09-18 12:25
setup包已经收到
80 06 00 01 00 00 40 00
可是在回信的时候应该先使用data0还是data1?
我先用data0回信8byte,再用data1 8byte,第三包data0 2byte.
可是第三包主机总是不取走,为什么?
第一个字节长度位包含本字节吗?
学无止境
fjw
fjw
驱动牛犊
驱动牛犊
  • 注册日期2001-09-06
  • 最后登录2003-03-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
19楼#
发布于:2001-09-18 11:02
[QUOTE]原本由 dahello 发表
[B]主机的第一个包好像是 80060001001200,是不是你处理的顺序不对,总线枚举过程都对吗? [/B][/QUOTE]
请问dahello :80060001001200是什么?为什么我一旦把usb线接上pc总是不断收到reset信号,除此之外什么包也没有,处理顺序不对?正常的顺序是什么?没有收到setup包,枚举过程根本无法开始。
上一页
游客

返回顶部