#103: using formatters

This commit is contained in:
free-x 2025-02-25 18:54:00 +01:00
parent d0256fd37c
commit 6a2c623ea0
3 changed files with 10 additions and 4 deletions

View File

@ -493,6 +493,11 @@ double formatKnots(double cv)
return cv * 3600.0 / 1852.0; return cv * 3600.0 / 1852.0;
} }
double formatKmh(double cv)
{
return cv *3600.0 / 1000.0;
}
uint32_t mtr2nm(uint32_t m) uint32_t mtr2nm(uint32_t m)
{ {
return m / 1852; return m / 1852;
@ -523,4 +528,4 @@ public:
}; };
static XWriter xwriter; static XWriter xwriter;
ARDUINOJSON_NAMESPACE::TextFormatter<XWriter> testWriter(xwriter); ARDUINOJSON_NAMESPACE::TextFormatter<XWriter> testWriter(xwriter);
#endif #endif

View File

@ -129,6 +129,7 @@ double formatCourse(double cv);
double formatDegToRad(double deg); double formatDegToRad(double deg);
double formatWind(double cv); double formatWind(double cv);
double formatKnots(double cv); double formatKnots(double cv);
double formatKmh(double cv);
uint32_t mtr2nm(uint32_t m); uint32_t mtr2nm(uint32_t m);
double mtr2nm(double m); double mtr2nm(double m);
@ -251,4 +252,4 @@ class GwBoatData{
}; };
#endif #endif

View File

@ -537,7 +537,7 @@ private:
return; return;
if (!NMEA0183Msg.AddStrField((WindAngle >= 0 && WindAngle <= 180) ? 'R' : 'L')) if (!NMEA0183Msg.AddStrField((WindAngle >= 0 && WindAngle <= 180) ? 'R' : 'L'))
return; return;
if (!NMEA0183Msg.AddDoubleField(WindSpeed * 3600.0/1852.0)) if (!NMEA0183Msg.AddDoubleField(formatKnots(WindSpeed)))
return; return;
if (!NMEA0183Msg.AddStrField("N")) if (!NMEA0183Msg.AddStrField("N"))
return; return;
@ -545,7 +545,7 @@ private:
return; return;
if (!NMEA0183Msg.AddStrField("M")) if (!NMEA0183Msg.AddStrField("M"))
return; return;
if (!NMEA0183Msg.AddDoubleField(WindSpeed * 3600.0/1000.0)) if (!NMEA0183Msg.AddDoubleField(formatKmh(WindSpeed)))
return; return;
if (!NMEA0183Msg.AddStrField("K")) if (!NMEA0183Msg.AddStrField("K"))
return; return;