二、先在SD卡上启动U-boot,再烧写新的U-boot进Nandflash
1. 制作SD卡
先准备一张2G的SD卡(不能用8G的,2G的卡和8G的卡协议不一样),和烧写SD卡的工具write_sd以及需要烧写到SD卡中的u-boot-movi.bin。将SD卡格式化后连接到Ubuntu虚拟机中,注意在SD卡需要插入到读卡器中,不能用电脑自带的SD卡槽,否则在Ubuntu下认不到。先执行ls /dev/sdb*,能够看见有一个/dev/sdb文件,说明Ubuntu认到SD卡了。如下图:

执行命令:sudo ./write_sd /dev/sdb u-boot-movi.bin
将u-boot写入SD卡中。将SD卡插入6410开发板中,将拨码开关设置为SD卡启动,连接串口运行minicom或其他串口终端(先保证串口配置是正确的),启动板子后串口正常打印则说明SD卡上成功烧写了U-boot。需要说明的是写入SD卡的u-boot-movi.bin支持DNW但不支持TFTP,而且write_sd这个工具制作出来似乎就是为了烧写u-boot-movi.bin这一个文件,不能写入其他的文件 ,因此我是借助u-boot-movi.bin烧写自己编译出的U-boot。
2. 使用DNW下载U-boot
先准备好要下载进Nandflash的U-boot “u-boot-nand.bin”
1)在板子终端中输入:dnw 50008000
2)在虚拟机中输入:sudo dnw u-boot-nand.bin
成功后在6410内存地址为50008000的地方存放的就是u-boot-nand.bin,此时要将该文件写入Nandflash的0地址中。
3)在板子终端输入:nand erase 0
每次要往Nandflash中写入新数据时一定要保证该区域是擦除过的。nand erase后面可以跟两个参数,第一个是要擦除的首地址,第二个参数是要擦除的大小,如果输入nand erase 0则是整片擦除。
4)在板子终端输入:nand write 50008000 0 32000
第4步的意思是将内存地址为50008000的数据写入Nandflash中,写入长度为0x32000个字节。32000这个数是根据u-boot-nand.bin文件大小而定的,我的u-boot-nand.bin不到200k,因此写入200k确保U-boot完全写入。
5)将板子设置为Nandflash启动,重启后看打印信息,正常输出表明U-boot写入Nandflash成功并且能从Nandflash启动。
二、先在SD卡上启动U-boot,再烧写新的U-boot进Nandflash的更多相关文章
- sd卡无法启动及zc706更改主频后可以进入uboot无法启动kernel的坑
好长的标题 +_+ 1.sd卡无法启动 起因:kernel底下通过dd测试速度,擦写了sd卡,再启动时发现无法启动 于是重新格式化,再将BOOT.bin 相关dtb u-rootfs zImage和u ...
- android学习笔记47——读写SD卡上的文件
读写SD卡上的文件 通过Context的openFileInput.openFileOutput来打开文件输入流.输出流时,程序打开的都是应用程序的数据文件夹里的文件,其存储的文件大小可能都比较有限- ...
- Android开发之SD卡上文件操作
1. 得到存储设备的目录:/SDCARD(一般情况下) SDPATH=Environment.getExternalStorageDirectory()+"/"; 2. 判断SD卡 ...
- Android权限安全(12)apk安装在sd卡上时,如何保证数据安全
apk安装在sd卡上时,如果把sd卡拿下安在另一个手机B上,那么apk的数据就可以被B里的恶意应用访问了. 下面是android解决这个问题的方案: 绑定设备 1,绑定perDevice使得应用以及应 ...
- Android全屏截图的方法,返回Bitmap并且保存在SD卡上
Android全屏截图的方法,返回Bitmap并且保存在SD卡上 今天做分享,需求是截图分享,做了也是一个运动类的产品,那好,我们就直接开始做,考虑了一下,因为是全屏的分享,所有很自然而然的想到了Vi ...
- android 操作SD卡上的文件
(1)说明:操作SD卡上的文件须要增加下面权限 在SD卡上创建和删除文件权限 <uses-permission android:name="android.permission.M ...
- Android SD卡上文件
1. 得到存储设备的目录:/SDCARD(一般情况下) SDPATH=Environment.getExternalStorageDirectory()+"/"; 2. 判断SD卡 ...
- Android使用sqlliteOpenhelper更改数据库的存储路径放到SD卡上
假设使用默认的系统管理,默认放在包以下.比較省心.并且在卸载app后不会造成数据残留.可是这样也有一个问题.比方我做一个背单词的软件,那么当用户卸载掉这个app时,他辛辛苦苦下载的单词库也没了... ...
- android中读取SD卡上的数据
通过Context的openFileInput或者openFileOutput打开的文件输入输出流是操作应用程序的数据文件夹里的文件,这样存储的大小比较有限,为了更好的存取应用程序的大文件数据,应用程 ...
随机推荐
- 【Java】【7】枚举类
用处:规范了参数的形式,更简洁易懂 实例: //消息类型 public enum MessageTypeEnum { AdminReward(1, "官方消息"), StoreRe ...
- SpringMVC,Controller的返回页面类型以及路径设置默认值
一般设置在spring-servlet.xml里面设置 <!-- 对转向页面的路径解析.prefix:前缀, suffix:后缀 --> <bean class="org. ...
- java进行url编码和解码
public static String getURLEncoderString(String str) { String result = ""; if (null == str ...
- leetcode-algorithms-33 Search in Rotated Sorted Array
leetcode-algorithms-33 Search in Rotated Sorted Array Suppose an array sorted in ascending order is ...
- java动态代理机制
首先了解代理设计模式,其思想是为其他对象提供一种代理以控制对这个对象的访问. java动态代理就是遵循这种思想,spring中的AOP实现原理就是java的动态代理. 在java的动态代理机制中,有两 ...
- MySQL-1236问题处理
2018年9月26日 9:25 现象:192.168.7.206.192.168.7.207互为双主,同步报错 1236 7.206现象如下 root@mysqldb 09:15 [mys ...
- asm ftp utilty and usage
Oracle 11g ASM supports ASM FTP, by which operations on ASM files and directories can be performed s ...
- Pinpoint是一个开源的 APM (Application Performance Management/应用性能管理)工具,用于基于java的大规模分布式系统,基于Google Dapper论文
Pinpoint是一个开源的 APM (Application Performance Management/应用性能管理)工具,用于基于java的大规模分布式系统,基于Google Dapper论文 ...
- linux nginx 添加到全局变量中(环境变量)
ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/ /usr/local/bin/就是环境变量目录
- 01背包问题之2(dp)
01背包问题之2 有n个物品,重量和价值分别为wi和vi,从这些物品中挑选出重量不超过W的物品,求所有挑选方案中物品价值总和的最大值 限制条件: 1 <= n <= 100; 1 < ...