OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 9256|回复: 8

软件浮点库的问题

[复制链接]

21

主题

79

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2014-2-11
在线时间
0 小时
发表于 2014-3-5 17:34:59 | 显示全部楼层 |阅读模式
我把STM32F43的硬件浮点关闭了,把编译的FPU选项也关了,因此涉及到
FPU运算的地方都是用的库函数,类似
__aeabi_fmul
__aeabi_fadd
这样的函数,但是当执行这些函数的时候,就会出现HardFault异常,这是怎么
回事,难道这些函数里面用了硬浮点指令。





正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

21

主题

79

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2014-2-11
在线时间
0 小时
 楼主| 发表于 2014-3-5 17:38:25 | 显示全部楼层
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2014-3-5 17:46:04 | 显示全部楼层
呵呵
回复 支持 反对

使用道具 举报

21

主题

79

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2014-2-11
在线时间
0 小时
 楼主| 发表于 2014-3-5 18:02:17 | 显示全部楼层
但是我在用LPC4350的时候,__aeabi_fmul 的代码为(没有使用硬浮点指令):


真是蛋疼,同样用的IAR的编译环境,怎么还不一样呢。是什么猫腻。


回复 支持 反对

使用道具 举报

21

主题

79

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2014-2-11
在线时间
0 小时
 楼主| 发表于 2014-3-5 18:34:22 | 显示全部楼层
软件的浮点四则运算库使用硬件浮点指令,真是有才。
回复 支持 反对

使用道具 举报

21

主题

79

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2014-2-11
在线时间
0 小时
 楼主| 发表于 2014-3-6 09:49:07 | 显示全部楼层
找到了为什么这两个浮点乘运算不同的原因,因为他们链接的是
不同的库分别是:
m7M_tlv.a
m7M_tl.a
如果用的硬浮点指令实现的,就用的是m7M_tlv.a
如果用的是整数运算的指令,就是用的m7M_tl.a
但是我都是关掉了FPU选项的,也都是用的IAR的编译环境,
这些库也是由IAR自己去链接的,怎么链接的库就不一样呢。
回复 支持 反对

使用道具 举报

21

主题

79

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2014-2-11
在线时间
0 小时
 楼主| 发表于 2014-3-6 10:04:28 | 显示全部楼层
找到解决方案
在Project>Options>Linker>Library页的
Additional Libraries里面加上:
$TOOLKIT_DIR$\lib\m7M_tl.a
这样链接器就明确地使用m7M_tl.a库,浮点运算函数
就使用的是软指令了。
回复 支持 反对

使用道具 举报

21

主题

79

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2014-2-11
在线时间
0 小时
 楼主| 发表于 2014-3-6 13:40:25 | 显示全部楼层
相同功能的库也要注意不同的版本,有些是用硬浮点指令,有些用的是软件的浮点库,
在使用库的时候要注意这些问题。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2014-3-6 14:06:12 | 显示全部楼层
回复【7楼】fzhYou:
---------------------------------
谢谢分享
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-8 17:34

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表