I.MX6U 支持 SD/EMMC、NAND Flash、QSPI Flash 等多种启动设备,用户可按需选择。不同启动方式的要求不同,比如从 SD 卡启动需在 bin 文件前加数据头(第十一的博客),同样其他启动设备也需要该数据头。本次博客将会讲解 I.MX6U 的启动方式及不同设备的启动要求。

BOOT_MODE 设置为内部 BOOT 模式以后,可以从以下设备中启动:

①、接到 EIM 接口的 CS0 上的 16 NOR Flash

②、接到 EIM 接口的 CS0 上的 OneNAND Flash

③、接到 GPMI 接口上的 MLC/SLC NAND FlashNAND Flash 页大小支持 2KByte4KByte

8KByte8 位宽。

④、Quad SPI Flash

⑤、接到 USDHC 接口上的 SD/MMC/eSD/SDXC/eMMC 等设备。

⑥、SPI 接口的 EEPROM

这些启动设备如何选择呢?I.MX6U 同样提供了 eFUSE GPIO 配置两种,eFUSE 就不讲

解了。我们重点看如何通过 GPIO 来选择启动设备,因为所有的 I.MX6U 开发板都是通过 GPIO

来配置启动设备的。正如启动模式由 BOOT_MODE[1:0]来选择一样,启动设备是通过

BOOT_CFG1[7:0]BOOT_CFG2[7:0]BOOT_CFG4[7:0]24 个配置 IO,这 24 个配置 IO

好对应着 LCD 24 根数据线 LCD_DATA0~LCDDATA23,当启动完成以后这 24 IO 就可以

作为 LCD 的数据线使用。这 24 根线和 BOOT_MODE1BOOT_MODE0 共同组成了 I.MX6U

的启动选择引脚.启动引脚如图:

I.MX6U 通过 26 个启动 IO 实现不同设备启动。虽有 24 个 IO 需配置,但实际仅需调整少数,其余下拉接地设为 0 即可。I.MX6U-ALPHA 开发板核心板中这 24 个 IO 的默认设置如图所示:

上图 看着是不是也很头大,BOOT_CFG1[7:0]BOOT_CFG2[7:0]16 IO 还能不能
在减少呢?可以!打开 I.MX6U-ALPHA 开发板的底板原理图,底板上启动设备选择拨码开关原
理图如下图所示:

在 上图  中 , 除 了 BOOT_MODE1 BOOT_MODE0 必 须 引 出 来 , LCD_DATA3~LCDDATA7、LCD_DATA11 6 IO 也被引出来了,可以通过拨码开关来设置

其对应的高低电平,拨码开关拨到“ON”就是 1,拨到“OFF”就是 0。其中 LCD_DATA11

BOOT_CFG2[3]LCD_DATA3~LCD_DATA7 就是 BOOT_CFG1[3]~BOOT_CFG1[7],这 6

IO 的配置含义如下表所示:

根据表 9.3.1 中的 BOOT IO 含义,I.MX6U-ALPHA 开发板从 SD 卡、EMMCNAND 启动
的时候拨码开关各个位设置方式如下表:
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐