0 前言
STM32MP135支持多种启动方式,包括SD卡、NAND Flash、EMMC等,基于STM32MP135裸机的SD卡烧录操作方法我们之前已经介绍过,现在介绍的STM32MP135烧录到EMMC的方法又和前面烧录到SD卡的操作有所不同。本文将介绍基于STM32MP135,烧录程序到EMMC的方法。
1 原理介绍
EMMC在烧录过linux镜像后会被划分成四个区,即使我们使用裸机的EMMC驱动读写EMMC只能看到User分区,有关这四个区的分布和大小如下:
使用裸机EMMC驱动看到的EMMC信息:
本文将裸机BOOT程序烧录到EMMC的boot1,、boot2分区
2 操作方法
2.1文件准备
需要准备的文件如下:
(1)需要烧录到boot1、boot2分区的裸机BOOT程序
(2)烧录程序到EMMC的FlashLayout 文件及其所需文件(本文使用正点原子提供的FlashLayout_emmc_stm32mp135d-atk-optee.tsv)
2.2 修改FlashLayout 文件
将FlashLayout_emmc_stm32mp135d-atk-optee.tsv的boot1、boot2替换成我们自己的裸机BOOT程序即可:
2.3 使用STM32CubeProgrammer烧录裸机BOOT程序
(1)将需要下载到EMMC的BOOT程序和其它下载所需文件放到统一的文件夹
(2)使用STM32CubeProgrammer打开FlashLayout_emmc_stm32mp135d-atk-optee.tsv
(3)仅勾选前面4个,其余内容不需要下载
(4)选择我们二进制文件所在的文件夹
(5)将开发板拨码开关调整为USB启动,复位,然后点击连接
(6)点击“Download”等待下载完成
(7)将开发板拨码调整到EMMC启动,复位,查看是否进入我们的裸机BOOT程序
可以看到已经进入到了我们编写的裸机BOOT程序。