从十六进制数据GREENTEL转换后纬度

时间:2011-08-22 18:32:35

标签: python gps network-protocols

目前我正在进行基于Django和GREENTEL的GPS跟踪项目 它使用这个协议 http://www.m2msolution.eu/doc/Fejlesztoi_dokumentaciok/GT03/GPRS%20Communication%20Protocol_GT03.pdf

它说如何将纬度/经度转换为十六进制..但我想将纬度十六进制数据转换为正常形式

  

转换方法:A转换纬度(度,分)数据   GPS模块成新形式,仅在几分钟内代表价值;   B将转换后的值乘以30000,然后转换结果   到十六进制数。例如22°32.7658',(22 * 60 + 32.7658)* 30000 =   40582974,然后将其转换为十六进制数0x026B3F3E

如何将十六进制转换为纬度转换?

1 个答案:

答案 0 :(得分:4)

首先获得十六进制,将其转换回基数10并将其除以30000。

得到结果并除以60,整数部分为度,其余为分钟。

在python中:

a = 0x026B3F3E
b = a/30000.0
degrees = b//60
minutes = b%60

print degrees, ' degrees and ', minutes, 'minutes'
>>> 22.0  degrees and  32.7658 minutes