SSD202 uboot、kenel 烧写 以及 刷系统 初步学习有不足请见谅
SSD202 uboot、kenel 烧写 以及 刷系统
ISP 烧录当 flash 没有烧过系统或系统损坏时,可以先通过 ISP 烧录 boot,然后再通过 eth、usb 或 sd 烧录完整的系统下载并解压 tools/ssd201_ISP_5.0.15.rar 和 串口调试助手 到 windows 并解压;
串口调试助手下载地址:
https://the.earth.li/~sgtatham/putty/0.74/w64/putty-64bit-0.74-installer.msi
开发板及USB_debug工具购买链接: https://item.taobao.com/item.htm?id=631665290641
需要的工具的可以去我的资源里面自行下载 免费!!! 免费!!! 免费!!!
进入解压目录
打开串口助手,如果板子之前没有烧过系统,直接上电即可, 否则进入 uboot 下,执行 debug
关闭串口调试软件:
需要 USB_debug 工具
双击运行 Flash_Tool_5.0.15.exe:
清除 flash 数据
以下bin文件是上一篇编译产生 images 下的 boot 文件夹
将整个 images 复制到Windows下
烧录 GCIS.bin
烧录 IPL.bin
烧录 IPL_CUST.bin
烧录 u-boot_spinand.xz.img.bin
验证烧录完成后,关闭 ISP 烧录软件,打开串口调试软件,并重新给板子上电,观察是 否有打印信息:
ETH 烧录
ETH 烧录是在 uboot 下进行的,因此需要确保已经烧录了 uboot。
下载并解压 tools/Tftpd32.rar 并进入解压目录,双击运行 ftpd32.exe,开启 tftp 服 务端:
关闭Windows防火墙 !!!
否则会出现连接失败
1.自己存放images文件夹的路径
2.电脑的IP地址(尽量在192.168.1.xxx 也可以设置为固定IP)
板子进入 uboot,并设置 ipaddr 和 serverip 这两个环境变量,并确保板子和电脑能 够通信:
设置板子IP setenv ipaddr 192.168.1.112
设置服务器IP setenv serverip 192.168.1.166(对应上面的2)
确保在一个网段
# setenv ipaddr 192.168.1.112# setenv serverip 192.168.1.166# saveenv
执行 estar,开始更新系统:
# estar
此外还有两种烧录方法 USB烧录 和 SD卡烧录
由于我只使用了ETH烧录,另外两种方法不在此赘述
有需要的小伙伴请参考:https://blog.csdn.net/ami82/article/details/110958233
接下来Ubuntu安装依赖
给板子刷系统
如果不想麻烦可以直接去GitHub获取镜像文件可以直接省去中间过程直接刷系统:
https://github.com/wireless-tag-com/8ms-sstar/tree/main/images
然后跳过环境搭建、以及编译 从下面 刷系统 开始!!!
下面为自己搭建环境并编译
ubuntu 16.04.3 64位系统
# sudo apt-get install subversion build-essential libncurses5-dev zlib1g-dev gawk git ccache \gettext libssl-dev xsltproc libxml-parser-perl \gengetopt default-jre-headless ocaml-nox sharutils textinfo
# sudo dpkg --add-architecture i386
# sudo apt-get update
# sudo apt-get install zlib1g:i386 libstdc++6:i386 libc6:i386 libc6-dev-i386
下载代码
# git clone https://github.com.cnpmjs.org/wireless-tag-com/openwrt-ssd20x.git
安装toolchian
下载toolchain 链接:https://pan.baidu.com/s/1SUk1a-drbWo1tkHQzCgchg 提取码:1o3d
解压缩toolchain
# sudo tar wt-gcc-arm-8.2-2018.08-x86_64-arm-linux-gnueabihf.tag.gz -xvf -C /opt/
设置环境变量,修改 ~/.profile文件(vim ~/.profile
), 将下面这行添加到文件末尾
# PATH="/opt/gcc-arm-8.2-2018.08-x86_64-arm-linux-gnueabihf/bin:$PATH"
手动生效环境变量
# source ~/.profile
测试交叉工具链
# arm-linux-gnueabihf-gcc --version
编译
生成机型配置文件
# cd 18.06
# ./scripts/feeds update -a
# ./scripts/feeds install -a -f# make WT2022_wt
机型名 说明 WT2022 SSD202+SPI NAND WT2011 SSD201+SPI NAND
编译
make V=s -j8
编译产物 位于bin/target/sstar/ssd20x/WT2022
文件名 说明
WT2022-sysupgrade.bin 升级文件
WT2022-uImage.xz 内核文件
WT2022-root-ubi.img 根文件系统(SPI NAND)
刷系统
如果系统为原始linux系统,请先通过如下方法将系统刷机成openwrt系统
上电按住Enter按键,进入uboot,执行如下命令(SSD202_openwrt.bin位于images目录下,请自行拷贝到tftp32服务器目录下,设置电脑IP为192.168.1.88)
需要用到工具:串口调试工具putty 、ftpd32.exe、网线、usb_debug工具
# setenv ipaddr 192.168.1.11
# setenv serverip 192.168.1.88
# tftp 0x21000000 SSD202_openwrt.bin
# nand erase.chip
# nand write.e 0x21000000 0x00 ${filesize}
# reset
升级(自行选择升级与否及升级方法)
1.系统中通过串口或者telnet进入系统后台,执行如下命令:
# cd /tmp
# tftp -g 192.168.1.88 -r WT2022-sysupgrade.bin
# sysupgrade WT2022-sysupgrade.bin
升级完成之后,系统将自动重启
2.uboot下通过串口和网口进行升级(上电阶段按下enter按键),执行如下命令:
设置环境变量,启动网络
# setenv serverip 192.168.1.88
# setenv ipaddr 192.168.1.11
# setenv ethinitauto 1
# saveenv
# reset
重启之后,按下Enter按键重新进入uboot
3.SPI NAND
升级
# tftp 0x21000000 WT2022-root-ubi.img
# nand erase.part ubi
# nand write.e 0x21000000 ubi ${filesize}
参考文档:https://blog.csdn.net/ami82/article/details/110958233
SSD202 uboot、kenel 烧写 以及 刷系统 初步学习有不足请见谅相关推荐
- Linux学习笔记---使用MfgTool工具烧写自己的系统(二)
目录 准备文件 重命名文件 替换firmware文件夹中的文件 替换files文件夹中的文件 修改cfg.ini配置文件 烧写系统 启动系统 设置网络相关环境变量 设置环境变量bootcmd 和 bo ...
- 一、烧写最小linux系统
一.概述 开发板不仅可以运行Android和Qt,还可以运行最简单的Linux最小文件系统,最小系统有一下特点: "麻雀虽小五脏俱全",便于学习 不能够实现图形界面 二.搭建准备 ...
- NXP的uboot编译\烧写体验
配置:IMX6ULL+eMMC(8G)+sd卡(16G) 平台:ubantu20/22 第一步:恩智浦官方原版的uboot,放到ubantu文件夹里 第二步:输入下面代码解压它, 解压完成有一个新的文 ...
- 裸板烧写linux内核,嵌入式linux学习(二):烧写裸板进程
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 用了两种方式烧写裸板 1.使用J-link烧写uboot,然后再使用uboot烧写其他进程1)J-link只能烧写Nor ...
- uboot阶段flash分区_1.12.uboot的烧写和flash分区1
随着通信行业发展,网速越来越快,网络也从文本时代发展越过语音时代到了现在视频时代,"优酷.爱奇艺"."微视频"."直播"等的出现也是视频逐步 ...
- [ROC-RK3568-PC] 手把手教你把出厂的Android系统烧写为Ubuntu系统
- [ROC-RK3568-PC] 手把手教你打包能使用Etcher或dd命令烧写的Ubuntu系统固件
- 嵌入式系统烧写uboot/bootloader/kernel的一般方法
嵌入式系统烧写uboot/bootloader/kernel的一般方法 本文介绍了在嵌入式系统中烧写uboot/bootloader/kernel 的一般方法,以及如果uboot或者内核出现错误, ...
- 【Tiny4412】Tiny4412编译和烧写uboot
00. 目录 文章目录 00. 目录 01. Uboot简介 02. 安装交叉编译器 03. 编译Uboot 04. 烧写Uboot 05. 测试Uboot 06. 常见问题解决 07. 附录 01. ...
最新文章
- python---django中orm的使用(5)数据库的基本操作(性能相关:select_related,和prefetch_related重点)(以及事务操作)...
- 技术面试的时候应该了解公司点什么
- [Issue Fixed]-Ubuntu开发环境下遇到的环境问题梳理
- 转载:二叉树的前中后和层序遍历详细图解(递归和非递归写法)
- oracle 创建一揽子协议,Oracle PO - 模块一揽子采购协议小结
- 实现粗糙表面_什么是表面粗糙度,你真懂吗?
- python爬虫2——下载文件(中华网图片库下载)
- SQL SERVER 2012/2014 链接到 SQL SERVER 2000的各种坑
- opencv识别圆的代码(转)
- 微信小程序sass不编译怎么办_不吹牛,四款免费实用的微信小程序,打开立即使用!...
- 驱动该如何入门 关于file_operations和Linux设备模型
- PDFLib9以上版本的去水印办法
- 计算机如何进行数值计算
- Redis-stack 初体验
- 物理机是什么?跟云服务器有什么区别
- 两种求矩阵伪逆的方法
- 好程序员大数据培训之Hadoop常见问题
- python打印列表的下标和值的例子:
- PDF Expert快捷键
- 无线网卡驱动正常却搜索不到无线信号