打印

请赐教,STM32是否能进行浮点运算?

[复制链接]
14184|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
沙发
tyw| | 2013-12-16 14:50 | 只看该作者
板凳
chunyang| | 2013-12-16 16:46 | 只看该作者
任何MCU都可以进行浮点运算,只是没有硬件浮点运算器的需要人为编程实现。

使用特权

评论回复
地板
dirtwillfly| | 2013-12-16 19:14 | 只看该作者
能进行浮点运算的,没问题。

使用特权

评论回复
5
Zacking| | 2015-4-15 16:43 | 只看该作者
dirtwillfly 发表于 2013-12-16 19:14
能进行浮点运算的,没问题。

请问是怎样进行浮点运算的呢?用浮点库吗

使用特权

评论回复
6
xuyaqi| | 2015-4-15 18:20 | 只看该作者
Zacking 发表于 2015-4-15 16:43
请问是怎样进行浮点运算的呢?用浮点库吗

要用库里的浮点指令

使用特权

评论回复
7
Zacking| | 2015-4-15 20:42 | 只看该作者
xuyaqi 发表于 2015-4-15 18:20
要用库里的浮点指令

请问哪里有库呢?平常不是可以直接用float,double来运算吗?

使用特权

评论回复
8
charrijon| | 2015-4-15 22:45 | 只看该作者
没浮点处理器的现在一般都提供IQMATH

使用特权

评论回复
9
xuyaqi| | 2015-4-16 06:39 | 只看该作者
Zacking 发表于 2015-4-15 20:42
请问哪里有库呢?平常不是可以直接用float,double来运算吗?

连c51都有数学函数MATH,只要加头文件#include <math.h>就可以进行浮点运算了

使用特权

评论回复
10
Zacking| | 2015-4-16 08:46 | 只看该作者
xuyaqi 发表于 2015-4-16 06:39
连c51都有数学函数MATH,只要加头文件#include 就可以进行浮点运算了

那这跟库有什么关系呢?直接包含数学函数头文件不就行了?请指教

使用特权

评论回复
11
shell.albert| | 2015-4-16 09:25 | 只看该作者
这些浮点运算编译器会将其转换为汇编代码,再转换为机器指令,如果没有FPU浮点运算单元,则将其转换为多条普通指令来达到浮点计算功能,只不过是花费的周期会更长一些。

使用特权

评论回复
12
xuyaqi| | 2015-4-16 14:25 | 只看该作者
Zacking 发表于 2015-4-16 08:46
那这跟库有什么关系呢?直接包含数学函数头文件不就行了?请指教

你加头文件就是加库了

使用特权

评论回复
13
Zacking| | 2015-4-16 16:00 | 只看该作者
xuyaqi 发表于 2015-4-16 14:25
你加头文件就是加库了

https://bbs.21ic.com/icview-202803-1-1.html
但是这个链接里为什么会提到MDK浮点库呢?有专门的浮点库,还是指上面那个头文件呢?

使用特权

评论回复
14
wang863| | 2015-4-16 16:00 | 只看该作者
一般来说,浮点运算都行,只不过不用优化的浮点运算计算速度太慢,有时候满足不了需求。据我所知,STM32里面cortex-M4系列是可以进行浮点运算的,但是配置起来稍微麻烦一些。M3其实也行,但是需要调用ARM的库。
其实你可以看看Q格式运算的。

使用特权

评论回复
15
xuyaqi| | 2015-4-16 17:08 | 只看该作者
Zacking 发表于 2015-4-16 16:00
https://bbs.21ic.com/icview-202803-1-1.html
但是这个链接里为什么会提到MDK浮点库呢?有专门的浮点库, ...

看看这篇** http://blog.csdn.net/sydnash/article/details/6366964

使用特权

评论回复
16
Zacking| | 2015-4-16 20:16 | 只看该作者
xuyaqi 发表于 2015-4-16 17:08
看看这篇** http://blog.csdn.net/sydnash/article/details/6366964

好的,谢谢

使用特权

评论回复
17
Zacking| | 2015-4-16 20:19 | 只看该作者
wang863 发表于 2015-4-16 16:00
一般来说,浮点运算都行,只不过不用优化的浮点运算计算速度太慢,有时候满足不了需求。据我所知,STM32里 ...

谢谢,我问的就是M3的情况,调用ARM库是编译器(比如MDK)自动调用的吗

使用特权

评论回复
18
wang863| | 2015-4-17 09:23 | 只看该作者
Zacking 发表于 2015-4-16 20:19
谢谢,我问的就是M3的情况,调用ARM库是编译器(比如MDK)自动调用的吗

配置上比较麻烦,你可以搜搜STM32或M3做浮点运算的相关的文档,那些.h文件和.c文件在MDK里面都能找到,是ARM公司写的,不过你得加载到你的工程里面,初始的配置比较麻烦,但是配置好了以后运算就跟库函数差不多。

使用特权

评论回复
19
Zacking| | 2015-4-17 09:28 | 只看该作者
wang863 发表于 2015-4-17 09:23
配置上比较麻烦,你可以搜搜STM32或M3做浮点运算的相关的文档,那些.h文件和.c文件在MDK里面都能找到,是 ...

好的,谢谢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

94

帖子

0

粉丝