0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

米尔电子 2023-07-31 22:08 次阅读

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

c9808df8-2fab-11ee-bbcf-dac502259ad0.png


1.开发准备1.1 Developerpackage准备

a.Developer package.解压后进入source目录: c9d9d8c2-2fab-11ee-bbcf-dac502259ad0.pngc.源码准备(可以根据每一个source目录下的README.HOW_TO.txt中第三点准备):

$> cd tf-a-stm32mp-v2.6-stm32mp-r2-r0 $> tar xf tf-a-stm32mp-v2.6-stm32mp-r2-r0.tar.xz$> cd tf-a-stm32mp-v2.6-stm32mp-r2$> for p in `ls -1 ../*.patch`; do patch -p1 < $p; done


  • OP-TEE源码

$> cd optee-os-stm32mp-3.16.0-stm32mp-r2-r0$> tar xf optee-os-stm32mp-3.16.0-stm32mp-r2-r0.tar.xz$> cd optee-os-stm32mp-3.16.0-stm32mp-r2$> tar xf ../fonts.tar.gz$> for p in `ls -1 ../*.patch`; do patch -p1 < $p; done


  • U-Boot源码

$> cd u-boot-stm32mp-v2021.10-stm32mp-r2-r0$> tar xf u-boot-stm32mp-v2021.10-stm32mp-r2-r0.tar.xz$> cd u-boot-stm32mp-v2021.10-stm32mp-r2$> for p in `ls -1 ../*.patch`; do patch -p1 < $p; done 

  • Kernel源码

$> cd linux-stm32mp-5.15.67-stm32mp-r2-r0$> tar xf linux-5.15.67.tar.xz$> cd linux-5.15.67$> for p in `ls -1 ../*.patch`; do patch -p1 < $p; done


1.2 SDK安装

请阅读WIKI完成 Install_the_SDK。

1.3 STM32CubeProgrammer安装

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

2.原理框图

首先看一下Myirtech的原理图框架:c9fa7fd2-2fab-11ee-bbcf-dac502259ad0.png从原理框图中可以得出以下硬件配置信息

1.STM32MP135DAF7

2.DDR3L

3.分离式电源设计

4.支持QSPI NAND,SD卡启动

5.双千兆以太网

6.USB Host

7.USB OTG (烧录用)

8.UART4 debug串口

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


3. STM32CubeMX项目创建

打开STM32CubeMX, 根据芯片的part number选择正确的芯片封装开始项目创建,例如:Myirtech使用的是STM32MP135DAF7,ca0f130c-2fab-11ee-bbcf-dac502259ad0.pngca60565e-2fab-11ee-bbcf-dac502259ad0.pngca7d207c-2fab-11ee-bbcf-dac502259ad0.png点击“Generate Code”之后会生成一个近乎空的project,设备树结构:caa00dee-2fab-11ee-bbcf-dac502259ad0.pngNote: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未修改的设备树覆盖。

创建设备树软链接:

  • TFA:

PC$> cd PC $>ln -s /local/home/xxx/Desktop/STM32CubeMX/myir_bring_up/DeviceTree/myir_bring_up/tf-a/* fdts/


  • OP-TEE:

PC$> cd PC $>ln -s /local/home/xxx/Desktop/STM32CubeMX/myir_bring_up/DeviceTree/myir_bring_up/optee-os/* core/arch/arm/dts/

  • U-Boot:

PC$> cd PC $>ln -s /local/home/xxx/Desktop/STM32CubeMX/myir_bring_up/DeviceTree/myir_bring_up/u-boot/* arch/arm/dts/

培训资料未完,请关注下一期文章。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2270

    文章

    10893

    浏览量

    355660
  • 开发板
    +关注

    关注

    25

    文章

    5027

    浏览量

    97357
  • 米尔
    +关注

    关注

    0

    文章

    50

    浏览量

    7930
收藏 人收藏

    评论

    相关推荐

    ST×米尔STM32MP25x线下培训

    STM32MP257D是ST推出的搭载了双核Cortex-A35@1.5GHz和Cortex-M33@400MHz的微处理器。米尔电子基于STM32MP257D推出了MYD-LD25X
    的头像 发表于 12-06 01:00 197次阅读
    <b class='flag-5'>ST</b>×<b class='flag-5'>米尔</b><b class='flag-5'>STM32MP</b>25x线下<b class='flag-5'>培训</b>会

    ST系列-米尔STM32MP257核心开发板-高性能+多接口+边缘算力

    MYC-LD25X核心开发板ST第二代工业级MPU,高性能+多接口+边缘算力STM32MP2系列是意法半导体推出最新代工业级64位微处
    发表于 09-20 17:46 1次下载

    使用STM32MP135驱动2.4寸 LCD屏幕,刷新率巨低为什么?

    使用STM32MP135 驱动2.4寸 LCD屏幕,刷新率巨低; 测试条件:(HAL库) 1、硬件SPI;2、IO操作使用寄存器配置;3、SPI时钟达到16M; SPI配置如下: IO操作配置如下: 之前使用MCU操作,刷新率都没有这么低; 实际现象(连拍两张): 求坛友们,指教一二
    发表于 05-20 06:51

    STM32MP135 linux SPI多字节时钟连续没有间隔是怎么回事?

    使用STM32MP135作为SPI主机通讯时,由于SPI从设备速度慢,数据字节之间的时钟间隔要大于等于半个时钟周期;尝试设置struct spi_ioc_transfer-&gt;word_delay_usecs参数发现没有时钟间隔,应该怎么办? 正常时序图 有问题的时序
    发表于 05-20 06:30

    MCU友好过渡MPU,米尔基于STM32MP135开发板裸机开发应用笔记

    和MPU之间的区别变得越来越模糊。STM32MP135款入门级的高性价比MPU,适用于MCU性能达不到要求或者需要跑Linux的场景。米尔STM32MP135
    发表于 03-29 18:35

    不是高性能MCU用不起,而是MP135裸跑更具性价比

    和MPU之间的区别变得越来越模糊。STM32MP135款入门级的高性价比MPU,适用于MCU性能达不到要求或者需要跑Linux的场景。米尔STM32MP135
    的头像 发表于 03-29 08:01 1222次阅读
    不是高性能MCU用不起,而是<b class='flag-5'>MP135</b>裸跑更具性价比

    STM32MP135移植U-Boot 2022.10-stm32mp-r1提示No serial driver found的原因?

    STM32MP135移植U-Boot 2022.10-stm32mp-r1提示No serial driver found
    发表于 03-11 08:13

    如何使用STM32CubeMx配置STM32MP135的LTDC外设?

    请问下,如何使用STM32CubeMx配置STM32MP135的LTDC外设,打开后LTDC配置项是空的
    发表于 03-11 07:37

    STM32MP135F-DK烧录fip-stm32mp135f-dk-optee.bin后直Reconnecting the device连不上设备的原因?

    STM32MP135F-DK开发板烧录烧录进行到fip-stm32mp135f-dk-optee.bin后直 Reconnecting the device连不上设备,可能是什么原
    发表于 03-11 07:05

    STM32MP135使用STLINK方式连接STM32CubeProgram,连接提示报错的原因?

    STM32MP135开发板使用STLINK方式连接STM32CubeProgram,连接提示报错,有遇到此问题的?
    发表于 03-11 06:03

    开放式高实时高性能PLC控制器解决方案-基于米尔电子STM32MP135

    实时高性能需求尤其突出。面对以上挑战,合作伙伴翌控科技基于米尔STM32MP135开发板发布开放式高实时高性能PLC控制器解决方案,将高精准数据采集、预处理、存储、通信与高实时控制融为
    发表于 03-07 20:06

    Stm32mp135打开cache之后,用作ltdc的显存地址数据就会异常怎么解决?

    各位大佬好,本人在Stm32mp135的裸机开发过程中发现,有几个问题需要请教大家。 1-打开cache之后,用作ltdc的显存地址数据就会异常(屏幕刷新异常),请问有没有类型M7系列的mpu保护
    发表于 03-07 07:55

    请问STM32MP135C-DK开发套件是和STM32MP135F-DK开发板个东西吗?

    请问STM32MP135C-DK开发套件是和STM32MP135F-DK开发板个东西?我没找到有ST
    发表于 03-07 07:41

    STM32MP135使用HAL库驱动2.4寸刷新率巨低的原因?

    使用STM32MP135 驱动2.4寸 LCD屏幕,刷新率巨低; 测试条件:(HAL库) 1、硬件SPI;2、IO操作使用寄存器配置;3、SPI时钟达到16M; SPI配置如下: IO操作配置如下: 之前使用MCU操作,刷新率都没有这么低; 实际现象(连拍两张):
    发表于 03-07 07:17

    STM32MP135 linux SPI多字节时钟连续没有间隔怎么办?

    使用STM32MP135作为SPI主机通讯时,由于SPI从设备速度慢,数据字节之间的时钟间隔要大于等于半个时钟周期;尝试设置struct spi_ioc_transfer-&gt;word_delay_usecs参数发现没有时钟间隔,应该怎么办? 正常时序图 有问题的时序
    发表于 03-07 06:14