Zitat von
KingTobi
@aircode
Du könntest die Berechnung auch direkt in writeInteger packen, dürfte Speicher sparen, wären immerhin 4 Byte.
Hi Tobi, danke für den Tip...
Das mit writeInteger-Beispiel (von oben) hab ich nur hier im Forum als kleines Beispielprogramm angegeben...
Jetzt sieht der Code ja so aus: (adcBat wird korregiert und gleichzeitig aufgeteilt und dann über die Funktion "send_param();" an den Master übergeben.
Code:
uint16_t ubat_aktuell = 0;
void batteriestat (void)
{
if (((ubat_aktuell - 10) > adcBat) || ((ubat_aktuell + 10) < adcBat))
{
param_slave_master[0] = cmd_batteriestatus;
param_slave_master[1] = (adcBat * 1033L / 1000L) / 100;
param_slave_master[2] = adcBat - (param_slave_master[1] * 100);
ubat_aktuell = adcBat;
send_param();
}
}
mfg
Aircode
Lesezeichen