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

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

3天内不再提示

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

米尔电子 2024-03-29 08:01 次阅读

以前微处理器(MPU)与微控制器MCU)是截然不同的两种设备,MPU支持丰富的软件系统,如Linux和相关的软件堆栈,而MCU通常将专注于裸机和RTOS。近年来,随着MCU的性能越来越高,MCU和MPU之间的区别变得越来越模糊。STM32MP135是一款入门级的高性价比MPU,适用于MCU性能达不到要求或者需要跑Linux的场景。米尔的STM32MP135开发板提供基于STM32Cube的Bare metal裸机开发的软件,能够进一步加强实时性能支持以满足用户实现硬实时应用的需求。这一点尤其对习惯于使用MCU开发的用户来说非常友好,可以让开发者在使用MPU强大性能的同时获得类似MCU的开发体验。米尔提供了支持裸机开发环境,接下来就让我们介绍如何在米尔的STM32MP135开发板上进行裸机开发。

为了感谢广大客户一直对ST和米尔的支持,米尔这次推出STM32MP135开发板打折活动,粉丝价5折,限量20套,抢完恢复原价。

7d76bbcc-ed5f-11ee-9118-92fbcf53809c.png

1.环境搭建

1.1.获取源码

下载米尔提供的04_Sources/STM32CubeMP13-1.0.0源码包,并使用 STM32CubeIDE导入STM32Cube_FW_MP13_V1.0.0\Projects\STM32MP135C-DK\Examples\DDR\DDR_Init文件,点击File->Import->Existing Projects into Workspace。

7d7c0de8-ed5f-11ee-9118-92fbcf53809c.png

7d93bf60-ed5f-11ee-9118-92fbcf53809c.png 

1.2.编译源码

成功导入工程后进行编译,点击7da48c64-ed5f-11ee-9118-92fbcf53809c.png进行编译,当下方出现0 errors, 0 warnings表示编译成功。

7daee2fe-ed5f-11ee-9118-92fbcf53809c.png 

1.3.开发板接线

当工程源码编译完后,开发板需要连接ST-Link进行调试,并且将拨码开关拨到工程模式1-4:1000,用到的接口是J7,由于出厂时没有将引脚焊接,需要用户自行焊接,接线方式如下图:

7dc3ab30-ed5f-11ee-9118-92fbcf53809c.png 

1.4.调试工程

在2.3中编译完后,接下来进行调试的操作,点击7deaccec-ed5f-11ee-9118-92fbcf53809c.png调试,如图:

7df24c42-ed5f-11ee-9118-92fbcf53809c.png 

进入到界面之后点击全速运行,看到开发板的蓝灯在闪烁说明ddr初始化成功:

7e04af9a-ed5f-11ee-9118-92fbcf53809c.png 

2.应用加载

2.1.应用环境配置

在初始化完ddr后,接下来就是让应用程序跑在ddr上,这里我们选用MYD-YF13X-20230601\STM32CubeMP13-1.0.0\Projects\STM32MP135C-DK\Templates\BSP_BasicTemplates路径下的工程应用:

根据1.1中的方法导入工程,看到工程成功导入之后,右键点击工程文件名,然后点击properties:

7e9cf23c-ed5f-11ee-9118-92fbcf53809c.png 

在执行以上操作后弹出Enter Value后添加USE_DDR字符并保存:

7eae76ce-ed5f-11ee-9118-92fbcf53809c.png 

继续右键点击工程文件名,然后点击properties:

7ec8dda2-ed5f-11ee-9118-92fbcf53809c.png 

按照以上步骤打开STM32CubeMP13-1.0.0\Projects\STM32MP135C-DK\Templates\BSP_BasicTemplates\STM32CubeIDE\MP13_BSP_BasicTemplates路径下的stm32mp13xx_a7_sysram.ld文件:

7ee298aa-ed5f-11ee-9118-92fbcf53809c.png 

将REGION_ALIAS("RAM", DDR_BASE);部分的注释删除,再把REGION_ALIAS("RAM", SYSRAM_BASE)给注释掉,保存并选中:

7f01ac18-ed5f-11ee-9118-92fbcf53809c.png 

2.2.调试应用

将以上环境配置完成之后,在应用调试阶段也需要进行一个配置,打开工程的调试设置界面,点击startup,将monitor reset删除,保存并调试:

7f15c6da-ed5f-11ee-9118-92fbcf53809c.png 

将开发板接上串口,全速运行,串口会打印Hello World - USE_STM32MP135 BOARD,至此应用调试成功。

7f332950-ed5f-11ee-9118-92fbcf53809c.png 

3.创建应用

3.1.适配硬件

以米尔MYD-YF13x开发板上的心跳灯为例,首先要确定心跳灯用到的GPIO口。查看硬件原理图可以看到心跳灯连接的是SPI5_MOSI:

7f489a74-ed5f-11ee-9118-92fbcf53809c.png 

通过查看米尔的Pin List可知道SPI5_MOSI对应的引脚是PH12,那么接下来就开始创建工程来配置心跳灯的闪烁。

3.2.工程创建

米尔创建的工程位于STM32CubeMP13-1.0.0\Projects\STM32MP135C-DK\Examples\GPIO\GPIO_EXTI路径下,根据1.1中的方法导入工程,如下:

7f540602-ed5f-11ee-9118-92fbcf53809c.png 

开始对心跳灯进行配置,修改stm32mp13xx_disco.h里的心跳灯引脚配置:

7f640ab6-ed5f-11ee-9118-92fbcf53809c.png 

修改完后回到main.c文件里在while函数中添加心跳灯的代码:

7f7648f2-ed5f-11ee-9118-92fbcf53809c.png 

编译并调试后,让程序全速运行,可以看到开发板上的蓝灯闪烁:

7f87ffe8-ed5f-11ee-9118-92fbcf53809c.png 

至此创建的工程调试成功。

804200f0-ed5f-11ee-9118-92fbcf53809c.png 


产品介绍

米尔STM32MP135开发板,基于STM32MP13系列处理器,单核Cortex-A7 设计,运行频率高达1GHz,专为入门级Linux、裸机或RTOS系统设计。开发板采用12V/2A直流供电,搭载了2路千兆以太网接口、1路USB2.0协议MINI PCIE插座的4G模块接口、1路RGB显示接口、1路音频输入输出接口、2路USB HOST Type A、1路 USB OTG Type-C接口、1路Micro SD接口等。开发板接口丰富,适用于能源电力、工业控制工业网关、工业HMI等场景。

805bb176-ed5f-11ee-9118-92fbcf53809c.png

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

    关注

    146

    文章

    17370

    浏览量

    352982
  • MPU
    MPU
    +关注

    关注

    0

    文章

    376

    浏览量

    49008
  • RTOS
    +关注

    关注

    22

    文章

    821

    浏览量

    119945
收藏 人收藏

    评论

    相关推荐

    高性能MCU对比 MCU在智能家居中的应用

    随着物联网(IoT)技术的飞速发展,智能家居行业迎来了前所未有的发展机遇。在这一领域,微控制器单元(MCU)作为核心控制单元,扮演着至关重要的角色。高性能MCU和普通MCU在智能家居中
    的头像 发表于 11-11 14:51 723次阅读

    请问STM32MP135F-DK如何移植ubuntu?

    STM32MP135F-DK如何移植ubuntu?
    发表于 07-23 07:10

    请问stm32mp135的中断响应时间为什么这么慢?

    我是对MP135进行,测试用了3个io口, PC3作为中断触发源,在程序中拉高来触发中断; PA4作为中断接收,上升沿触发中断; PE4作为中断标志,在中断函数中发出脉冲信号 这是主函数,发送
    发表于 07-22 06:19

    stm32mp135d的板子可不可以tensorflow的模型啊?

    请问是stm32mp135d的板子可不可以tensorflow的模型啊?
    发表于 07-18 06:49

    国民技术推出全新一代高性能MCU新品

    2024年7月8日,国民技术推出多款高能专用MCU产品。N32H482(通用控制)、N32H487(高性能互联)、N32GH473(电机控制)、N32H474(数字电源控制)四大系列高性能MC
    的头像 发表于 07-10 10:32 1660次阅读
    国民技术推出全新一代<b class='flag-5'>高性能</b><b class='flag-5'>MCU</b>新品

    请问STM32MP157的A7核可以Freertos吗?

    请问MP157的A7核可以Freertos吗
    发表于 05-24 07:23

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

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

    HOLTEK推出更具性价比的第二代半桥电磁炉Flash MCU HT45F0074A

    Holtek持续精进电磁炉产品技术开发,再推出更具性价比的第二代半桥电磁炉Flash MCU HT45F0074A。
    的头像 发表于 04-09 17:34 1025次阅读

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

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

    请问STM32MP135F-DK如何移植ubuntu?

    STM32MP135F-DK如何移植ubuntu?
    发表于 03-14 07:18

    请问MP157的A7核可以Freertos吗?

    请问MP157的A7核可以Freertos吗
    发表于 03-11 08:06

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

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

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

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

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

    请问STM32MP135C-DK开发套件是和STM32MP135F-DK开发板是一个东西?我没找到有STM32MP135C-DK开发套件。但是MP135裸机开发里提供的工程是STM32
    发表于 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