OpenEdv-开源电子网

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

关于原点哥的GPS驱动程序里的一个小问题

[复制链接]

3

主题

6

帖子

0

精华

新手入门

积分
15
金钱
15
注册时间
2018-1-28
在线时间
4 小时
发表于 2018-1-28 23:56:21 | 显示全部楼层 |阅读模式
14金钱
[mw_shl_code=c,true]void NMEA_GPVTG_Analysis(nmea_msg *gpsx,u8 *buf)
{
        u8 *p1,dx;                         
        u8 posx;   
        p1=(u8*)strstr((const char *)buf,"$GPVTG");                                                         
        posx=NMEA_Comma_Pos(p1,7);                                                                //得到地面速率
        if(posx!=0XFF)
        {
                gpsx->speed=NMEA_Str2num(p1+posx,&dx);
                if(dx<3)gpsx->speed*=NMEA_Pow(10,3-dx);                                  //确保扩大1000倍
        }[/mw_shl_code]


这个是原版程序,求教为什么获得速率这行为什么需要扩大1000倍;然后在下面输出段又除于1000,这样做的原因是?


下面的是我摘抄原点哥GPS输出程序,修改成了我需要的。为什么速率输出一直为0;就算用串口助手模拟处速度来也还是为0呢。。
[mw_shl_code=applescript,true]void Gps_Msg_Show(void)
{
        u16 tp;u8 hor;u8 minx;                      
        tp=gpsx.speed;          
        tp/=1000;       
        OLED_ShowNum(0,0,tp,3,56);
        hor=gpsx.utc.hour;
        hor+=8;
        if(hor>24){hor-=24;}
  OLED_ShowNum(84,48,hor,2,16);
        minx=gpsx.utc.min;       
        OLED_ShowNum(108,48,minx,2,16);  
}         [/mw_shl_code]

最佳答案

查看完整内容[请看2#楼]

1,用整数来表示速度,避免使用浮点。 2,仿真可以解决你这种纯软件问题,要学会仿真。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2018-1-28 23:56:22 | 显示全部楼层
1,用整数来表示速度,避免使用浮点。
2,仿真可以解决你这种纯软件问题,要学会仿真。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

6

帖子

0

精华

新手入门

积分
15
金钱
15
注册时间
2018-1-28
在线时间
4 小时
 楼主| 发表于 2018-1-28 23:59:30 | 显示全部楼层
呼叫原点哥。。。明早再来看看,,,
回复

使用道具 举报

3

主题

6

帖子

0

精华

新手入门

积分
15
金钱
15
注册时间
2018-1-28
在线时间
4 小时
 楼主| 发表于 2018-1-29 10:18:46 来自手机 | 显示全部楼层
好的。。。我继续尝试尝试
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-8 14:15

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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