|
|
本帖最后由 zanjie1999 于 2020-8-25 21:09 编辑 发现居然有人tftp都不会用,写一个这样的教程,不需要u盘和emmc中的系统就可以刷spi,非常简单 1. ttl连接,连接绿色部分就可以了$ B4 N7 Y# O# p9 q
( h& v1 w: C& U
左边的uart就是,将他连接到ttl小板,连接方式是:
+ ] J& J5 K+ ~$ q" X, X将小板的跳线切换到3.3的位置,如果你的小板没有这种设计,忽略这一行
' k' P, ]. G9 Z! {3 ptx接到小板rx* r* m( [+ @5 w# }, Z% z0 T" E- K
rx接到小板tx
7 A8 v' e% L3 E" Wgnd接到小板gnd
: \$ y( E& s3 o8 C8 B3 }* U
9 O% Z, a4 w5 S$ w# y8 m# ^& q6 j接好后,把小板插电脑上
+ ?& ~' q3 j' ^" m" c: Y% K Y3 t
- d7 J5 Q' _' y- b2 A6 ^
2. 随便找个终端程序,比如下面这个, macOS和Linux可以使用minicom或者screen,按照你的习惯来选择即可0 W% F/ g9 }6 O/ M) H
( H, V: U: L, ^; x
打开它% v: q+ j0 t* `- n. F
/ u1 E0 ~0 b2 S+ P3 t0 T新建一个串口会话,此时将载波率设置成115200,如果之前新建过那这步就免了% P @5 R5 [% p7 s( o3 k# R! `
# E N$ W. Z, q& C" g
$ v& ?1 C& z* C# V& U+ p
3. 打开那个串口会话,选择你的ttl小板,通常是com数字最大的那一个% Y3 H6 A$ p" b) P6 q" }
- @7 M: A4 I8 X% m. x; o
然后会打开一个空白的窗口( o' Y: J* J: O" ?
0 Z5 \4 q: g5 [4. 这时候给猫盘上电(插电)这时应该会看到窗口有输出内容,如果没有,可以试着把猫盘处的tx和rx对调一下
" o9 O5 F+ f- A* V! {1 L
& @% e) B6 w S看到输出后不停的按回车,直到你看到0 N" i6 l4 Q& a; C- h! S1 p
进入了uboot命令模式
7 h2 y' C5 `8 A
1 X& R M u/ ^& ?5. 你已经完成一小半了,把你要刷的bin文件和tftp程序放在一起,比如下面这样
7 V& f" H G8 O7 A% W$ ^2 u
x( ?" ]1 |" R% x0 b) d. L0 }1 Z打开tftp服务器,macOS和Linux用户你们可以自己配置一个tftpd作为tftp服务器
2 T* e3 b; F8 z5 |7 K4 T6 U/ V0 Y! A7 H4 c. \0 B) p% Q4 e
6.设置监听ip,并记下ip地址,这一步很重要1 t* T+ k4 p* P( l0 i" a3 Q" ~
$ N4 V+ J6 J9 g8 q; U
通常Realtek,Intel,Broadcom,Qualcomm,Mediatek,Killer开头的. X& O4 M0 \, @
) w6 |0 X* p9 R
% P; A: Q3 |) |" O* ?7. 将猫盘插上网线,和电脑连接到同一个路由下
( } ?6 q8 j; ^5 L猫盘的ip地址 可以是 刚刚记下的ip地址,把最一个 . 后面的数字改为2-254之间的任意数字,不和记录的ip重复就可以了 N* [) ? A' T' @
- setenv ipaddr 猫盘的ip地址' w! v' z4 u. l+ J
- setenv serverip 刚刚记下的ip地址
- N; t& ?* m/ n6 Q
复制代码 地址就设置完了% e1 ~: v# r- C0 ?- k, f1 M
8 y! B! a# _% b7 C" `4 g! x9 ?
. Q8 V2 X# R; b* a7 e
8. 下载固件到猫盘
- X6 Q3 w0 }/ ?: R2 B s+ G" O- tftpboot 0x1000000 你要刷的bin文件的文件名
复制代码 像下图这样提示done那就成功了,如果没成功可以尝试重插网线再重新操作本步骤
/ E, U8 B Q- _$ H) M
" u& L5 F; m; o
" X2 V5 Z6 w* B/ Q. [7 V9.刷spi,请确定上面那步已经成功1 h0 T# Y) g u. T- _1 B* D
- sf probe
+ ?! j" Z+ A4 f | - sf erase 0x0 0x800000
9 t F* [! ^, B3 H - sf write 0x1000000 0x0 0x800000
复制代码 执行完之后,spi就刷好了,可以拔电重启了
, T9 X, u( t5 D2 v1 L& P* \ q4 |
$ a/ x6 L$ |% Z3 F
1 ]; A1 W: {( x" i3 Q10. 改mac
% d) T/ y2 K5 m# B使用 4 的方法进入命令模式,把下面的mac替换成你猫盘盖子上印的mac) I7 N: k/ @( a4 }' ~
- env default -a
9 }+ Q0 {. ^& e! ~! z* Y6 _+ z$ f3 H - setenv ethaddr "4c:65:a8:00:00:00" j, k4 I w9 c! ]7 Z" d; U
- saveenv
复制代码 再断电重启即可/ y7 N/ t8 h5 m) x, g
9 T# e" u& ~' _# x+ ~& I6 c-------------------------- wtp 部分 --------------------------- ]: N! m" i( p8 D' U0 C% V5 s4 w- L
: ?9 L3 H2 ~; i- U/ ?
如果显示 q5 i& n, F7 ~# k3 _3 g0 ?
那你就需要下面的内容了,此操作需要Linux系统,那怕是U盘启动的liveCD或者虚拟机都可以3 u" E' K# a5 Q7 R7 I
0 d& N, w' N6 [, Z3 {
1. 如果你是虚拟机,请把你的ttl小板分进去,不同的虚拟机操作不一样,一般在 设备 -> usb 菜单中
. ?8 K$ T- c+ r! _! p! o" H: m* C" \4 i3 x5 T% o1 K5 h
2. 执行
! o& S' K( [$ Y) p8 b应该能看到输出内容中有usb子样,这时小板已经连接成功了/ r( X: a6 x; \3 g! p5 ?7 g% j/ M
( i V/ q1 l2 ]6 W3 v3. 在 wtp 文件夹下打开终端" F- p! w6 K* }) x5 ]' Y$ R, u
3 i# R8 u& c* s% a( l
4. 执行+ O' s1 D3 b+ m
- sudo ./WtpDownload_linux -P UART -C 0 -R 115200 -B ./TIM_ATF.bin -I ./wtmi_h.bin -I ./boot-image_h.bin -E
复制代码 可能会要求你输入密码,密码是你系统用户的登陆密码# _& ~/ ^- g- A- p' k3 _ X% d- o
6 v2 ?/ K' m# l8 R0 r
完成后回到本文的开始,刷入uboot
* D! ^$ H4 {, r1 G0 y# a
0 w) p" m( \- D' e好了写完了,10点吃晚饭会不会有点晚& o8 k: T8 A6 i
# Q$ g4 l- F- x# Q! k _6 [+ W- p" ?& H
|
评分
-
查看全部评分
|