当前位置:首页 > > 开发板
[导读]继ST(意法半导体)在2015暑假推出首款Cortex M7内核开发板STM32F746G-DISCO后,2016又推出一款高性能的Cortex M7内核开发板STM32F769I-DISCO,跟第一款的DISCOVERY板比起来,新推出的的DISCOVERY板将F7的性能推向一个新的高度。

此为下篇:性能测试

主要测试以下内容:

Coremark

功耗测试

时钟精度测试

硬件Jepg解码测试

网络测试

DSP测试

移植UCOSiii

emwin试跑

上篇请戳:硬件详解篇

五、STM32F769I-DISCO性能测试

(1) CoreMark跑分测试

CoreMark是用来衡量嵌入式系统中中心处理单元(CPU,或叫做微控制器MCU)性能的标准。该标准于2009年由EEMBC组织的Shay Gla-On提出,并且试图将其发展成为工业标准,从而代替陈旧的Dhrystone标准。代码使用C语言写成,包含如下的运算法则:列举(寻找并排序),数学矩阵操作(普通矩阵运算)和状态机(用来确定输入流中是否包含有效数字),最后还包括CRC(循环冗余校验)。

官方称:无论是从嵌入式闪存还是外部存储器来执行代码:216 MHz 处理器频率下性能达到 1082 CoreMark /462 DMIPS。

图43 coremark跑分

测试结果:1074,跟官方宣称的1082相差不大。

(2)功耗测试

- Sleep Mode

运行状态:

- System Running at PLL (216MHz)

- Flash 5 wait state

- Instruction and Data caches ON

- Prefetch OFF

- Code running from Internal FLASH

- All peripherals disabled.

- Wakeup using EXTI Line (USER Button on PA.0 pin)

图44 功耗测试

官方标出的数据:测试结果跟官方的标的参数相差不大。

图45 官方功耗数据

- STOP Mode

运行状态:

- RTC Clocked by LSI

- Regulator in LP mode

- HSI, HSE OFF and LSI if not used as RTC Clock source

- No IWDG

- FLASH in deep power down mode

- Automatic Wakeup using RTC clocked by LSI (after ~20s)

图46 功耗测试

官方标出的数据:

图47 官方功耗数据

- STANDBY Mode

运行状态:

- Backup SRAM and RTC OFF

- IWDG and LSI OFF

- Wakeup using WakeUp Pin (USER Button on PA.0 pin)

图48 功耗测试

官方标出的数据:

图49 官方功耗数据[!--empirenews.page--]

- STANDBY Mode with RTC clocked by LSI

运行状态:

- RTC Clocked by LSI

- IWDG OFF and LSI OFF if not used as RTC Clock source

- Backup SRAM OFF

- Automatic Wakeup using RTC clocked by LSI (after ~20s)

图50 功耗测试

官方标出的数据:

图51 官方功耗数据

- STANDBY Mode with backup SRAM ON

运行状态:

- RTC Clocked by LSI

- IWDG OFF and LSI OFF if not used as RTC Clock source

- Backup SRAM ON

- Automatic Wakeup using RTC clocked by LSI (after ~20s)

图52 功耗测试

官方标出的数据:

图53 官方功耗数据

(3)时钟精度测试

ST的时钟系统也算复杂,时钟源一般有外部高速晶振、内部高速晶振、外部低速晶振和内部低速晶振,又是倍频,分频一系列处理后得到系统时钟,总线时钟,外设时钟。时钟对于MCU而言就像脉搏一样,在恶劣情况下如果出现外部晶振短路的情况会导致MCU无法正常运行。如果MCU应用于安全生产时,有可能造成安全事故。为了应对这一突发状况,ST公司生产的STM32采用双时钟机制,在外部晶振被短路的情况下,转而使用内部RC振荡器作为自己时钟心跳保证系统正常运行。然而RC振荡器并不是非常的准确,我们希望能够在外部晶振恢复正常的情况下继续使用外部晶振。

STM32CubeMX上相当方便地配置系统,这图形化配置软件写得相当好,我爱上她了,从此将主要精力放在关键功能上。

图54 时钟配置

这里我们来测试时钟的准确性,这里需要的工具是一台示波器,代码也比较简单,用STM32CubeMX配置一下即可,采用MCO(PA8)内部时钟输出脚,板子上是测试点TP2,查看一下原理图就能找得到,这里就不多说了。

首先新建一个工程,分别在High Speed Clock(HSE)和Low Speed Clock(LSE)选择Crystal/Ceramic Resonator使能外部高速时钟和外部低速时钟,并勾选Master Clock Output 1

使能系统时钟输出。

图55 配置时钟源

首先要配置好系统时钟,这里的系统时钟需要配置为216MHz使用倍频时间,测试时钟准确度。

图56 系统时钟配置

这里选择MCO输出的源

图57 配置mco输出频率

这里测试了5项:

1:LSE(内部低速晶振时钟)内部低速晶振标定是32KHz,精度是存在一定的偏差的,倘若要做精确的RTC,建议还是采用外部晶振好点。

图58 mco输出低速晶振

2:HSE(外部高速晶振时钟),晶振的本身特性,导致出来的波形有点奇怪。

下图是直接测晶振输出的波形,还算不错。

图59 25M外部晶振

经过MCO时,信号饱和失真了,由于时间问题这里只做频率分析了,测出来的频率为25.02MHz,跟实际标称的频率非常接近了。

图60 mco输出HSE时钟[!--empirenews.page--]

3:HSI(内部高速晶振时钟),此现象跟外部高速晶振时钟一样,测出来的频率为16.34MHz,跟实际标称的16MHz有点出入,内部高速时钟精度还是有很大的误差的。

图61 mco输出HSI

4:PLLCLK-HSE源(系统时钟,由外部高速晶振时钟倍频)生成的系统时钟跟配置出来的216MHz相差不大,外部晶振还是相当准确的。

图62 mco输出HSE生成的系统时钟

5:PLLCLK-HSE源(系统时钟,由内部高速晶振时钟倍频),而用内部高速晶振生成的系统时钟偏差比较大,会出现偏移。

图63 mco输出HSI生成的系统时钟

(4)硬件JPEG解码

硬件JPEG解码是F769I-DISCO这块板子的一大特色,这里就拍个视频对比一下开启硬件JPEG和关闭硬件JPEG后的区别吧。

硬件JPEG测试:


从视频中可以看到,开启了硬件JPEG后,播放的帧率也达到20+fps,关闭硬件JPEG后,能感觉到明显的卡顿。

这里再测试播放1080P视频看看,虽然标定最大支持720P,还是忍不住测试一下。

1080P视频播放:


通过视频可以看到,播放1080P的视频还是可以的,稍微卡一下,肉眼察觉不出来,播放速度慢慢赶不上原画的了。

(5)网络测试

l 以太网测试

一块面向物联网的开发板是少不了以太网的(或者是wifi等无线通信模块),网络最重要的参数就是带宽和吞吐量了,带宽主要受限于以太网硬件支持。

Lwip移植,Socket编程这里就不详细说了,这里主要是测试一下网络吞吐量。

先测试一下官方的例程,官方的例程是一个网页测试,首先先把官方的例程编译然后下载到板子上,用网线连接路由器,让板子复位后,等待板子获取ip地址。

图64 官方lwip测试

然后打开网页在地址栏上输入板子的ip地址,就会显示出下图,是关于STM32F7的一些介绍及一些资源信息。

图65 实验结果

可以实时查看当前的任务的数量,占用的资源。

图66 显示板子运行状态

接下来测一下,网络吞吐量,修改一下官方的代码,用于网络吞吐量的测试。测试主要是网络测试工具自动发送功能,改变发送的数据量和发送的时间间隔,用wireshark抓包软件进行抓包分析。

图67 网络调试工具[!--empirenews.page--]

从wireshark抓出来的包可以看到吞吐量在10k/ms后数据包就不再增加了,达到了极限了,测试效果非常的好。这其中包含很多TCP的复杂处理,慢启动,拥塞处理,TCP窗口等就不一一在这解释了。

图68 wireshark网络分析图

l WI-FI测试

测试wifi得硬件上支持,板子上已经预留了ESP8266-01模块的接口了,买一块wifi模块就可以进行测试了,但是记得接口一定要对着上的,市面上很多wifi模块跟板子的接口是不对应的。

图69 扩展板电路

将模块插入WIFI接口中即可。

图70 esp8266模块实物

接下来就是软件的问题了,TX为PD2,RX为PC12,用的是uart5,RST为PJ14,CH_PD为PH7,RST和CH_PD拉高即可,接下来就是配置串口,数据接收发送处理了。ESP8266那边就不做详细讲解了,用的是AT指令。这里就不做吞吐量测试了,都是一个道理的,只是从有线变成无线了,也受限与串口速率。

图71 测试网络

这里就写了个小应用,将ESP8266收到的信息显示在LCD上。

图72 wifi测试结果

(6)DSP测试

STM32F7在数字信号处理方面有 DSP 指令集,支持诸如单周期乘加指令(MAC),优化的单指令多数据指令(SIMD),饱和算数等多种数字信号处理指令集,在数字信号处理能力方面得到了大大的提升。

测试 STM32F7 的 DSP 库基础数学函数:

arm_cos_f32 和 arm_sin_f32 和标准库基础数学函数:cosf 和 sinf 的速度差别,并在 LCD 屏幕上面显示两者计算所用时间。测试结果表明,使用DSP库后,处理时间缩短了很多。

 

图73 DSP测试

第二个测试是测试傅里叶变换,在stm32F4上测试结果为0.5ms左右,在F7上测试只需要0.03ms,差距有多大,让数据来说话。

 

 

图74 FFT测试

(7)移植ucosiii

移植ucosiii比较简单,直接在ucosiii官网上将STM32746G-Discovery移植好的例子拿来用,非常方便快捷,ucosiii已经实现与各类MCU实现无缝对接了。

用STMcubeMX新建一个工程,配置好LED灯,如下图将ucoiii相关文件一一加到工程中,并添加头文件路径即可。

图75 ucos移植

修改启动文件的中断服务函数,改用ucosiii的内部中断服务函数。

图76 修改源码

在主函数中让LED以1HZ的频率闪烁,验证ucoiii已经跑起来了。

图77 添加LED驱动

移植成功后就可以进行下一步开发了,创建任务,尽情DIY吧!

(8)STemwin试跑

官方已经移植好STemwin了,但是没有跑官方测试Demo,这里给大家放个测试视频。

stemwin试跑:


资源:

开发板介绍:http://pan.baidu.com/s/1geASu1l

原理图:http://pan.baidu.com/s/1hscA6kG

Hal固件:http://pan.baidu.com/s/1c9WPwM

STM32F769I-DISCO ucosiii:http://pan.baidu.com/s/1hr725mO

串口助手:http://pan.baidu.com/s/1cEaA3W

MDK:http://pan.baidu.com/s/1qYnjCsc

IAR:http://pan.baidu.com/s/1kUZMCNP

STM32F769I-DISCO coremark:http://pan.baidu.com/s/1o8Mz9hg

参考手册:http://pan.baidu.com/s/1o7VCIj4

本文系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 隧道灯 驱动电源
关闭