I.MX6ULL启动方式选择(基于正点原子的开发指南+自己的理解)

5. I.MX6U 的启动方式

启动方式通过开发版的8个波动开关组合实现。

5.1. 启动方式的选择

首先要选择开发版的启动方式,有下面四种

BOOT_MODE[1:0]BOOT 类型
00从 FUSE 启动
01串行下载
10内部 BOOT 模式
11保留

BOOT_MODE1是第一位,BOOT_MODE0是第二位。最常使用的是串行下载和内部BOOT模式。

5.1.1. 串行下载

需选择BOOT_MODE1=0,BOOT_MODE0=1。

此时,MCU会从串口下载程序到开发板上的 SD/EMMC、NAND 等存储设备中。

5.1.2. 内部BOOT模式

需选择BOOT_MODE1=1,BOOT_MODE0=0。

在这个模式下,芯片首先会执行已经存放在内部的BOOTROM代码,这段 boot ROM 代码会进行硬件初始化(一部分外设,包括初始化时钟等内容),然后从 boot 设备(就是存放代码的设备、比如 SD/EMMC、NAND)中将代码拷贝出来复制到指定的RAM中,一般是DDR。

启动设备(BOOT设备)的选择

支持NOR FLASH、NAND FLASH、SD/EMMC、QSPI FLASH、 EEPROM等。最常用的就是NANA、SD卡和EMMC。

如何让通过波动开关选择启动设备

启动设备是通过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_MODE1、BOOT_MODE0 共同组成了 I.MX6U 的启动选择引脚

其中BOOT_CFG4[7:0]全部接地,BOOT_CFG2[7:0]除了BOOT_CFG2[3]用于选择SD卡启动接口,其他全部接地。BOOT_CFG1[7:0]只需考虑BOOT_CFG1[7:3]。这些有用的引脚对应的功能如下

BOOT_CFC 引脚对应 LCD 引脚含义
BOOT_CFG2[3]LCD_DATA11为 0 时从 SDHC1 上的 SD/EMMC 启动,为 1 时从 SDHC2 上的 SD/EMMC 启动。
BOOT_CFG1[3]LCD_DATA3当从 SD/EMMC 启动的时候设置启动速度,当从 NAND 启动的话设置 NAND 数量。
BOOT_CFG1[4]LCD_DATA4BOOT_CFG1[7:4]:
BOOT_CFG1[5]LCD_DATA50000 NOR/OneNAND(EIM)启动。
BOOT_CFG1[6]LCD_DATA60001 QSPI 启动。
BOOT_CFG1[7]LCD_DATA70011 SPI 启动。
010x SD/eSD/SDXC 启动。
011x MMC/eMMC 启动。
1xxx NAND Flash 启动。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值