[求助] Cortex M3 是否支持double数据类型?

arrow_02   2018-1-26 23:19 楼主
      请问Cortex M3 是否支持double数据类型?使用Keil4定义一个double型变量,可以通过编译,但是无法将该变量加入到"watch"窗口进行观察,生成的汇编也没有对该变量的操作。这是否跟编译器有关呢?

回复评论 (9)

把变量定义成全局 在前边volatile 或者取消编译器的优化试试
点赞  2018-1-27 10:05
肯定支持啊,你定义成全局变量之后试一下
点赞  2018-1-27 10:07
支不支持不在于是不是M3,
而是要按编译器。
点赞  2018-1-27 11:30
多谢各位指点!
点赞  2018-1-27 23:12
支持啊,没问题的,浮点也是没问题的
点赞  2018-2-8 09:52
M3是采用标准C,是支持double的,这个毫无疑问!
提供产品级开发板,开源摄像头、人机界面minigui开发板等开源硬件,让研发更快速 QQ:805666376 13590364523(微信同号)
点赞  2018-2-10 22:27
这和cortex-m3没关系,和编译器有关系。如果你问的是硬浮点的话那毫无疑问不支持,你要用m7才可以。
最轻量的实用RTOS https://github.com/EDI-Systems/M5P1_MuProkaron 本人QQ 644580703
点赞  2018-3-20 00:36
板凳正解。
其实还有一个办法,是我无意发现的,不知道别的人有没说过。
我就算不定义成 全局 或者 静态我都有办法。

1.在一个使用到这个变量的地方打个断点。
2.执行到断点,鼠标停留在这个变量上,一般能看到它的地址,或者直接右键,go to memory

总之,操作思路就是,在这个变量的生存期还在之前,只要你在debug中对它干了什么,你可以直接
在 MEMEORY1(2,3,4)中定位到那个位置,查看它的内容。

写到这里我才想起来,这其实是我上一家公司我小boss教的,我在他那里看到他各种memory操作
溜得不行,后来才慢慢理解这个逻辑。
强者为尊,弱者,死无葬身之地
点赞  2018-3-30 01:35
多谢各位,定义成全局变量就解决了。
点赞  2018-4-1 00:24
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复