本文实验环境:
1. windows 7(64bit)
2. JZ2440

一、 问题的提出——没有驱动

假设板子的 Nor Flash 上已经烧好了 u-boot,那么如何通过 u-boot 的USB下载功能把程序烧写到 Nand Flash 呢?

其实以上功能的实现,可以拆解为以下几个步骤:
(1)PC和板子通过USB相连,程序(.bin文件)通过USB接口下载到板子的内存里
(2)u-boot擦除Nand Flash的某个区域
(3)u-boot把内存中的程序写入Nand Flash

“win7下不能使用dnw烧写”,究其原因不是(2)和(3)的问题,而是(1)的问题。

要想把PC上的文件通过USB传输给板子,需要具备以下条件:
(1)板子和PC通过USB线连接
(2)板子上有USB接收文件的驱动
(3)PC上有USB发送文件的驱动
(4)PC上有一个应用程序,比如dnw.exe,这个程序调用USB驱动,把文件发送给板子

进一步讲,“win7下不能使用dnw烧写”是因为缺乏(4)中的驱动。

所以,用USB线连接板子和PC后,设备管理器会提示没有驱动。此时如果安装韦东山老师提供的驱动,会安装失败。我的理解是韦东山老师提供的驱动是针对XP的,对Win7不适用(对64bit肯定不适用,32bit的我不知道)。

所以,我们需要找一个能用的驱动。比如说,友善之臂的USB驱动。

二、下载驱动

下载地址:http://download.csdn.net/detail/tanhao199406/8671741

下载完成后,尝试安装。安装方法是:
鼠标移动到设备管理器的感叹号处,点击右键,选择【更新驱动程序软件】,再选择【浏览计算机以查找驱动程序软件】,点击【浏览】,选择已下载驱动所在的文件夹,点击【下一步】。

遗憾的是,此番努力后,设备管理器的感叹号并没有消失。

三、解决签名问题

究其原因,此驱动没有微软官方签名,所以只能在Win7 测试模式下使用。为了解决这个问题,我们需要下载一个软件——DSEO(Driver Signature Enforcement Overrider)。
下载地址: http://download.csdn.net/detail/tanhao199406/8671725

下载后启动这个软件,进入主界面,如下图:

(1)选择【Enable Test Mode】,点击【Next】
(2)弹出以下窗口,点击【确定】

(3)选择【Sign a System File】,点击【Next】
(4)输入驱动文件名(包括完整路径),比如
C:\Windows\System32\drivers\secbulk.sys,然后点击【OK】

(5)弹出以下窗口,点击【确定】

(6)选择【Exit】,点击【Next】,退出软件
(7)重启电脑后,再次用USB线连接板子和PC。此时打开设备管理器,可以看到如下图所示,说明驱动问题已经解决。

需要说明的是:因为启动了WIN7的测试模式,所以桌面右下角有一个图标:

四、如何关闭测试模式

当我们不需要用这个驱动的时候,可以关闭测试模式。
如何关闭测试模式?

方法一:用DSEO软件。

启动DSEO软件。
(1)选择【Disable Test Mode】,点击【Next】
(2)弹出一个窗口,点击【确定】
(3)重启电脑

方法二:通过命令行

以管理员身份运行cmd.exe
(1)输入bcdedit /set testsigning off
(2)重启电脑

五、再次打开测试模式

方法一:用DSEO软件。

启动DSEO软件。
(1)选择【Enable Test Mode】,点击【Next】
(2)弹出一个窗口,点击【确定】
(3)重启电脑

方法二:通过命令行

以管理员身份运行cmd.exe
(1)输入bcdedit /set testsigning on
(2)重启电脑

【参考资料】
[1] http://blog.csdn.net/tanhao199406/article/details/45560165
[2] http://blog.sina.com.cn/s/blog_4a033b090100k0c6.html

win7下不能使用dnw烧写的解决办法——韦东山嵌入式Linux学习笔记05相关推荐

  1. 用OpenJTAG烧写程序到Flash—— 韦东山嵌入式Linux视频学习笔记03

    说明:本文仅在Windows环境下实验. 韦东山的JZ2440(v2),可以选择从Nor Flash启动,也可以选择从Nand Flash启动,不管从哪里启动,都需要Flash上有程序,没有程序的话, ...

  2. 烧写文件系统——韦东山嵌入式Linux学习笔记11

    本文实验环境: 1. windows 7(64bit) 2. JZ2440(V2) 使用 u-boot 烧写文件系统,一般有两种方法. 1. 通过USB下载功能 2. 通过TFTP功能 通过USB下载 ...

  3. 使用 u-boot 烧写内核——韦东山嵌入式Linux学习笔记10

    本文实验环境: 1. windows 7(64bit) 2. JZ2440(V2) 使用 u-boot 烧写内核,一般有两种方法. 1. 通过USB下载功能 2. 通过TFTP功能 通过USB下载功能 ...

  4. 使用u-boot的USB下载功能烧写程序到Nand Flash ——韦东山嵌入式Linux学习笔记06

    本文实验环境: 1. windows 7(64bit) 2. JZ2440(V2) 假设板子的Nor Flash上已经烧好了u-boot,如果我想利用u-boot的USB下载功能,把一个裸板程序烧写到 ...

  5. 使用u-boot的tftp下载功能烧写程序到Nand Flash ——韦东山嵌入式Linux学习笔记09

    本文实验环境: 1. windows 7(64bit) 2. JZ2440(V2) 操作步骤: (1)设置好开发板和PC的IP地址,使开发板可以 ping 通 PC 如果搞不定,可以参考我的博文 ht ...

  6. Win7 下安装 Visual Studio 2008 失败的解决办法

    Win7 下安装 Visual Studio 2008 失败的解决办法 安装失败一般的可能性如下: 1.这种可能性对于熟练的软件开发人员应该极小--试图在64位的系统上安装 Visual Studio ...

  7. 嵌入式Linux学习笔记—fastboot烧写Android

    本系列为本人在自学过程中的学习笔记,如有错误欢迎大家指正. 学习资料为讯为ITOP4412开发板. fastboot烧写Android 1.主要工具 OTG 接口烧写方式也叫 fastboot 烧写方 ...

  8. 用J-Link烧写u-boot到Nor Flash—— 韦东山嵌入式Linux视频学习笔记04

    说明:本文的实验环境为Windows7+JZ2440 J-Link 只支持烧写 Nor Flash,不支持烧写 Nand Flash(为什么呢?先不探究原因). 如果想烧写程序到Nand Flash, ...

  9. 韦东山 嵌入式Linux应用开发基础知识 下【串口 IIC SPI

    10 串口 因为UART没有时钟信号,无法控制何时发送数据,也无法保证双方按照完全相同的速度接收数据.因此,UART为每个字节添加额外的起始位和停止位,以帮助接收器在数据到达时进行同步: 双方还必须事 ...

最新文章

  1. 唯品会订单分库分表的实践总结以及关键步骤--转
  2. Android Studio(10)---使用 Layout Editor 构建 UI
  3. Java基础学习总结(42)——Log4j 2快速入门及Log4j 2 + Slf4j 的配置和使用
  4. 开发者必备Linux命令
  5. C语言会场安排问题贪心算法,贪心算法解决会场安排问题多处最优服务次序问题(含源代码).doc...
  6. 如何查看当前IP地址
  7. Android VLc编译
  8. 使用UUID生成32位ID
  9. 计算机辅助技术衡量国家,机械计算机辅助技术(CAD)及其发展趋势
  10. ext3格式化成ext4
  11. Scala高阶函数操作示例详解
  12. Python 列表(list)长度
  13. ENFI下载器地址——百度网盘不限速下载工具
  14. 神奇宝贝java_我的世界下载 1.25神奇宝贝整合包_单机游戏下载
  15. Google财经香港版上线,香港路演
  16. FY4A数据读取与插值
  17. js 保留两位小数和截取两位小数
  18. .NET 拼音汉字转化(全面)
  19. 数学口袋精灵感受与BUG
  20. “鸡娃”新选择?首个AI象棋机器人来了,还当起了郭晶晶家的私教!

热门文章

  1. 授于某个用户有写作业和调度作业的权限
  2. 字段中存在空值的问题测试
  3. 区域增长——初步学习
  4. pip 和 conda 源更改
  5. 统计自然语言处理笔记
  6. 对所写博客的几点说明
  7. deb和rpm文件安装
  8. 转:c/c++ 运行库
  9. linux 动态链接库的创建和使用--动态连接
  10. 【算法】一个简单的Resnet原理