当前位置:首页 > > 开发板
[导读]STM32F4家族再添新品,9月27日,ST宣布推出入门级STM32F4新品STM32F412 MCU。21IC.COM第一时间拿到了NUCLEO-F412ZG评估板并对该产品进行了评测。

STM32F412是ST推出的新款MCU产品,这是一款基于Cortex-M4的入门级MCU,为STM32F4 Access Line系列带来了全新的特性,除了对产品内存进行了升级,还带来了其它的新特性,例如更高的主频及可以工作在125°C的工作环境之下,MCU还提供了QSPI/FMC存储访问接口。


图1 STM32-F412

根据ST官方对STM32F4的分类,STM32F4系列MCU分为三个系列:Access Lines系列、Foundation Lines系列及Advanced Lines系列。STM32F412属于Access Lines系列中高性能的产品,具备优秀的电源效率特性,MCU的工作频率进一步提升至100MHZ。为了让用户更好的体验及评估STM32F412系列MCU,官方推出两款配套的评估板:NUCEO-F412ZG及STM32F412G-DISCO开发板,此次评测的产品为NUCLEO-F412ZG


图2 NUCLEO-F412ZG包装

NUCLEO-F412ZG开发板沿袭NUCLEO系列特色,包装上基本已形成固定风格。考虑到ST向来对于用户的慷慨态度,常常免费提供开发板,或者以较低的价格发售开发板,故极少有人对包装的简陋予以指责!透过透明的外包,可以看到NUCLEO-F412ZG是一款NUCLEO144系列产品,MCU使用的是STM32F412ZGT6,同时看到开发板上预留了网络接口,但是作为入门级的产品,开发板上并未提供网络接口,相应的控制芯片及网络变压器也没有提供。


图3 背面的入门指南

NUCLEO-F412ZG开发板背面提供了用户入门的简短说明,还有系统需求及支持的开发工具链等介绍。


图4 开发板正面

NUCLEO系列开发板基于公版设计,对于大多数引脚数相同的MCU,可以直接替换兼容的MCU来体验不同的MCU特性。开发板上中心位置是144脚的STM32F412ZGT6 MCU,上下两侧则是NUCLEO开发板引出的Morpho及Zio接口。开发板右侧是ST-LINK/V2-1调试/下载器,ST-LINK已成ST官方开发板的标配。开发板左侧的缺口是没有引出的网络接口,另外相应的PHY芯片也没有焊接。如果用户需要使用网络功能,需要自行焊接。开发板左侧还提供了USB OTG接口,提供访问外部大容量USB存储器的能力。其它设备包括3个用户可编程LED指示灯、2个按钮(一个用户可编程按钮及一个RESET按钮),另外开发板上提供了32K的LSE晶振。开发板没有提供HSE晶振,不过ST巧妙的设计使得可以使用ST-LINK提供的MCO来给主MCU提供准确的时钟信号。


图5 开发板背面

NUCLEO-F412ZG开发板背面包含大量的SB焊桥,用户可以通过这些焊桥的不同组合以实现不同的硬件配置。开发板引出的Morpho及Zio均使用过孔设计,方便接驳不同类型的杜邦线以连接各种外设。

[!--empirenews.page--]


图6 特性一览

NUCLEO-F412ZG开发板附送一张简单用户说明,描述了产品提供的主要特性,例如本评估板上使用的144针的STM32F412ZGT6 MCU,工作频率为100MHZ,FLASH/RAM的组合为1MB/256KB,其它主要特性也列出供用户参考。


图7 接口写真

NUCLEO-F412ZG开发板一侧的接口写真,可以看到按键、OTG、没有焊接的ETH接口等设备。


图8 接口写真

NUCLEO-F412ZG开发板另一侧的ST-LINK/V2-1接口,板载的ST-LINK/V2-1除了可以给开发板下载程序及兼做调试器外,也可以通过ST-LINK上引出的接口用作其它开发板的调试/下载工具。


图9 ST-LINK/V2-1

ST-LINK/V2-1上提供了用户指示ST-LINK/V2-1的三色LED指示灯,用来指示调试器的工作状态。另外注意引出的SWD接口,该接口可以用来对其它开发板下载代码,也可以用来调试其它接口。


图10 MUC特写

MCU特写,NUCLEO-F412ZG开发板下面标注为X2的是32K的LSE晶振。STM32-F412片上集成了丰富的外设,主要包括

l 4x USARTs running at up to 12.5 Mbit/s

l 5x SPI (muxed with the I²S) running at up to 50 Mbit/s

l 4x I²C up to 1Mbps

l 2x CAN (2.0B Active)

l 1x SDIO running at up to 48MHz and available on all packages[!--empirenews.page--]

l 1x USB 2.0 OTG Full-speed (FS)

l 2x full duplex I²S up to 32-bit/192 kHz

l 3x simplex I²S up to 32-bit/192 kHz

l 2x digital filters for sigma delta modulator

l 4x PDM interfaces, stereo microphone support

l 12-bit ADC reaching 2.4 MSPS,

l 14 timers, 16- and 32-bit, running at up to 100 MHz

l True random number generator

NUCLEO系列开发板与DISCO开发板的区别就是NUCLEO板上几乎没有集成外部设备,而DISCO系列开发板一般会集成若干比较实用的外设,直接供用户进行体验。NUCLEO最大的优势是引出了全部的GPIO接口,同时也提供了Arduino UNO兼容的硬件接口,为用户自行选择外设提供了更大的灵活性。


图11 元器件布局及名称

这里列出了NUCLEO-F412ZG开发板上主要设备的位置及名称,方便用户参考使用,注意NUCLEO-F412ZG上没有引出ETH接口。

Zio接口兼容Arduino UNO R3接口,对应的引脚位置及名称参考如下


图12 Arduino UNO R3兼容接口

注意NUCLEO144使用了公版设计,主要的设备除了通过SB焊桥来进行配置外,具体的开发板型号引出的引脚,特别是与Arduino兼容引脚的位置会略有差别,需要参考官方手册及具体的原理图。[!--empirenews.page--]

NUCLEO-F412ZG开发板出厂时内置了DEMO程序。使用Micro USB连接线连接开发板与PC,ST-LINK开始上电,检测USB能否提供足够的供电,通过调试器提供的三色LED灯来指示不同的工作状态。PC端会发现新的硬件设备,如果是使用Linux系统作为开发环境,一般可以直接使用内核提供的串口驱动;如果是使用Windows作为开发环境,则可能还需要安装ST-LINK驱动程序,本次测试用的操作系统是Windows 10 LTSB版本,早前已使用过其它类型的ST开发板,所以设备管理器已能直接发现对应的串口设备。


图13 虚拟串口设备

另外NUCLEO-F412ZG开发板还支持mbed方式的代码下载功能。开发板连接到设备后,PC端会映射一个USB存储器,可以直接将编译好的代码拖放到USB存储器中实现代码下载。


图14 USB存储器

映射到PC端的USB存储器内置MBED开发快捷方式,双击存储器内的MBED文件,可以进入MBED开发环境,使用MBED来开发软件


图15 MBED硬件平台

不过截止本文发稿为止,尚未在MBED的开发环境中找到NUCLEO-F412ZG的相关信息,看到的还只是MCU的符号。所以如果想在MBED上体验NUCLEO-F412ZG的软件开发优势,尚需等待官方开放出相应的硬件平台支持功能。

NUCLEO-F412ZG开发板上电后,默认的DEMO功能提供了通过按键来切换3个LED灯闪烁频率演示,可以通过该DEMO来初步测试开发板是否功能正常。

ST一直致力于打造一个良好的产品生态系统,向用户提供完整的软、硬件设计参考,从产品的软件库到硬件的设计PCB、BOM等,应有尽有。

STM32CUBEMX是ST推出的一款图形化辅助用户编程工具。该工具提供了直观的图形化表示,帮助用户设置硬件的初始工作参数,结合ST推出的HAL库,开发者无需查询琐碎的寄存器参数就可以实现特定的初始化及相应的功能调用。通过对CUBEMX的设置,最终用户会得到一个基于IAR/MDK/TrueStudio的完整的工程文件,该工程文件除了设置好硬件工作参数外,还对内存布局、堆栈设置等作了初始设置。

STM32CUBEMX还支持丰富的三方中间件集成功能,如RTOS的支持及FATFS等中间件的支持。

启动STM32CUBEMX软件,首先选择MCU的类型,实际上CUBEMX也支持选择开发板类型来定制程序的功能。


图16 选择MCU型号

STM32CUBEMX支持STM32系列的所有MCU,各系列MCU都通过独立的程序包来支持。这里选择STM32F412ZGTx,点击OK继续设定其它的参数,如启用MCU上的哪些片上设备,设备系统时钟等参数。

STM32CUBEMX还有一个非常有用的功能,点击Power Consumption Calculator选项卡,在这里可以对设备的电源使用情况作一个模拟。点击界面上的添加按钮,添加一种特定的MCU运行模式,并设置其它相关的参数。


图17 配置测试参数[!--empirenews.page--]

在估算系统功耗时,可以设置的内容非常丰富,例如MCU的运行模式、MCU的主频选择、是否启用FLASH的预取功能等,另外还可以指定使用哪些片上外设。对于指定的功耗模式,可以设定每种模式运行时间的长短及附加的电源消耗值。


图18 估算效果

这里我们添加了两种运行模式,一是标准的RUN模式,系统估算后得到电流值约为21mA。而处于SLEEP模式下的电流消耗则大约是3mA的样子。同时,软件还会计算出指定时间段内的平均电流值。

STM32F412作为一款高性能MCU,官方给出的参考指标是125 DMIPS/339 CoreMark,这里我们也来测试一下系统的CoreMark得分并与官方的值做一个比较。关于CoreMark的介绍及移植,请参考官方文档,此处不赘述。

测试使用的工具链是IAR,为了达到最优性能,需要对IAR工程文件设置适当的优化,


图19 工程优化

优化级别设定为High,优化选项指定为Speed,同时勾选No size constraints,对程序进行最大程度的优化。


图20 CoreMark测试

从上述测试结果来看,我们得到的CoreMark得分是335,与官方宣称的339得分非常接近了。除了测试了CoreMark得分,还使用了万用表测量了一下工作时的电流,


图21 电流实测

看到测量所得到的电流值与在STM32CUBEMX工具中得到的估算值也是非常接近的。

STM32-F412进一步丰富了STM32系列MCU,凭借新的特性,如更高的主频(100MHZ),更大的存储能力(1MB FLASH/256KB RAM),及更宽广的温度适应能力(高达125°C),使得STM32-F412非常适合应用在电机驱动、工业PLC、可穿戴设备及医疗设备等应用场景。官方给出的UQFN48封装的STM32F412的报价是$3.60(10,000片),这个价格相对于国产芯片来说,略贵。

如果想快速体验STM32-F412这一崭新的MCU,NUCLEO-F412ZG的确非常适合!

参考资源:

NUCLEO-F412ZG介绍

STM32CUBEMX

STM32单片机中文官网

STM32单片机官方开发工具

STM32单片机参考设计

本文系21ic原创,未经许可禁止转载

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭