FW 4.35p.05.13 beginnend schrittweiser Umbau auf verbesserte BATT-Funktionen.
1. Schritt
• variants ... configuration.h
- Hier werden die Board-spezifischen Parameter definiert, hier exemplarisch für
BOARD_T_DECK.
- Alle Parameter beginnen mit
BAT_ :
#define USE_BATT
#ifdef USE_BATT
#define BATTERY_PIN 4
#define BAT_VOLT_PIN BATTERY_PIN
// voltage divider connected here to measure battery voltage
#define BAT_ADC_PULLUP_RES 100000.0 //intern verbaut
#define BAT_ADC_PULLDOWN_RES 100000.0 //intern verbaut
#define BAT_MULTIPLIER (BAT_ADC_PULLUP_RES+BAT_ADC_PULLDOWN_RES)/BAT_ADC_PULLDOWN_RES
#define BAT_MAX_VOLTAGE 4.125 //für Volt => Proz Umrechnung, definiert durch Akku
#define BAT_MIN_VOLTAGE 3.3 //für Volt => Proz Umrechnung, definiert durch LDO
#define BAT_VOLT_COMPENSATION 0 //offset
#define BAT_VOLT_CORR 1.08 //factor
#define BAT_ATTEN ADC_11db
#define BAT_WIDTH 12
//#define S3_VREF (1.1) // 1.0 - 1.2 V
//hier ev. noch spezielle Board spezifische Parameter, GPIO, ...
//...
#endif
• main: setup()
- die Idee ist, die Board-Abfrage in der
batt_functions.cpp zu machen und in setup() unangetastet zu lassen:
• main: loop()
- durch den Einbau einer Glättungsfunktion muss die Messung periodisch erfolgen, hier z.B. im 1s-Raster:
// === Periodische Messungen (1s Raster)
if (lastSec != timeinfo.tm_sec) {
lastSec = timeinfo.tm_sec;
#ifdef USE_BATT
read_batt();
#endif
} // 1s Periode
- Die Ausgabe der BAT-Spannung erfolgt wie bisher im definierten 30"-Raster.
FW 4.35p.05.13 beginnend schrittweiser Umbau auf verbesserte BATT-Funktionen.
1. Schritt
• variants ... configuration.h
BOARD_T_DECK.BAT_:• main: setup()
batt_functions.cppzu machen und insetup()unangetastet zu lassen:init_batt();• main: loop()