完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 一只耳朵怪 于 2018-6-12 10:08 编辑
环境:28335,DSP/BIOS,使用rts2800_fpu32_fast_supplement.lib 现象:在DSP/BIOS,某一个任务使用atan((float) 1) 总是得到64,其他任务里面使用atan((float) 1)则得到0.785的正确结果。 后来发现,只要在那个任务里面,使用sin、cos、atan、atan2,都不能得到正确的结果,而其他任务就没有这个问题。 单步执行发现程序正确进入atan的汇编程序及返回。这个任务里面有执行FFT的算法,不知道跟这个没有关系。 比较纳闷。。。 |
|
相关推荐
4个回答
|
|
|
|
|
|
额,貌似跟优化的确有关系 我之前一直都是选择不优化的 现在改成有优化就正常了,不过貌似只有改成register的时候,我的程序才正常,改成其他的话,我原本正常的功能就变得不正常了。。。。。 |
|
|
|
future20082010 发表于 2018-6-11 09:44 让我比较费解的是,如果比register高级的优化,我的一些临时变量竟然被优化掉了 例如: #define AA 123 void fun() [ Uint16 i, j; i = AA / 2; for( j = 0; j < i; j++)[] ] 本来设置i的原因就是为了提高速度,结果CCS把i给优化没了。。。。。 不懂。。。。 |
|
|
|
不希望优化的时候用volatile关键字声明 Young Hu |
|
|
|
只有小组成员才能发言,加入小组>>
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
533 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
979 浏览 1 评论
579 浏览 0 评论
普中科技F28335开发板每次上电复位后数码管都会显示,如何熄灭它?
458 浏览 1 评论
993 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-10-20 05:56 , Processed in 0.914272 second(s), Total 85, Slave 68 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号