STM32MP1

STM32MP1多核微处理器,带有650Mhz主频的cortex-A7双核以及一个主频为209Mhz的cortex-M4核,即片内拥有三核。很多STM32新老用户对STM32MP1表现出浓厚的兴趣,纷纷从ST或者其它渠道购买到了STM32MP1的开发板。当用户拿到开发板之后,如果本身就有丰富的linux经验,自然可以按照

https://wiki.st.com/stm32mpu的指南,先安装运行linux操作系统的PC,再一步一步使用linux上的命令行,将STM32MP1跑起来。

然而,很多STM32用户,虽然有着非常好的嵌入式开发能力,但并没有linux的PC环境或者linux的相关知识。在这种情况下 ,如果他们想学习STM32MP1或者评估是否应该在项目里使用STM32MP1,该怎么办?

显然,非常重要的第一步,是让STM32MP1开发板在用户手上动起来。那么,在不懂Linux,在没有Linux PC的情况下,是否有可能借助STM32生态系统,让这些用户快速并轻松迈出第一步?

答案是肯定的 。STM32用户可以在Windows上借助STM32CubeProgrammer图形界面编程工具以及STM32MP1官方预集成的入门开发包(STM32MP1 Starter kit)轻轻松松将STM32MP1开发板点亮。

开发板点亮的全过程,不需要记忆命令,也不需要手工输入命令。开发板点亮之后,意味着你拥有了一台运行在STM32上的微型PC。用户可以外接鼠标与键盘,外接显示器或者直接使用开发板所带的触摸屏进行STM32MP1的人工智能,3D GPU等演示,甚至输入Linux命令。

本文将重点描述用户如何快速入手STM32MP1所需要的工具,软件包以及操作,不仅适合linux零基础的STM32用户,也适合其它有一定linux基础的用户,基于Windows PC独立快速搭建STM32MP1平台。

工具

我们用来下载固件的工具是 STM32CubeProgrammer。很多STM32用户的电脑都装有这款工具。如果还没有安装的用户,可以从https://www.st.com/en/development-tools/stm32cubeprog.html进行下载。这里使用的版本如下:

STM32MP157C-DK2开发板

本文假定用户已经得到STM32MP157C-DK2开发板。如果用户得到其它类型开发板,软件与操作会有一些细微的不同。本文会描述这些细微的不同点,供有其它开发板的人参考。

随着开发板一同装箱应该还有MicroSD 卡。这张存储卡需要插在板子相应的接口上(插座CN15)。它是用来存储后面将要从PC下载的固件。在实际产品中,用户可以使用其它的外接Flash,不一定需要MicroSD卡。但MicroSD卡用来进行功能演示或者评估无疑是最方便的。

STM32MP157C-DK2连线

STM32MP157C-DK2开发板的基本连线主要分三个部分,使用一根USB Type-C线缆给板子供电,使用另外一根USB Type-C线缆以DFU方式给板子下载固件,使用一根MicroUSB线缆连接ST-Link。这里使用两根Type-C线缆来供电+DFU是必须的,因为我们需要使用STM32 DFU模式下载固件。而ST-Link连接不是必须的。

如果连接了ST-Link,用户可以在ST-Link虚拟串口上得到一个STM32MP1的终端。用户可以从该终端观察启动日志,输入Linux命令(例如配置网口)等操作。

具体的 连接示意图如下:

如果你的开发板不是STM32MP157C-DK2,连线也是这三部分,但可能不是USB Type-C供电。例如对于STM32MP157C-EV1,则连接如下。同样,ST-Link连接对于固件下载不是必需的。

预编译的固件包

在STM32MP157C-DK2开发板运行的预编译固件包可以从

https://www.st.com/content/st_com/en/products/embedded-software/mcu-mpu-...获得。如果链接失效,可直接在www.st.com 搜索STM32MP1Starter得到下载入口。

固件包是个压缩包,名字为en.FLASH-stm32mp1-openstlinux-4.19-thud-mp1-19-02-20.tar.xz。该类型压缩文件在Linux上可以直接使用tar命令解开。在windows上也不用担心,可用7-zip解压缩。如果你的电脑使已经安装了7-zip,则直接使用右键选择7-zip打开。

直接双击后就可以看到文件包

这个时候你就可以将该目录固件整体解压到任意目录。可以看到固件包中images目录包含了对所有STM32MP1开发板的支持。如果你的开发板不是STM32MP157C-DK2而是STM32MP157C-EV1,该固件包也只需要下载一次。

开发板跳线

使用DFU功能,我们需要将STM32MP157C-DK2跳线配置为从DFU启动。跳线开关位于STM32MP157C-DK2的背面。我们将其跳线到OFF,样子如下:

对于其他开发板,例如STM32MP157C-EV1,也是将启动模式跳线至OFF,样子如下:

下载固件到STM32MP1

如果跳线按照以上的方式调整完毕,重新上电并连上用于DFU的Type-C线缆,打开STM32CubeProgrammer,可以使用USB连接开发板。

当USB连接成功后,用户可使用STM32CubeProgrammer菜单选择开发板所对应的tsv文件如下。

我们通常选择FlashLayout_sdcard_stm32mp157c-dk2-trusted.tsv(tsv在\images\stm32mp1\flashlayout_st-image-weston目录下,binary则在上一级目录\images\stm32mp1),则画面如下:

这个时候我们选择下载Download,则固件就会被下载至STM32MP157C-DK2的MicroSD卡。整个固件大约500M字节,下载时间大约需要20分钟。下载成功提示如下:

注意:如果使用其它开发板,例如stm32mp157c-ev1,则应该选择其他tsv文件,但是固件所在的目录以及其他操作不变。

启动

拔掉电源,将背面的启动设置跳线恢复,跳至ON位置,如下:

如果你使用其它开发板,例如STM32MP157C-EV1,则将除了2之外的1,3都跳至ON。

正常启动后,就可以在屏幕上看到:

总结

本文描述了在Windows上使用STM32CubeProgrammer将STM32MP1 Starter Kit固件烧录进MicroSD卡,适合没有Linux基础又需要了解评估STM32MP1的功能、性能以及功耗的人员。有经验的开发人员也可以利用本文快速搭建STM32MP1平台进行功能演示或者进行Linux应用开发,例如可以继续使用STM32CubeMx生成DeviceTree,从而进行硬件资源的配置修改。更进一步的学习与开发,欢迎访问

https://wiki.st.com/stm32mpu

来源:STM32单片机

围观 14
  • 微处理器系列产品列入10年滚动续期工业级供货承诺名单
  • STM32MP1多核架构是在实时和功耗受限的子系统中开发开源软件应用的理想选择
  • OpenSTLinux发行版和经过市场检验的STM32Cube生态系统可缩短研发周期

横跨多重电子应用领域的全球领先的半导体供应商意法半导体 (STMicroelectronics,简称ST;纽约证券交易所代码:STM) 利用多年积累的Arm® Cortex®研发知识扩大STM32 MCU的功能,使这一市场领先的微控制器产品组合覆盖到处理性能和资源要求更高且需要大型开源软件的应用领域。新推出的STM32MP1多核微处理器系列具有计算和图形处理能力,兼备高能效实时控制和高功能集成度,有助于简化工业制造、消费电子、智能家居、医疗应用高性能解决方案的开发。

STM32MP1系列微处理器(MPU)产品依托意法半导体及其合作伙伴共同构建的强大、成熟的STM32 *系列生态系统,包括开发工具和技术支持。STM32系列主要用于解决客户对实时任务和功耗限制的重要要求,OpenSTLinux作为市场上主流的开源Linux发行版发布,将STM32系列从以实时任务和功耗限制为主的应用扩大到更广泛的市场。在MPU和软件的联合支持下,意法半导体提供一个整体方案,满足许多工业和专业应用的供货需求。当然,STM32MP1包含在意法半导体的10年滚动续期供货承诺名单内。

意法半导体微控制器产品部总经理Ricardo De Sa Earp表示:“STM32MP1将STM32的产品优势带到了既需要MPU计算和图形处理,又需要高能效实时控制和高功能集成度的应用领域。我们加大开源Linux软件和微控制器的开发支持力度,辅以消费类微控制器所不具备的长期供货保障,让开发者对使用STM32MP1开发嵌入式MPU项目充满信心。”

现在有了意法半导体全新的整合Arm®Cortex® -A和Cortex® -M两颗不同核心的STM32MP1微处理器系列 (MPU),客户可以在这个新型STM32异构计算架构上开发一系列新的应用设计。这一灵活的异构计算架构在单一芯片上执行快速数据处理和实时任务,始终实现最高的能效。例如,通过停止Cortex-A7执行指令,只让能效更高的Cortex-M4运行,功耗通常可以降至25%。再从这种模式进入待机状态,功耗进一步降至1/2500(两千五百分之一),同时仍然支持1到3秒内恢复Linux执行,具体恢复速度取决于实际应用。

STM32MP1嵌入了3D图形处理器(GPU),以支持人机界面(HMI)显示器;外部存储器支持各种DDR SDRAM和闪存。此外,STM32MP1嵌入了大量外设,可以无缝分配给Cortex-A / Linux或Cortex-M / 实时操作。STM32MP1系列采用多种BGA封装,支持成本最低的PCB板结构,电路板空间占用极小。

意法半导体正在用实际行动兑现其加强软件开发的承诺。为了加快项目开发速度,意法半导体发布了一款主流开源Linux发行版OpenSTLinux Distribution。 OpenSTLinux现已通过了 Linux Foundation、Yoctoproject ®、Linaro等Linux社区的审批。该发行版包含在应用处理器内核上运行软件所需的全部基本组件。

增强型STM32Cube工具是Cortex-M微控制器STM32Cube软件包的特别升级版,具有加快Arm Cortex-A-内核MPU项目开发所需的全部功能和特性。意法半导体解决方案可简化MPU项目创建和片上资源配置。

STM32MP1产品现已量产。新产品将在3月铺货给经销商。了解更多详情,请联系当地意法半导体经销商或访问www.st.com/stm32mp1

两款评估板 (STM32MP157A-EV1 和 STM32MP157C-EV1)和两款探索套件(STM32MP157A-DK1 和 STM32MP157C-DK2)将在 4月投放到经销商渠道。

更多技术信息

STM32MP1系列微处理器集成两颗主频650MHz的Arm Cortex-A7应用处理器内核和一颗运行频率209MHz的高性能Arm Cortex-M4微控制器内核。为防止MPU系统出现性能瓶颈和带宽问题,STM32MP1支持经济实惠的DDR SDRAM存储器,包括DDR3、DDR3L、LPDDR2、533MHz的32/16位LPDDR3。此外,STM32MP1还支持各种闪存产品:eMMC、SD卡、SLC NAND、SPI NAND和Quad-SPI NOR闪存。

3D图形处理单元(GPU)可实现基于OpenGL® ES2.0接口的高级HMI开发以及Linux和各种应用程序框架(包括Android Qt)的本机支持。STM32MP1支持60fps、高达WXGA的 24位并行RGB显示器接口和运行频率1Gbps的有2个数据通道的MIPI® DSI接口。

这款3D图形处理器有助于工业控制面板等设备提升用户使用体验。Crank Software公司是Storyboard™用户界面开发工具套件的开发者,公司总裁Brian Edmond评论说:“STM32MP1平台增强了ST的解决方案的优势,并与Storyboard业界领先的软件系统可伸缩性保持一致。Vivante®强大的3D GPU让Storyboard用户可以创建当今嵌入式市场需要的丰富图形体验。”

此外,ST还与Witekio展开合作,将Android移植到STM32MP1上。Witekio董事长Yannick Chammings表示:“Witekio很自豪能与ST合作将Android移植到STM32MP1上。作为系统软件集成商,Witekio通过开发基于STM32MP1系列的完整软件系统,从Linux或Android定制,到Qt HMI开发和云连接,陪同ST客户开发物联网创新项目。”

为了让客户相信代码是完全可信的并安心使用,STM32MP1系列嵌入了硬件安全加密功能,包括TrustZone、加密算法、哈希、安全启动、防篡改引脚和实时时钟。

STM32MP1还借用了STM32 MCU的先进IP模块。STM32MP1具有37个通信接口,例如,3个 USB2.0(包括2个高速)、1个千兆以太网GMAC、2个CAN FD接口,以及多个标准I²C、UART和SPI接口;还配备了一系列模拟外设,包括2个16位 ADC、2个12位DAC和片上LDO稳压器。STM32MP1支持29个定时器和3个看门狗。根据封装不同,最多支持176个GPIO引脚。

意法半导体为该芯片组开发了一个配套芯片。STPMIC1是STM32MP1专用电源管理IC(PMIC),集成了四个DC / DC降压转换器、六个LDO稳压器、一个DC / DC升压转换器,以及USB VBUS和通用功率开关,节省空间和BOM成本,为STM32MP1和电路板上的其它组件提供所需的电压轨。STPMIC1采用功耗优化技术,是电池供电应用中的STM32MP1系列的理想配套芯片。

OpenSTLinux 发行版支持在STM32MP1的Cortex-A7内核上的开发项目,并包含Linux BSP板级支持包、内核、驱动程序、引导链和安全操作系统(OP-TEE:可信执行环境)等重要组件。

为了优化项目每个阶段的开发工作,用户可以从三个开发者软件包中选择最能满足他们需求的支持功能:

为了帮助使用STM32MP1 MPU开发Linux安全产品的客户加快开发速度,意法半导体与开源软件提供商Timesys展开合作。Timesys首席执行官Atul Bansal表示:“我们很高兴与意法半导体合作,为STM32MP1系列MPU客户加快开发更安全的Linux产品提供所需的工具。 意法半导体在主流STM32MP1系列Yocto BSP板级支持包维护和meta-timeys集成上投入巨大,这可以让客户减少在管理漏洞上花费的时间。”

意法半导体加大软件支持力度的承诺,包括STM32CubeMP1固件包,使STM32MP1从竞品中脱颖而出。STM32CubeMX可简化Cortex-A7和Cortex-M4内核的软硬件配置,处理M4内核的C代码生成、DDR SDRAM接口配置和调试工具,还可以生成Linux Device树形图。

意法半导体为客户提供一系列社区板和第三方的模块上系统(SOM)板。

阅读 STM32MP1博客文章:https://blog.st.com/stm32m1-mpu-stm32mp157a-ev1-stm32mp157c-dk2/

围观 375
订阅 RSS - STM32MP1