您的位置:首页 >智能硬件 >

ST官方基于米尔STM32MP135开发板培训课程(一)

2023-07-28 16:22:23    来源:米尔电子

本文将以Myirtech的MYD-YF13X以及STM32MP135F-DK为例,讲解如何使用STM32CubeMX结合Developer package实现最小系统启动。

开发准备


(资料图)

1.1 Developer package准备

Developerpackage下载,

解压后进入source目录:

源码准备(可以根据每一个source目录下的README.HOW_TO.txt中第三点准备):

TFA源码

OP-TEE源码

U-Boot源码

Kernel源码

1.2 SDK安装

请阅读WIKI完成 Install_the_SDK。

1.3 STM32CubeProgrammer安装

请根据WIKI给出的命令/步骤安装 CubeProgrammer and libusb installation。

原理框图

首先看一下Myirtech的原理图框架:

从原理框图中可以得出以下硬件配置信息:

STM32MP135DAF7

DDR3L

分离式电源设计

支持QSPI NAND,SD卡启动

双千兆以太网口

USB Host

USB OTG (烧录用)

UART4 debug串口

外部时钟源,HSE(24MHz),LSE(32.768KHz)

3. STM32CubeMX项目创建

打开STM32CubeMX, 根据芯片的part number选择正确的芯片封装开始项目创建,例如:Myirtech使用的是STM32MP135DAF7,

点击“Generate Code”之后会生成一个近乎空的project,设备树结构:

Note: STM32CubeMX的规则是先生成Kernel的dts, 然后将生成的dts文件拷贝到u-boot目录下,也就是说u-boot的设备树stm32mp135d-myir_bring_up-mx.dts是从kernel目录拷贝过来的,所以在U-Boot阶段修改设备树,添加User code时,请同步修改kernel的设备树或者将修改好的设备树拷贝到Kernel目录,防止下次使用CubeMX生成设备树的时候,u-boot部分的修改被kernel未修改的设备树覆盖。

创建设备树软链接:

U-Boot:

4. SD卡启动

SD卡部分的设计一半有两种情况,第一种是像STM32MP157C-EV1的设计,SD卡槽接口与MP1之间通过levelshifter连接,这种设计的目的是可以是SD卡运行在高速模式下:

基于此种硬件设计,相应的STM32CubeMX部分的设计以及user code部分应参考STM32MP157C-EV1的设备树:

第二种设计是MP1直接连接SD卡卡槽,如STM32MP135F-DK板的设计,Myir板子也是同样的设计:

相应的STM32CubeMX设计与user code配置如下:

添加TF-A部分user code:

编译TFA SD,

添加U-Boot部分user code:

编译OP-TEE, U-Boot更新FIP.

修改TSV文件,如下:

将修改好的TSV文件copy到myir_fip目录下,烧录:

烧录成功后,串口输出如下:

断电,将拨码开关切换到SD卡启动:

<未完待续>

米尔MYC-YF13X核心板及开发板,基于STM32MP135高性价比入门级MPU设计平台,基于STM32MP135新一代通用工业级MPU,单核Cortex-A7@1.0GHz,具有极高的性价比;支持2个千兆以太网接口、 2个CAN FD接口、 2个 USB2.0接口、8个UART接口;标准配置支持256M Nand Flash/256M DDR和4GB eMMC/512M DDR两种;核心板采用邮票孔方式连接,尺寸为37mmx39mm,148 PIN。适用于电源管理、工业HMI、工业控制、智能家居、工业网关、零售设备等行业。

关键词:

相关阅读

精彩推送