• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

初学c语言,一阶滤波的程序编译时不能通过求大神了

1eafcf3e9be1382b 2019-01-04 浏览量:698
     angleAx=atan2(axaz)*180/3.14;

     gyroGy=-gy/131.00;

你好!这2条在编译时不能通过是什么问题啊!

出现:MOFULE:   .\Obiects\main.obj  (-----)

         LIMIT:    0800H  BYTES


谢谢!

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 您没有提供准确的编译错误信息

    看看有没有error:这一行信息

    猜测一下,可能是atan2的头文件不存在。有没有#include "math.h"?

    • 发布于 2019-01-04
    • 举报
    • 评论 0
    • 1
    • 0

其他答案 数量:10
  • atan2是一个函数,在C语言里返回的是指方位角,也可以理解为计算复数 x+yi 的辐角,计算时atan2 比 atan 稳定。

    有x,y两个参数。

    atan2(yx)的做法:当 x 的绝对值比 y 的绝对值大时使用 atan(y/x);反之使用 atan(x/y)。这样就保证了数值稳定性。

    ATAN2(a b) 与 ATAN(a/b)稍有不同,ATAN2(ab)的取值范围介于 -pi 到 pi 之间(不包括 -pi),
    而ATAN(a/b)的取值范围介于-pi/2到pi/2之间(不包括±pi/2)。
    若要用度表示反正切值,请将结果再乘以 180/3.14159。
    ​​

    • 发布于2019-01-04
    • 举报
    • 评论 0
    • 1
    • 0

  •  gyroGy=-gy/131.00;

    一般也不这么写

     gyroGy=gy/(-131.00);


    • 发布于2019-01-05
    • 举报
    • 评论 0
    • 1
    • 0

  • 可能是你初始化参数设置错了
    • 发布于2019-01-22
    • 举报
    • 评论 0
    • 0
    • 0

  • 信息不完全,大约是语法错误,或是函数调用不合法
    • 发布于2019-01-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 提供资料太少了,看不太出来,可能是代码问题吧
    • 发布于2019-01-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 有可能是你的接口调用参数有问题,要重新检查一下参数
    • 发布于2019-02-15
    • 举报
    • 评论 0
    • 0
    • 0

  • 要把你的信息全部贴出来,这样大家才好帮你分析
    • 发布于2019-02-16
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

初学c语言,一阶滤波的程序编译时不能通过求大神了