您尚未登录。

楼主 #1 2020-06-01 15:32:51

TivonLiu
会员
注册时间: 2019-12-27
已发帖子: 46
积分: 41

儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

1 TF卡格式化为fat32格式
2 用winhex复制boot.bin到0x2000位置
3 拷贝文件rtthread.bin到TF卡根目录
4 reset,引导程序会将rtthread.bin拷贝到0x80000000开始运行

从此PCB不再需要那个spiflash芯片,空出一路spi接口,开心。。。


f1c100s_spl_0601.zip

离线

#2 2020-06-01 15:35:54

staunchheart
会员
注册时间: 2019-12-17
已发帖子: 212
积分: 193

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

TKS 只能跟在后面叫666
补充一下,端午节、建军节、国庆节的礼物准备得如何了??

最近编辑记录 staunchheart (2020-06-01 15:49:26)

离线

#3 2020-06-02 09:29:21

codetez
会员
注册时间: 2020-05-23
已发帖子: 72
积分: 52

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

厉害厉害,给大佬点时间,太近的节日就不提了,期待大佬的国庆节礼物

离线

#4 2020-06-02 11:12:20

yytyu
会员
注册时间: 2018-11-01
已发帖子: 34
积分: 18

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

谢谢大佬,分享

离线

#5 2020-06-02 11:22:40

liuchangyin
会员
注册时间: 2020-03-17
已发帖子: 204
积分: 199

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

别的啥也不说,支持大佬,希望多多给这样的惊喜

离线

#6 2021-07-02 13:36:01

aozima
会员
所在地: 深圳
注册时间: 2019-05-25
已发帖子: 378
积分: 245.5
个人网站

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

这个有谁试过可以在F1C100S上面启动不? 我烧录后无法启动,还是跑去SPI FLASH上面了。

不过我烧录可以F1C100S在FLASH上面启动的SPL到TF上,还是无法启动。
用的是这个工程 https://whycan.com/t_1393.html

但是TF卡里面直接烧录完整的uboot+linux镜像是可以启动的。
确认TF卡的8K位置,已经完整烧录mksunxi处理过后的SPL BIN文件了。
且这个SPL BIN烧到SPI FLASH的0地址是可以启动的。

不知道TF卡还有什么其它的要求?
比如SPL的大小不能少于多少KB?

离线

#7 2021-07-04 11:12:39

995pc
会员
注册时间: 2020-05-30
已发帖子: 54
积分: 3

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

@aozima
楼主只讲了TF卡格式化为fat32格式,没有提及容量,不知道是否是卡的容量差异引起

离线

#8 2021-07-04 16:22:00

aozima
会员
所在地: 深圳
注册时间: 2019-05-25
已发帖子: 378
积分: 245.5
个人网站

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

@aozima 容量与2点有关,1是64G以上的卡是SDXC,可能会识别有问题。2是对文件系统有影响。

芯片内部的BROM是不管文件系统,直接按偏移量读取的。加上同样的这张卡(实际验证了多张),烧录其它的镜像可以启动。
所以只会和烧录在8K位置的内容有关。

离线

#9 2021-07-05 14:42:43

sunxiang
会员
注册时间: 2021-05-05
已发帖子: 199
积分: 103

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

直接按照偏移来写,会不会导致原有的文件系统破坏呀。

离线

#10 2021-07-05 19:49:11

aozima
会员
所在地: 深圳
注册时间: 2019-05-25
已发帖子: 378
积分: 245.5
个人网站

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

sunxiang 说:

直接按照偏移来写,会不会导致原有的文件系统破坏呀。

MBR分区表中间有空洞的,离第1个分区的起始地址还很远呢,默认有上M的空间。
如果需要更大,可以在分区的时候,让第1个分区定在更大的地址就行了。

离线

#11 2021-07-06 09:47:44

sunxiang
会员
注册时间: 2021-05-05
已发帖子: 199
积分: 103

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

从TF卡或者从SPI_FLASH启动,SPL--是二次代码搬运吗?

离线

#12 2021-07-06 15:57:59

aozima
会员
所在地: 深圳
注册时间: 2019-05-25
已发帖子: 378
积分: 245.5
个人网站

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

郁闷,忘记WIN上面打开磁盘也仅是打开逻辑分区了,所以我烧录8K地址,实际是逻辑分区中的8K地址。
之前也想到过这个问题,但是在linux上面用DD时,可能文件烧错了,后面就一直用错误的方式在烧录。

目前直接烧录楼主机的boot.bin在F1C100S上面可以启动,但打开是乱码,逻辑分析分析仪测了波特率又像是对的。
把楼主的代码重新scons编译一下,再烧录是可以正常打印的。

抽空了用示波器来测下具体啥情况!

离线

#13 2021-11-10 21:10:04

Liiunix
会员
所在地: 长春
注册时间: 2021-06-26
已发帖子: 3
积分: 3

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

非常好!谢谢楼主。

简单的测试了一下似乎只支持MBR分区,并且只能有一个目录项

离线

#14 2021-11-12 09:59:08

jjxyfzhy
会员
注册时间: 2021-02-08
已发帖子: 6
积分: 1

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

该评论内容与本帖子无关,鼓励各位坑友积极发言讨论与帖子有关的内容!

离线

  • 不通过:其他

#15 2021-12-22 09:56:07

小青蛙
会员
注册时间: 2020-07-17
已发帖子: 10
积分: 5

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

谢谢大佬,我下载编译了,发现里面应该只做了大容量卡的读取,低容量的卡应该还需要改造下。

离线

#16 2022-06-21 11:53:02

go369
会员
注册时间: 2022-06-07
已发帖子: 11
积分: 37

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

哦,原来是在SPL增加了SDIO驱动文件, sys-sdio.c和 sys-sdio.h,在 sys_copyself里的 进行初始化,start.S 里调用: bl sys_copyself

离线

#17 2022-06-21 12:36:32

go369
会员
注册时间: 2022-06-07
已发帖子: 11
积分: 37

Re: 儿童节给大家的礼物,f1c200s,TF卡启动RTT的spl

不知道下面这个怎么操作:
"2 用winhex复制boot.bin到0x2000位置 "

直接用这个命令可以:

dd if=boot.bin of=/dev/sdxx bs=1024 seek=8 

其中/dev/sdxx是你的SD卡盘符,可以用 ls /dev/sd* 列出,插上和拔下各运行一次,就知道对应哪个盘。

上电运行结果:

Init OK
SD capacity 31130624 KB
start cp file to ram addr 0x80000000
fonnd fat1 by dbr[dbr 0][fat1 2382]
root 32768 cusize 32 fatsize 15193
find file ok
cu 2 base 32768 offset 0 addr 3
filesize 396624,startform 6 cu
file num of cus 25
file num of secs 775
cp file to ram ok! Run....

 \ | /
- RT -     Thread Operating System
 / | \     4.1.0 build Jun 19 2022 18:46:20
 2006 - 2022 Copyright by RT-Thread team
lwIP-2.0.3 initialized!
periph_get_pll_clk:600000000
cpu_get_clk:408000000
ahb_get_clk:200000000
apb_get_clk:100000000
msh />[31m[E/MMC] [err]:0x00000100,  RTO[0m
[31m[E/MMC] mmc cmd 5 err[0m
[32m[I/SDIO] SD card capacity 31130624 KB.[0m

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn