本人硬件小白一枚,与2021年4月入住哇酷社区,结识众位大佬,并在各位大佬的帖子中觅得大量的学习资源,最终完成自制小电脑的心愿。既得所愿,现将所有资料汇总成章,整理于此,共享之,再次感谢期间给与支持的晕哥、迪卡大神等大佬。
小白自制Linux开发板 一. 瞎抄原理图与乱画PCB
https://www.cnblogs.com/twzy/p/14714651.html
小白自制Linux开发板 二. u-boot移植
https://www.cnblogs.com/twzy/p/14865952.html
小白自制Linux开发板 三. Linux内核与文件系统移植
https://www.cnblogs.com/twzy/p/15355842.html
小白自制Linux开发板 四. 通过SPI使用ESP8266做无线网卡
https://www.cnblogs.com/twzy/p/15160808.html
小白自制Linux开发板 五. Debian文件系统制作,以及WIFI配置、交换分区配置
https://www.cnblogs.com/twzy/p/15160824.html
小白自制Linux开发板 六. SPI TFT屏幕修改与移植
https://www.cnblogs.com/twzy/p/15160836.html
小白自制Linux开发板 七. USB驱动配置
https://www.cnblogs.com/twzy/p/15243838.html
小白自制Linux开发板 八. Linux音频驱动配置
https://www.cnblogs.com/twzy/p/15356109.html
小白自制Linux开发板 九. 修改开机Logo
https://www.cnblogs.com/twzy/p/15356119.html
小白自制Linux开发板 十. NES游戏玩起来
https://www.cnblogs.com/twzy/p/15356127.html
其他正在整理中
最近编辑记录 twzy (2021-10-19 08:52:01)
离线
为什么可以这么屌,强顶
离线
离线
自制Linux开发板(F1C200s),教程写的不错,收藏了!
离线
@twzy
能不能做在一块板子上呢?
毕竟器件也不多
离线
@twzy
另有疑问,上了USB hub之后,
F1C200S还能进入OTG模式吗?
离线
大佬,小企鹅是在哪里开启的?
离线
非常用用心的教程,学习了
离线
期待六和七
@twzy
可以做到一块板子上,做核心板的目的主要就是可以并行调试好多器件,但是tft屏幕,和网卡一起调试的,
硬件电路里面把PE2拉高了,也就是默认是otg模式,可以在编译设备树或是Linux中切换,大概在第七篇会讲到。
离线
学习了,感谢楼主的分享!向大佬学习,期待后续。
离线
小白自制Linux开发板 六. SPI TFT屏幕修改与移植
https://www.cnblogs.com/twzy/p/15160836.html
离线
牛逼啊牛逼,牛逼牛牛逼,,我后面也要搞一个
离线
小白自制Linux开发板 七. USB驱动配置
https://www.cnblogs.com/twzy/p/15243838.html
离线
厉害厉害,文章写得很直接易懂
离线
小白自制Linux开发板 七. USB驱动配置
https://www.cnblogs.com/twzy/p/15243838.html
连更两贴,赞更新速度
离线
楼主干得漂亮,有板子卖吗?
离线
小白自制Linux开发板 八. Linux音频驱动配置
https://www.cnblogs.com/twzy/p/15356109.html
关于硬件驱动部分的内容基本算是全结束了,积攒的文章也差不多全放完了,后续会集中处理一些bug,更新速度也会随之放缓,还请见谅。
那个显示小企鹅的方式我会放在第九篇。
另外既然是自制开发板,所以这个板子是不卖的,但是硬件相关资料分别在第一篇和第四篇中,在本帖3楼也有链接,软件部分很快整理完成会上传到网盘(因为提及会很大)。到时候会给大家地址。
最后感谢大家支持,过一段时间再见 ^_^
最近编辑记录 twzy (2021-10-23 21:50:52)
离线
楼主给力!!应该是F1C系列最全面系统的教程了!感谢分享~
离线
紧跟大佬学习第二章
1先make ******defcofig再make编译
2
会出现mmc0 各种clock没定义
刚开始还不知道是没定义看了半天然后想起把官方的对比下这是官方上的
然后顺着文件路径寻找要添加头文件#include <dt-bindings/clock/suniv-ccu-f1c100s.h> #include <dt-bindings/reset/suniv-ccu-f1c100s.h>
然后就是suniv-f1c100s-licheepi-nano.dts里好像还少了
reg_vcc3v3: vcc3v3 {
compatible = "regulator-fixed";
regulator-name = "vcc3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
继续去制作文件系统。。。。。。。
离线
我可能买到翻新芯片了,f1c100s买了5片,10块一片,有两块是坏的。uboot提示DRAM初始化失败,有一块焊上是好的,热风枪拆旁边芯片吹了一会,然后就反复重启。
淘宝芯片水真深
离线
@摸鱼moyu
我记得5.7 这个配置默认是有的啊
不太明白了我这里没有,小问题
离线
离线
kernel中关闭framebuff Console相关的东西
离线
666超级厉害
离线
https://whycan.com/files/members/6376/483434-20211028093230198-539265111.png
开机Logo大概是做好了,但是最下面还是会显示一行加载信息,该怎么破呢?
固件镜像整理的怎样了?
能不能增加对ST7735或ST7789的支持,物美价廉的TFT
离线
卓林 说:kernel中关闭framebuff Console相关的东西
https://whycan.com/files/members/6376/QQ截图20211029090509.png
好像没得选,另外两个还取消不了
你可以看看Kconfig文件,需要启动专家模式(Expert Mode)才能改
General setup ---> Configure standard kernel features (expert users)
离线
博客园真的好评 (没错我就是在diss CSDN
唯有爱与科技不可辜负。
知乎专栏:IAMLIUBO的神奇物联网之旅
博客园:IAMLIUBO
Gayhub: IAMLIUBO
离线
另外,请教一下楼主,我设计板子使用的电源管理是EA3036,在负载较大时,比如接wifi模块,接lcd(电流在设计范围内)会导致电源掉电。
我对DCDC电源方面不太懂,电感感值电流参数都是按照手册选,请问可能是什么原因导致的电源掉电的呢?感谢!
离线
小白自制Linux开发板 九. 修改开机Logo
https://www.cnblogs.com/twzy/p/15356119.html
离线
有没有大佬知不知道咋在板子上装gcc,装库装了快一天了没成
离线
https://whycan.com/files/members/6376/IMG_4455.jpg
游戏机目标达成,资料整理中……
貌似颜色不对?
离线
twzy 说:https://whycan.com/files/members/6376/IMG_4455.jpg
游戏机目标达成,资料整理中……
貌似颜色不对?
已经修复了
处理方式
修改InfoNES_System_Linux.cpp文件中的static int lcd_fb_display_px函数
static int lcd_fb_display_px(WORD color, int x, int y)
{
WORD *pen16;
unsigned char r, g, b;
r = ((color >> 10) & 0x1f);
g = ((color >> 5) & 0x3f);
b = (color & 0x1f);
color = r<<11|g<<6|b;
pen16 = (WORD *)(fb_mem + y*line_width + x*px_width);
*pen16 = color;
return 0;
}
离线
@twzy
666666
大佬这个ESP8266 SPI模式长时间工作稳定吗?
离线
我记得在STM32上移植时,有个调色板数组,直接修改为屏幕色素格式就好了,省去了转换颜色,info linux不知有没有
离线
你的infoNES卡不卡?我当初移植的时候游戏人物动作比正常慢好多,我认为之f1c100s性能不够,就没深究。
离线
@twzy
666666大佬这个ESP8266 SPI模式长时间工作稳定吗?
有个问题,就是当小板作为服务器(web服务器、ftp服务器)的时候,传输一点数据后就自动断开了,不知道怎么处理
root@SnailCard:~# dmesg |grep wlan0
[ 241.525691] wlan0: authenticate with 78:44:fd:7e:02:88
[ 241.531292] wlan0: send auth to 78:44:fd:7e:02:88 (try 1/3)
[ 241.742250] wlan0: send auth to 78:44:fd:7e:02:88 (try 2/3)
[ 241.755538] wlan0: authenticated
[ 241.772270] wlan0: associate with 78:44:fd:7e:02:88 (try 1/3)
[ 241.982257] wlan0: associate with 78:44:fd:7e:02:88 (try 2/3)
[ 241.998657] wlan0: RX AssocResp from 78:44:fd:7e:02:88 (capab=0x1411 status=0 aid=1)
[ 242.009522] wlan0: associated
[ 242.014791] wlan0: Limiting TX power to 20 (20 - 0) dBm as advertised by 78:44:fd:7e:02:88
[ 572.506851] wlan0: authenticate with 78:44:fd:7e:02:88
[ 572.514157] wlan0: send auth to 78:44:fd:7e:02:88 (try 1/3)
[ 572.725587] wlan0: send auth to 78:44:fd:7e:02:88 (try 2/3)
[ 572.935684] wlan0: send auth to 78:44:fd:7e:02:88 (try 3/3)
[ 573.145784] wlan0: authentication with 78:44:fd:7e:02:88 timed out
如果是纯下载没问题的
最近编辑记录 twzy (2021-11-01 09:47:12)
离线
@twzy
SDIO ESP8089开源Linux驱动现在可以直接编译通过了, 有没有朋友一起试一试
https://whycan.com/t_4326.html#p69705
和我这情况一样了, 有人说是电源问题,一脸懵x。
离线
@twzy
SDIO ESP8089开源Linux驱动现在可以直接编译通过了, 有没有朋友一起试一试
https://whycan.com/t_4326.html#p69705和我这情况一样了, 有人说是电源问题,一脸懵x。
我们一起定位一下问题原因,争取在本帖把这个问题给解决了
离线
我在论坛看到类似的故障是因为openssl和wpa_wpa_supplicant不兼容引起的,升级openssl解决,不知道对你有没有帮助。
离线
小白自制Linux开发板 十. NES游戏玩起来
https://www.cnblogs.com/twzy/p/15356127.html
这大概是本系列最后一篇了
离线
内容实在是太棒了,我也是做硬件的,感觉linux太偏软件了,现在看了你做的项目,感觉自己又行了,之前做嵌入式的时候还是太浅了,感谢大佬,一起学习
离线
大佬做批板子吧,跟着学习下。
离线
这是NES模拟器代码,已经修改过了
arm-NES-linux-master.zip
下面是在硬盘中待了10年的nes游戏
roms.zip
u-boot项目
链接:https://pan.baidu.com/s/1WWrzVKYx6EthaJrzLj3mFg
提取码:fwup
内核项目
链接:https://pan.baidu.com/s/1rrNq95bFjStLpEa-sj-O6Q
提取码:qeby
文件系统实在太大了,所以暂时不传了
离线
你这个系统放在tf卡reboot能重启吗OK吗?
离线
mark一下,准备做块板子,wifi用8266,就是看到大佬说传输会断掉,还在纠结,不知道现在解决了没有
离线
mark一下,准备做块板子,wifi用8266,就是看到大佬说传输会断掉,还在纠结,不知道现在解决了没有
8266的问题,估计需要大佬出手
离线
大神,怎么解决干扰问题,在某些电磁环境下,容易乱码
离线
水平高且谦虚的楼主。
离线
作者大大,啥时候能把镜像打包一份,直接用win系统烧tf卡上直接用
离线
光速进行时 说:作者大大,啥时候能把镜像打包一份,直接用win系统烧tf卡上直接用
第四篇中有链接
测试镜像文件:
链接:https://pan.baidu.com/s/1qTTgBndBvmssCdeqXHI3Pg
提取码:fw52
上面那个文件有点问题已经删除了
使用这个镜像测试
链接:
https://pan.baidu.com/s/1uG4MTF008DliohcKo6IuqQ
提取码:xnpz
离线
诚心请教一下,4月份开始您花了多久时间弄明白驱动修改适配这些东西?
离线
可以玩gba模拟器吗
离线
楼主,你的m2接口哪里买的,有购买链接吗?我买的矮的插不进去😉
离线
@摸鱼moyu
太棒了哥,我也是这个问题
离线
用金手指的话底部的pcb空间会被浪费掉么,还是可以放元件
离线
用金手指的话底部的pcb空间会被浪费掉么,还是可以放元件
可以放
离线
正准备做一块linux,这下有资料了:)
离线
有做出来的吗,我的屏幕和wifi无法使用
离线
楼主方便留个扣扣啥的细致交流不,我照着楼主的开源项目焊了几块都失败了 ,头疼中
离线
很好的教程 收藏了 有时间跟着做一做
离线
Debian文件系统制作走到 这步进行不下去了,
sudo LC_ALL=C LANGUAGE=C LANG=C chroot rootfs /debootstrap/debootstrap --second-stage --verbose
chroot: failed to run command '/debootstrap/debootstrap': No such file or directory
离线
Debian文件系统制作走到 这步进行不下去了,
sudo LC_ALL=C LANGUAGE=C LANG=C chroot rootfs /debootstrap/debootstrap --second-stage --verbose
chroot: failed to run command '/debootstrap/debootstrap': No such file or directory
遇到过,清理以前的内容,重新来一遍就可以了
离线
离线
小白一个已打样到手就开工
离线
如果想看v3s的相关资料的,可以关注一下这个帖子 https://whycan.com/t_7338.html
离线
楼主 我编译Linux系统,按照你的步骤,但是最后uboot没有识别到系统,可以请你帮忙看看吗?小白,不太懂
U-Boot SPL 2018.01-05679-g013ca457fd-dirty (Dec 18 2021 - 06:00:26)
DRAM: 32 MiB
Trying to boot from MMC1
U-Boot 2018.01-05679-g013ca457fd-dirty (Dec 18 2021 - 06:00:26 -0500) Allwinner Technology
CPU: Allwinner F Series (SUNIV)
Model: QL's f1c100s
DRAM: 32 MiB
MMC: SUNXI SD/MMC: 0
*** Warning - bad CRC, using default environment
In: serial@1c25000
Out: serial@1c25000
Err: serial@1c25000
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 /suniv-f1c100s-licheepi-nano.dtb
3607 bytes read in 27 ms (129.9 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.
=>
另外 你在编译系统时有什么配置吗 我看你没有写 我就用没改 然后系统是直接复制到BOOT文件夹下的
离线
@twzy
能不能做在一块板子上呢?
毕竟器件也不多
可能是想着方便底板添加其他功能吧
离线
也是小白一个,打样玩玩,这些资料应该够用了
离线
请问大佬,第七章中移植你usb后那张图,怎么让终端信息显示在lcd上的呢,就是 root@ 那一行。我知道是修改了配置文件来让终端命令前显示 用户 路径,但是只能在 uart0显示,lcd还是显示的dmesg信息
离线
该系列的Debian镜像。解压后将扩展名改为img
链接:https://pan.baidu.com/s/11l5o-bZK6KueomYehV3l1w
提取码:42ka
离线
离线
感谢大佬的教程~对于小白的我来说很有帮助呀。
离线
离线
更新一下Debian镜像。解压后将扩展名改为img
链接:https://pan.baidu.com/s/1RrITGJ3OgoJtYYEY0EImRQ
提取码:6czb
最近编辑记录 twzy (2022-01-13 17:45:24)
离线
我用的esp8089行了就是速度感人
基本随顺着大佬教程编译成模块那个还是fail to master 后面在研究下,
这个好像不是这个意思,我板子用的spi1也是要num = 0才能行,我不太清楚目前还在白嫖正点的教程终于不用频繁的拔内存卡了
然后就是
编译有个函数好像变了,我看没有用到返回值直接屏蔽了不知道有没有影响
离线
@twzy
我是初学者第一次学习linux并且画板子正好碰到你的教程,可能我也就仅限于能调出来,更高深的不懂还在到处学习
离线
这次丝印再印一个“sudo dd if=/dev/zero of=/”
[手动狗头]
离线
楼主,您第一个做的基于f1c200s卡片开源吗
离线
期待作者继续更新
离线
v3s 什么时候 出啊 ,真不错 。
离线
大佬,参考你的贴子,我用nano板,在Starting kernel...一直重启;求助哇
离线
大佬,参考你的贴子,我用nano板,在Starting kernel...一直重启;求助哇
https://whycan.com/files/members/9470/Starting%20kernel....jpg
检查zImage 、 tf卡格式等等
离线
leicai04 说:大佬,参考你的贴子,我用nano板,在Starting kernel...一直重启;求助哇
https://whycan.com/files/members/9470/Starting%20kernel....jpg检查zImage 、 tf卡格式等等
好的,请问应该需要什么格式,分区的时候boot是fat16
离线
@twzy
同样的问题 解决了吗
离线
我在论坛看到类似的故障是因为openssl和wpa_wpa_supplicant不兼容引起的,升级openssl解决,不知道对你有没有帮助。
怎么升级openssl
离线
spi屏刷新率怎么样
离线
我也自己作了一块,一把启动成功,其他的慢慢调,最高屏幕不会不知道杂调的,用别人固件显示正常,我的就这个鬼样子,能帮忙看看是什么情况吗。
屏幕参数:
最近编辑记录 future (2022-06-25 13:52:59)
离线
全部看完了,真的会让人从入门到入坑道放弃啊,太强大了,从0到1啊,现在的Soc集成度也太高了。
离线
woc大佬,f1c200的固件和f1c100固件可以通用吗
离线
这个教程是我看到最全面的全志LINUX的,感谢楼主分享,问下 淘宝店卖的那个是不是就是楼主本人啊
离线
@twzy
能不能出个套件 淘宝卖阿
硬件实在搞不定
离线
学习了,楼主很用功,一直想学但下不了决心去弄
离线
这个教程太好了,感觉找到循序渐进的方向,收藏学习,谢谢!
离线
在坑网大家都说自己是小白,原来只有我才是真正的上白
离线
写的好详细,正好想学习Linux开发板方面的内容,找到方向了,感谢
离线
正想搞一个基于fc200s核心的最小系统板,感谢楼主分享资料!
离线
感谢分享
真小白,只搞过51,想搞一个最小系统板,请问可不可以其他外设都不要,只要SD卡和串口,其他的引脚都引出做I/O
请问楼主的系统可以直接用吗?然后能不能通过通过命令啥的来控制这些I/O输出高低电平?
另外,我看一些图上的F1C200s供电是有时序的吗?还是都可以直接用LDO
离线
@liberty
1、arm理论上可以裸奔,与51单片机一样。因F1C200s没有内置FLASH,所以需要有外置存储(eMMC、TF卡),需要有通信口进行调试,其他GPIO可以引接出来。这就成了核心板。
2、GPIO,当然可以用软件控制高低电平
3、由于arm实在强大,不能总是用单片机的思维所有程序都从0开始,直接找别人开源使用。
4、供电问题,可以多看几张不同板的电路图,看看供电部分有没有控制端,就知道有没有时序问题。
离线