3050|6

83

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

【NUCLEO-L452RE测评】测试现象 有这么快吗? [复制链接]

测试平台:STM32L452,采用mbed工程——好像是STM32L432的工程改过来的
测试内容:LED的闪亮——太太简单了,才有意思
就是这样简单的程序测试才有意思,可以说是首次遇到这样的问题。下边是测试代码:
#include "mbed.h"
DigitalOut led0(PB_8);
DigitalOut led1(PB_9);
void delay(uint32_t counter){
uint32_t i,j;//常规此处只设置int或uint16_t
for(i=0;i }
int main() {
while(1) {
  led0=1;led1=0;//通常延时值不超10000
  delay(0x00FFFFFF);//wait(0.2f); // 200 ms
  led0=0;led1=1;
  delay(0x00FFFFFF);//wait(0.2f); // 200 ms
}
}
现象:当采用wait(0.2f);时发现led一直亮着,难道没有开关作用?用示波器观察发现确实有方波,为了减少不同mbed的问题,自己写了一个延时函数,注意是i与j同时递增,给的时间量是0x00FFFFFF——16777215的i+j的累加,差不多1.5秒左右的亮暗,因为采用过0xFFFFFFFF——4294967295数值直接累加,还看不到闪烁,按照1个周期1个累加,相当于远超过4G的速度,只好采用i+j的方式。见照片33。
先说明一下:我玩过的ARM中通常设定i+j延时1秒左右[上演示程序代码]最大的值大约为10000以内,所以奇怪此次的实验。
问题是:1. STM32L452真有这么高速吗?2. 是否默认配置启用了VFP浮点运算?
求解?先谢谢了

33-2XLED交替闪亮照片.gif (765.93 KB, 下载次数: 0)

33

33
此帖出自stm32/stm8论坛

最新回复

偶尔遇到过wait()函数无效的情况,有时是因为设置,没有开浮点,这时用wait_ms()就是正常的;有时是mbed版本太低。  详情 回复 发表于 2017-6-16 18:05
点赞 关注
个人签名永远好心情
 

回复
举报

1382

帖子

2

TA的资源

五彩晶圆(初级)

沙发
 
这种空循环编译器激进点可以给优化没了
此帖出自stm32/stm8论坛

点评

如果是优化没有了,你可以改变i,j的数值来测试,芯片是机器,执行指令还是忠实的。  详情 回复 发表于 2017-6-16 18:03
 
 

回复

2774

帖子

8

TA的资源

版主

板凳
 
可能是闪的太快肉眼余辉吧!
此帖出自stm32/stm8论坛

点评

可以给示波器的截图,等回来后再上图。  详情 回复 发表于 2017-6-16 18:01
 
 

回复

83

帖子

0

TA的资源

一粒金砂(中级)

4
 
strong161 发表于 2017-6-16 17:32
可能是闪的太快肉眼余辉吧!

就是因为转换太快,才看不到闪烁,可以给示波器的截图,等回来后再上图。
此帖出自stm32/stm8论坛
 
个人签名永远好心情
 
 

回复

83

帖子

0

TA的资源

一粒金砂(中级)

5
 
cruelfox 发表于 2017-6-16 16:40
这种空循环编译器激进点可以给优化没了

如果是优化没有了,你可以改变i,j的数值来测试,芯片是机器,执行指令还是忠实的。
此帖出自stm32/stm8论坛
 
个人签名永远好心情
 
 

回复

1万

帖子

25

TA的资源

版主

6
 
偶尔遇到过wait()函数无效的情况,有时是因为设置,没有开浮点,这时用wait_ms()就是正常的;有时是mbed版本太低。
此帖出自stm32/stm8论坛

点评

我已经改成i+j的累加循环了,累加的数是很大的,可以看看源程序。谢谢  详情 回复 发表于 2017-6-17 06:55
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(中级)

7
 
dcexpert 发表于 2017-6-16 18:05
偶尔遇到过wait()函数无效的情况,有时是因为设置,没有开浮点,这时用wait_ms()就是正常的;有时是mbed版 ...

我已经改成i+j的累加循环了,累加的数是很大的,可以看看源程序。谢谢
此帖出自stm32/stm8论坛
 
个人签名永远好心情
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表