二、先在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打开的文件输入输出流是操作应用程序的数据文件夹里的文件,这样存储的大小比较有限,为了更好的存取应用程序的大文件数据,应用程 ...
随机推荐
- Vue.js总结 [2017.6.5]
<head> <script src="https://unpkg.com/vue/dist/vue.js"></script> </he ...
- P3721 [AH2017/HNOI2017]单旋
题目:https://www.luogu.org/problemnew/show/P3721 手玩一下即可AC此题. 结论:插入x后,x要么会成为x的前驱的右儿子,要么成为x的后继的左儿子,这取决于它 ...
- 背包DP 存在异或条件的状态转移问题
题目链接 分析:有大佬说可以用线性基写,可惜我不会,这是用DP写的 题目明确说明可到达的位置只与能值有关,和下标无关,我们就可以排个序,这样每个数可以转移的区间就是它的所有后缀 我们可以用dp[i][ ...
- 『TensorFlow』SSD源码学习_其八:网络训练
Fork版本项目地址:SSD 作者使用了分布式训练的写法,这使得训练部分代码异常臃肿,我给出了部分注释.我对于多机分布式并不很熟,而且不是重点,所以不过多介绍,简单的给出一点训练中作者的优化手段,包含 ...
- 迭代FFT
int reverse(int x, int len){ ; ; i < len; i <<= ){ t <<= ; ; } return t; } Complex A[ ...
- ccf碰撞的小球
之前的代码有人运行不成功,自己又看了一下是输入变量顺序输入错了,现在是正确答案- #include<stdio.h> struct node{ int x; int dir; }; int ...
- WDA基础八:ROWREPEATER的使用
这玩意不知道什么时候用^_^ 组件:Row-Repeater 1.新建WDA程序并激活 ZLYWDA02 2.进入VIEW,创建CONTEXT: 表:0..n 选择行:单选 初始化选择行 3.创建循 ...
- django学习之——创建项目
创建项目让我迷茫了会: 直接cmd 执行django-admin.py startproject pro_name 肯定是不行的 必须cd到 D:\Program Files\Python3.3.5 ...
- .net mvc 列名 'Discriminator' 无效
环境:asp.net 4.0 + MVC 4 + Entity Framework 5异常:使用code first 碰到错误:列名 'Discriminator' 无效.这是一个很少见的错误,搜索了 ...
- vue中alert toast confirm loading 公用
import Vue from 'vue' import { ToastPlugin, AlertPlugin, ConfirmPlugin, LoadingPlugin } from 'vux' / ...