文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>u-boot.Windows下使用DNW下载文件时容易蓝屏原因及解决方法

u-boot.Windows下使用DNW下载文件时容易蓝屏原因及解决方法

时间:2010-12-11  来源:MultiSilicon

电脑蓝屏的原因就是Windows USB驱动碰到了无法处理的异常情况,比如u-boot在写nand flash时是无法接收从USB传送过来的数据的,这时如果用户使用DNW通过USB往开发板烧写镜像时,DNW就会卡在那里,一般这种情况下复位开发板电脑就可能出现蓝屏,因为Windows USB驱动不知道该如何处理这种异常情况。

下面谈谈解决方法:

Windows USB驱动碰到了无法处理的异常情况导致电脑蓝屏是Windows内核的一种自我保护方式,在linux操作系统上就不会出现这种情况。当然放弃Windows而转向linux肯定不是最好的解决方法。

所以最好的解决方法之一就是修改u-boot,根据USB2.0协议,当USB Device无法处理USB Host发送过来的数据包时就应该发送一个stall数据包以作为回应,而u-boot显然没有这么做,结果Windows就不知道该怎么办了,然后一急之下就蓝屏了。

当然我并不是仅仅只经过理论分析就马上作出上面的结论,而是通过实验验证的。我将u-boot移植到ADS1.2下,并修改了USB驱动部分,当设备忙或其它原因而无法处理USB Host发送过来的数据包时就发送一个stall数据包以作为回应。结果之前经常出现的蓝屏问题就再也没有出现了。

我是在天嵌TQ2440开发板下进行测试的,读者可以点击下面的链接下载测试源代码来进行验证:

进入下载页面

 

原文链接,转载请注明出去:

 

相关阅读 更多 +
排行榜 更多 +
打螺丝高手

打螺丝高手

模拟经营 下载
解救火柴人计划安卓版

解救火柴人计划安卓版

体育竞技 下载
鸡生化精英安卓版

鸡生化精英安卓版

飞行射击 下载