|
本帖最后由 zanjie1999 于 2020-8-25 21:09 编辑 发现居然有人tftp都不会用,写一个这样的教程,不需要u盘和emmc中的系统就可以刷spi,非常简单 1. ttl连接,连接绿色部分就可以了# y* M/ h u- C7 M
; c2 K3 k% J3 [3 q) I/ w7 N左边的uart就是,将他连接到ttl小板,连接方式是:1 l. O$ W) H: s
将小板的跳线切换到3.3的位置,如果你的小板没有这种设计,忽略这一行; ?/ {& }& g+ P9 j( ?
tx接到小板rx
3 m. [1 z, w* }! j0 Zrx接到小板tx
3 e3 s: C$ R0 R" R1 l, Fgnd接到小板gnd e8 |* y. f7 B1 O+ e! ]' J- `. Z u
4 k* X, s" Q2 i- r接好后,把小板插电脑上
1 B. ]$ G% ?; E7 }5 l9 i x. }6 n I: A! z# c4 ?
) q8 U/ i' T9 g: [$ [% i }% q
2. 随便找个终端程序,比如下面这个, macOS和Linux可以使用minicom或者screen,按照你的习惯来选择即可5 b& S' w7 P) R* l0 v' ?6 l8 k, S
* W3 G- C; p w& q打开它
4 x. v) n1 a/ s8 S5 ~- {/ E
" \; U& x( K/ j* o0 j! R# c
新建一个串口会话,此时将载波率设置成115200,如果之前新建过那这步就免了' ~7 W) Y# ]4 O( m9 I
2 e' j7 r* ~; R' V% y
) i' z1 T. X0 A; Y' |& U3. 打开那个串口会话,选择你的ttl小板,通常是com数字最大的那一个
' I- \, @, ?9 N: |
6 C2 x* P( u4 q8 K
然后会打开一个空白的窗口9 m2 B" O% A+ m- U! q
! I# T- S2 v& N0 P9 t3 e
4. 这时候给猫盘上电(插电)这时应该会看到窗口有输出内容,如果没有,可以试着把猫盘处的tx和rx对调一下
' @* H" j" G) d! n+ T/ V6 ]5 d! Z. `" F7 ]& D; e T1 }; }
看到输出后不停的按回车,直到你看到
% r6 @8 n8 G g! u! T5 x2 a进入了uboot命令模式
/ k# m6 `, M1 L" i
7 U0 O+ g4 y+ c; J n/ h5. 你已经完成一小半了,把你要刷的bin文件和tftp程序放在一起,比如下面这样$ C l6 ]' V/ `/ D2 E7 Q5 {- v" J
! O: V( l" ?: d
打开tftp服务器,macOS和Linux用户你们可以自己配置一个tftpd作为tftp服务器. Q1 {* H, E" m( B- J
$ \6 Y+ T8 [, N6.设置监听ip,并记下ip地址,这一步很重要7 D) u9 C5 R( h3 a3 o
; ^+ A$ j% a' Q7 ~7 F. Q8 _通常Realtek,Intel,Broadcom,Qualcomm,Mediatek,Killer开头的. x' u0 ]3 Q1 x9 Q7 I' N
+ }; ?. j" b6 _0 y ?
+ ?+ V. j( `) M& a! T
7. 将猫盘插上网线,和电脑连接到同一个路由下5 k' k1 e5 E, Q$ j) i2 ?
猫盘的ip地址 可以是 刚刚记下的ip地址,把最一个 . 后面的数字改为2-254之间的任意数字,不和记录的ip重复就可以了
; R, N4 x5 P/ @ _/ ?) O- setenv ipaddr 猫盘的ip地址
8 X, |& V! U# V$ A - setenv serverip 刚刚记下的ip地址6 t3 [# j! {( t! D
复制代码 地址就设置完了
+ b% W+ O7 V% Y5 T9 _
; t2 h$ X4 D) E% y
& c1 C: {6 A, N* I% Y" z. N8. 下载固件到猫盘" N+ D. U/ U- b' D+ r
- tftpboot 0x1000000 你要刷的bin文件的文件名
复制代码 像下图这样提示done那就成功了,如果没成功可以尝试重插网线再重新操作本步骤
, w; a, w5 d9 ^0 @5 J' k
8 I- C1 [ |( b1 L& q1 r+ [+ [1 A0 T1 [
9.刷spi,请确定上面那步已经成功4 e. Y$ F' A' A% f
- sf probe
4 o/ Z0 l. A: z5 e2 I6 @7 j- Q - sf erase 0x0 0x8000000 {6 x9 e/ Z/ E& z) A- k2 m; C9 @/ B
- sf write 0x1000000 0x0 0x800000
复制代码 执行完之后,spi就刷好了,可以拔电重启了
# e& K% S3 T' z& t8 n, N6 T B3 W
! Y0 \: T3 H6 j$ }! l, j2 L
1 Q d/ H( e- Q( ]/ [10. 改mac
' V+ T& N. m6 J; ?2 S N使用 4 的方法进入命令模式,把下面的mac替换成你猫盘盖子上印的mac' ?$ L, L h) f- G
- env default -a
* j4 T0 H( S# t - setenv ethaddr "4c:65:a8:00:00:00", e8 P7 J- [/ a) e! Y
- saveenv
复制代码 再断电重启即可 C4 I0 q; t# q0 f, \
; `3 o. f$ G0 [4 J- m' K
-------------------------- wtp 部分 --------------------------
% Y2 @' f) q4 R
6 G3 j: M+ y- U- h% F" O2 N" {如果显示
' c; Z( |5 H6 V1 d8 O& e, m那你就需要下面的内容了,此操作需要Linux系统,那怕是U盘启动的liveCD或者虚拟机都可以
7 a9 Q# r1 o' Q% [6 w5 I. Y: h; D) d l
1. 如果你是虚拟机,请把你的ttl小板分进去,不同的虚拟机操作不一样,一般在 设备 -> usb 菜单中$ Q% d4 O5 y$ K1 j9 C( u' R
( Q x1 }" [5 t+ @7 i2. 执行. J" b; S2 v8 C
应该能看到输出内容中有usb子样,这时小板已经连接成功了1 C. w+ [ R7 E" V
! I5 G0 _: N% q7 T9 g
3. 在 wtp 文件夹下打开终端
- R) c4 _8 l( g7 K7 M
0 b9 o j6 [4 v4. 执行
& H/ K2 F! p7 ^$ C$ o: H( S% O- sudo ./WtpDownload_linux -P UART -C 0 -R 115200 -B ./TIM_ATF.bin -I ./wtmi_h.bin -I ./boot-image_h.bin -E
复制代码 可能会要求你输入密码,密码是你系统用户的登陆密码
4 N$ K5 s9 }2 P" ^+ |
5 B' _( n# M: ^4 Y" J2 Y% b完成后回到本文的开始,刷入uboot8 z5 R+ p1 [+ R) e g( Z# ]0 |
4 H0 d+ Q$ m9 k% {1 \6 [好了写完了,10点吃晚饭会不会有点晚
+ f, f; L6 O% h2 w% m" k1 t" k& }# ^2 z/ K5 |/ p
& F* r* \& o/ v$ J) n+ F
|
评分
-
查看全部评分
|