我是按着大神的操作方法 文件是下载沉鱼版主的V3s_TFCard.7z
1) 删除TF卡所有分区
2) 将uboot写入到sd卡8k偏移处(必须8K偏移, brom龟腚的)。
sudo dd if=u-boot-sunxi-with-spl.bin of=/dev/sdX bs=1024 seek=8
3) 建立第一个分区,大小32M(可以随意填写), 格式FAT16, 把zImage, sun8i-v3s-licheepi-zero-dock.dtb拷贝到 这个分区
4) 建立第二个分区,用尽剩余空间,格式ext4, 把buildroot产生的rootfs.tar解压到该分区根目录
tar xvf output/images/rootfs.tar -C /挂载的tf卡第二个分区目录
2出现的问题 就是就是屏幕一直在小企鹅页面 ,
3串口打印出下面的信息
U-Boot SPL 2017.01-rc2-00057-g32ab180-dirty (Sep 02 2018 - 19:25:33)
DRAM: 64 MiB
Trying to boot from MMC1
U-Boot 2017.01-rc2-00057-g32ab180-dirty (Sep 02 2018 - 19:25:33 -0700) Allwinner Technology
CPU: Allwinner V3s (SUN8I 1681)
Model: Lichee Pi Zero
DRAM: 64 MiB
MMC: SUNXI SD/MMC: 0
*** Warning - bad CRC, using default environment
Setting up a 800x480 lcd console (overscan 0x0)
dotclock: 33000kHz = 33000kHz: (1 * 3MHz * 66) / 6
In: serial@01c28000
Out: serial@01c28000
Err: serial@01c28000
U-Boot 2017.01-rc2-00057-g32ab180-dirty (Sep 02 2018 - 19:25:33 -0700) Allwinner Technology
CPU: Allwinner V3s (SUN8I 1681)
Model: Lichee Pi Zero
DRAM: 64 MiB
MMC: SUNXI SD/MMC: 0
*** Warning - bad CRC, using default environment
Setting up a 800x480 lcd console (overscan 0x0)
dotclock: 33000kHz = 33000kHz: (1 * 3MHz * 66) / 6
In: serial@01c28000
Out: serial@01c28000
Err: serial@01c28000
Net: No ethernet found.
starting USB...
No controllers found
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
reading /sun8i-v3s-licheepi-zero.dtb
11134 bytes read in 25 ms (434.6 KiB/s)
starting USB...
No controllers found
USB is stopped. Please issue 'usb start' first.
starting USB...
No controllers found
No ethernet found.
missing environment variable: pxeuuid
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00000000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0000000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/000000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/000
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-sunxi
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm
No ethernet found.
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default
No ethernet found.
Config file not found
starting USB...
No controllers found
No ethernet found.
No ethernet found.
=>
离线
有两个办法解决:
1. 参考第2步,修改 sun8i.h https://whycan.cn/t_561.html
#define CONFIG_BOOTCOMMAND "setenv bootm_boot_mode sec; " \
"load mmc 0:1 0x41000000 zImage; " \
"load mmc 0:1 0x41800000 sun8i-v3s-licheepi-zero-dock.dtb; " \
"bootz 0x41000000 - 0x41800000;"#define CONFIG_BOOTARGS "console=ttyS0,115200 panic=5 rootwait root=/dev/mmcblk0p2 earlyprintk rw vt.global_cursor_default=0"
重新编译u-boot, 拷贝bin到TF卡第一个分区
2. 参考第4步, 生成 boot.scr https://whycan.cn/t_682.html
新建一个文件 boot.cmd
写入 :
setenv bootargs console=ttyS0,115200 panic=5 rootwait root=/dev/mmcblk0p2 earlyprintk rw
setenv bootm_boot_mode sec
setenv machid 1029
load mmc 0:1 0x41000000 uImage
load mmc 0:1 0x41d00000 script.bin
bootm 0x41000000
保存
mkimage -C none -A arm -T script -d boot.cmd boot.scr
把boot.scr 文件拷贝到 TF卡第一个分区的根目录
二选一.
离线
好的 谢谢晕哥
离线
无情一刀 说:好的 谢谢晕哥
不用谢,应该是我感谢你到这里发帖。
你说的刚才第一个办法是不是就是直接在里面加上
#define CONFIG_BOOTCOMMAND "setenv bootm_boot_mode sec; " \
"load mmc 0:1 0x41000000 zImage; " \
"load mmc 0:1 0x41800000 sun8i-v3s-licheepi-zero-dock.dtb; " \
"bootz 0x41000000 - 0x41800000;"
#define CONFIG_BOOTARGS "console=ttyS0,115200 panic=5 rootwait root=/dev/mmcblk0p2 earlyprintk rw vt.global_cursor_default=0"
离线
对,相当于代替手工输入启动命令。
你有没有手工输入过uboot命令,没有就敲进去试一试,直观感觉一下。
你刚才说的第一个方法将bin拷贝到第一分区 这个bin的名字是叫什么啊
离线
晕哥 说:对,相当于代替手工输入启动命令。
你有没有手工输入过uboot命令,没有就敲进去试一试,直观感觉一下。
你刚才说的第一个方法将bin拷贝到第一分区 这个bin的名字是叫什么啊
不好意思,弄错了,是 u-boot-sunxi-with-spl.bin,
是 dd 命令写到 tf卡 8k 偏移,
不是拷贝到第一个分区。
1) 删除TF卡所有分区
2) 将uboot写入到sd卡8k偏移处(必须8K偏移, brom龟腚的)。
sudo dd if=u-boot-sunxi-with-spl.bin of=/dev/sdX bs=1024 seek=8
3) 建立第一个分区,大小32M(可以随意填写), 格式FAT16, 把zImage, sun8i-v3s-licheepi-zero-dock.dtb拷贝到 这个分区
4) 建立第二个分区,用尽剩余空间,格式ext4, 把buildroot产生的rootfs.tar解压到该分区根目录
tar xvf output/images/rootfs.tar -C /挂载的tf卡第二个分区目录
离线
Welcome to Buildroot
buildroot login:
屏幕上面没有显示出信息
这里我root 在串口上面根本就不会显示出来 ,就是你输入上root不会显示,就一直显示在这里了 ,其他的帖子里面说的默认账号是root 密码是空的
最近编辑记录 无情一刀 (2018-09-06 20:23:48)
离线
buildroot的默认账号是root, 密码是空,
配置的话在buildroot menuconfig里面可能可以配置,
如果不行的话, 在V3s 的Linux终端执行 passwd,
重设root密码.
如果觉得登陆对话框碍事, 看看这个 我用buildroot产生的rootfs,每次启动都要登录,有什么办法可以去掉这个登录吗?
离线
buildroot的默认账号是root, 密码是空,
配置的话在buildroot menuconfig里面可能可以配置,
如果不行的话, 在V3s 的Linux终端执行 passwd,
重设root密码.如果觉得登陆对话框碍事, 看看这个 我用buildroot产生的rootfs,每次启动都要登录,有什么办法可以去掉这个登录吗?
我这里是在输入 root 串口上也不显示出来,就是不管输入什么都不显示出来 ,这是正常的吗 ,就是因为没有配置buildroot menuconfig
离线
不正常,检查你的硬件电路。
首先测试一下电脑串口自发自收是否正常,
再检查V3s串口输入是否开路。

我刚才测试用串口测试,没有用终端就是发送和接受没有问题,就是发送ASCLl的root过去没有问题,这样说吗硬件电脑电路没有问题 ,但是一到终端就是啥也输入不了
离线
1. 你确认 把串口线的 RX, TX 短路, 自发自收正常?
2. 终端出现了三个 # 说明能输入吧?
我的串口短接了 首发都没有问题 至于出现#我是用串口发送ASCLL过去的root
离线
离线
如果我没猜错,你这个终端应该是比较简单的单片机用的串口终端,不能在右上角的输出窗口即时输入.
换putty,或者mobaxterm应该就没事了。
换了后是可以了 输入root 但是输入root后回车,就出现#了 然后这里就是一直# 了
离线
晕哥 说:如果我没猜错,你这个终端应该是比较简单的单片机用的串口终端,不能在右上角的输出窗口即时输入.
换putty,或者mobaxterm应该就没事了。换了后是可以了 输入root 但是输入root后回车,就出现#了 然后这里就是一直# 了
对, 嵌入式linux就是酱紫, 你认为应该怎样?
然后你可以执行busybox命令了, ls, cd, pwd等
离线
无情一刀 说:晕哥 说:如果我没猜错,你这个终端应该是比较简单的单片机用的串口终端,不能在右上角的输出窗口即时输入.
换putty,或者mobaxterm应该就没事了。换了后是可以了 输入root 但是输入root后回车,就出现#了 然后这里就是一直# 了
对, 嵌入式linux就是酱紫, 你认为应该怎样?
然后你可以执行busybox命令了, ls, cd, pwd等
刚才测试了几次 只有一次可以输入root 当再一次上电重启的时候 就不能再输入了
离线
你电脑端是什么串口线?
USB转TTL ? 什么型号的芯片? PL2303?
感觉还是硬件方面找原因.建议最好买 CP210X 系列的USB转TTL模块,比较稳定,性价比比较好.
嗯啊 为什么终端可以输入命令了 屏幕一直是黑的
离线
现在开发板已经不是 PC 了, 不是你输入什么, 屏幕就会显示啥。
因为PC上的Windows或者Ubuntu帮你把什么都做好了,
现在要完全自己动手了。
你输入这个命令试一试:
cat /dev/urandom > /dev/fb0
或者
dd if=/dev/urandom of=/dev/fb0
然后再输入这个命令试一试:
cat /dev/zero > /dev/fb0
前提是你的屏幕背光要打开才有反应!
离线
现在开发板已经不是 PC 了, 不是你输入什么, 屏幕就会显示啥。
因为PC上的Windows或者Ubuntu帮你把什么都做好了,
现在要完全自己动手了。你输入这个命令试一试:
cat /dev/urandom > /dev/fb0
或者
dd if=/dev/urandom of=/dev/fb0
然后再输入这个命令试一试:
cat /dev/zero > /dev/fb0
前提是你的屏幕背光要打开才有反应!
输入完了后 屏幕会有那种白灰点,但是后面会有一个告警 cat:write error:No space left on device 这里指的是哪个空间不足了
最近编辑记录 无情一刀 (2018-09-07 20:18:35)
离线
这是非常正常的现象,
写随机数到显存当然是乱七八糟的。
好了,现在你已经操作入门了。cat:write error:No space left on device
这个是提示写满退出了。
再问你一个问题 如果是我要写入字符串了
离线
这个问题讨论就比较宽了,
涉及到GUI,
随便找了几个链接给你:
https://whycan.cn/t_982.html
https://whycan.cn/t_1384.html
原理是: 给你一块空白的画布(framebuffer: /dev/fb0),
然后你用画笔(CPU控制逻辑)在上面这块画布上面创作。
离线