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

你好!我想问一下,anglel 里的数据怎么提出来显示

1eafcf3e9be1382b 2019-01-04 浏览量:1966
void Yijielvbo(float angle_m float gyro_m)//采集后计算的角度和角加速度
{
     angle1 = K1 * angle_m+ (1-K1) * (angle1 + gyro_m * dt);

}

你好!我想问一下,anglel 里的数据怎么提出来显示在12864上,谢谢

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 您这个问题的关键点在于:如何把浮点数转换成字符串

    如果在PC机上编程,会建议您使用sprintf(str,"%f",angle);

    可惜,单片机因为运算能力问题,把%f这个描述符忽略了。

    您只能自己造轮子来实现。


    我给您提供个简单易懂的,但不是最省内存、效率最高的方法

    只精确到小数点后两位。注意字符串str的空间要留够,别溢出了。

    sprint(str,"%d.%d",(int)angle,(int)(angle*100)%100);

    然后调用LCD的显示字符串函数就行了

    • 发布于 2019-01-04
    • 举报
    • 评论 1
    • 2
    • 0
1eafcf3e9be1382b 回复了 Spirit:非常感谢!我新学c语言编程,对里边的函数还不理解,试一试。 回复

其他答案 数量:6
  • 直接调用12864的字符串显示函数就可以了,把angle1放入函数参数中
    • 发布于2019-01-04
    • 举报
    • 评论 0
    • 1
    • 0

  • 12864用的是字库的显示方式,这里要将这个angle1的整数部分先一位位写到12864,然后显示小数点,再显示小数部分
    • 发布于2019-01-08
    • 举报
    • 评论 0
    • 1
    • 0

  • 也要注意数值的显示函数,计算参数显示,自带函数的参数设置
    • 发布于2019-01-22
    • 举报
    • 评论 0
    • 0
    • 0

  • 直接用sprintf函数,把你的数据在函数里面输出显示
    • 发布于2019-02-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 首先要获取对应的变量数值,然后把对应数值直接调用显示接口输出
    • 发布于2019-02-15
    • 举报
    • 评论 0
    • 0
    • 0

  • 一般都是读取到数据用显示接口直接显示数据就可以了
    • 发布于2019-02-16
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

你好!我想问一下,anglel 里的数据怎么提出来显示