2014-04-15 119 views
-1

我的一个DIY项目中有将代码转换为nmea格式的代码,但我无法这么做,我也不知道要在代码之前添加哪些标题,所以任何机构帮我出这个如何在atmega32上实现此代码

private string DD2NMEA(double lat, double lng) 
{ 
string nmea = ""; 
double lata = Math.Abs(lat); 
double latd = Math.Truncate(lata); 
double latm = (lata - latd) * 60; 
string lath = lat > 0 ? "N" : "S"; 
double lnga = Math.Abs(lng); 
double lngd = Math.Truncate(lnga); 
double lngm = (lnga - lngd) * 60; 
string lngh = lng > 0 ? "E" : "W"; 

nmea += latd.ToString("00") + latm.ToString("00.00000") + "," + lath + ","; 
nmea += lngd.ToString("000") + lngm.ToString("00.00000") + "," + lngh; 

return nmea; 
} 
+0

这看起来像Java ... –

回答

0

这看起来像是为标准Ardunio math module,可通过做

#include <math.h> 

你将不得不去适应的语法,如Math.Abs()变成只是fabs()

如果你不是在Arduino上做这个,而是直接使用AVR,它完全一样,因为Ardunio只是在这里继承了C头和函数。