F1C100s启动时,BROM只会检测固定引脚上的SPI Flash吗?还是把SPI0(2组)+SPI1(1组)都搜一遍呢?
离线
https://whycan.cn/t_596.html
https://whycan.cn/t_560.html
https://whycan.cn/t_1008.html#p7640
全志V3s手册V1.0: Allwinner_V3s_Datasheet_V1.0.pdf
全志f1c100s手册: Allwinner_F1C600_User_Manual_V1.0.pdf手册
本来想去全志 f1c100s/f1c600手册里面找,
结果里面根本没有提 boot system,
还是从上面的V3s手册里面找.
1. 上电后, f1c100s内部 BROM (芯片内置,无法擦除) 启动,
2. 首先检查 SD0 有没有插卡, 如果有插卡就读卡 8k偏移数据,是否是合法的启动数据, 如果是BROM 引导结束, 否则进入下一步
3. 检测SPI0 NOR FLASH(W25QXXX, MX25LXXX) 是否存在, 是否有合法的启动数据, 如果是BROM 引导结束, 否则进入下一步
4. 检测SPI0 NAND FLASH 是否存在, 是否有合法的启动数据, 如果是BROM 引导结束, 否则进入下一步
5. 因为找不到任何可以引导的介质, 系统进入usb fel 模式, 可以用USB烧录了。
这就是为什么 要烧录程序,需要下拉 MISO/CLK 到地的原因,让BROM 检测不到spi flash的存在.
离线
谢谢,文档还是没说用那组SPI0啊(有两组:PC0~3和PD18~21)。板子可用空间有点小,如果两组都会搜索,那会更灵活。
离线
嗯……V3s只有一组SPI0(PC0~PC3),所以猜测F1C100s也是只能用这一组吧。还有一个证据是这组的SPI0_CS默认是pull-up,另一组的默认是Z。
离线
嗯……V3s只有一组SPI0(PC0~PC3),所以猜测F1C100s也是只能用这一组吧。还有一个证据是这组的SPI0_CS默认是pull-up,另一组的默认是Z。
端口默认pull-up 与 Z有什么区别?会有什么结果?
离线
Quotation 说:嗯……V3s只有一组SPI0(PC0~PC3),所以猜测F1C100s也是只能用这一组吧。还有一个证据是这组的SPI0_CS默认是pull-up,另一组的默认是Z。
端口默认pull-up 与 Z有什么区别?会有什么结果?
区别是,上电后没有执行程序的时候,IO口的状态是上拉还是高阻态。
只是个猜测,因为绝大多数IO口的默认状态都是Z,那个SPI0_CS是特殊的,所以猜测Flash只能接在那上面。
离线
区别是,上电后没有执行程序的时候,IO口的状态是上拉还是高阻态。
只是个猜测,因为绝大多数IO口的默认状态都是Z,那个SPI0_CS是特殊的,所以猜测Flash只能接在那上面。
我猜测SPI0_CS可能就是v3s上的boot select pin,短接到地直接进入usb fel模式
离线