flyhye
驱动小牛
驱动小牛
  • 注册日期2003-07-01
  • 最后登录2012-01-11
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1580回复:4

问一个D12编程方面的

楼主#
更多 发布于:2003-08-04 16:31
我用的是周立功的那块89516+d12的IDE开发板子。
我将协议ATA和IDE接口那部分砍掉了,保留了SCSI命令。
有一个问题困扰着我。
在仿真器,我单步运行到DisConnectUsb()->延时->ConnectUsb(),再按下全速运行,USB枚举正常,GoodLink灯正常闪烁,读D12中断值也正常,用BusHound查看也正常,描述符都传上去了,一切正常。
但是当我从一开始就全速运行,或者是在ConnectUsb()之前按下全速运行,USB枚举就不正常了,出现未知的USB设备。
不知道是为什么,请高手指点一下。

另外,我将该生成的HEX文件烧录到IC中,接上USB,发现右下角的USB图标总是:
出现->消失->出现->消失->,反复7,8次后还是消失,出现的也是未知的USB设备

我实在是不明白怎么会这样。不明白呀不明白呀。
千载奇逢,无如好书良友 一生清福,只在碗茗炉烟
flytomoon
驱动巨牛
驱动巨牛
  • 注册日期2003-07-09
  • 最后登录2004-10-18
  • 粉丝1
  • 关注1
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-08-04 16:40
直接全速运行时的延时可能有问题,这里延时还是很重要的。
“另外,我将该生成的HEX文件烧录到IC中,接上USB”这是什么意思,不是直接烧录到USB中的吗?
xjLegend
驱动小牛
驱动小牛
  • 注册日期2002-11-04
  • 最后登录2005-06-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-08-04 16:40
是不是中间的延时不够?多加些冗余指令看看
我想要点分,这样才有成就感嘛!
flyhye
驱动小牛
驱动小牛
  • 注册日期2003-07-01
  • 最后登录2012-01-11
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-08-04 18:44
跟延时没有关系,我已经做过了,不行。
刚才一个同事告诉我:
在USBReset处理时不应该将D12SUSPD置1而应该是置0,开发板的源代码将其置1了,看来是有问题。
因为D12是自动将该位拉高的,当USB总线进入挂起状态时。

但我还是不明白为什么单步为什么可以。
千载奇逢,无如好书良友 一生清福,只在碗茗炉烟
ae86tekka
驱动牛犊
驱动牛犊
  • 注册日期2005-01-19
  • 最后登录2007-10-12
  • 粉丝0
  • 关注0
  • 积分73分
  • 威望8点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-01-20 10:41
I want to know the "周立功的那块89516+d12的IDE开发板子" price? my email is "aetekka@yahoo.com.hk"
游客

返回顶部