fix trip update
This commit is contained in:
parent
df5133191d
commit
45b8a143f8
|
@ -1 +1 @@
|
|||
Subproject commit c2eba898ac628c6827d17c142a54e601bda5797b
|
||||
Subproject commit dc40db8e74366a779578c9fd3c9edbfc43e79972
|
|
@ -1,6 +1,9 @@
|
|||
#include <Arduino.h>
|
||||
#define SERIAL_BAUD 115200 // [-] Baud rate for built-in Serial (used for the Serial Monitor)
|
||||
|
||||
unsigned long loopmillis;
|
||||
unsigned long last_loopmillis;
|
||||
|
||||
#include <OneButton.h>
|
||||
|
||||
#include <SPI.h>
|
||||
|
@ -22,7 +25,7 @@ uint8_t displaymode=0;
|
|||
#define DISPLAY_STATS3 2
|
||||
#define DISPLAY_MENU 3
|
||||
uint8_t menu_entrypos=0;
|
||||
#define MENU_ENTRIES 7 // max id is MENU_ENTRIES-1
|
||||
#define MENU_ENTRIES 8 // max id is MENU_ENTRIES-1
|
||||
|
||||
uint8_t error = 0;
|
||||
#define IMU_NO_CHANGE 2 //IMU values did not change for too long
|
||||
|
@ -263,7 +266,9 @@ void setup() {
|
|||
|
||||
|
||||
void loop() {
|
||||
unsigned long loopmillis=millis();
|
||||
last_loopmillis=loopmillis;
|
||||
loopmillis=millis();
|
||||
|
||||
|
||||
btn_up.tick();
|
||||
btn_inc.tick();
|
||||
|
@ -271,7 +276,10 @@ void loop() {
|
|||
btn_down.tick();
|
||||
|
||||
|
||||
|
||||
|
||||
if (loopmillis - last_adcupdated > ADC_UPDATEPERIOD) { //update analog readings
|
||||
|
||||
|
||||
int raw_length_a=analogRead(PIN_GAMETRAK_LENGTH_A);
|
||||
int raw_length_b=analogRead(PIN_GAMETRAK_LENGTH_B);
|
||||
|
@ -488,6 +496,7 @@ void loop() {
|
|||
|
||||
|
||||
if (esc.sendPending(loopmillis)) {
|
||||
|
||||
//calculate checksum
|
||||
out_checksum = ((uint8_t) ((uint8_t)esc.getCmdL()) * ((uint8_t)esc.getCmdR())); //simple checksum
|
||||
if (out_checksum == 0 || out_checksum == 255) {
|
||||
|
@ -622,6 +631,11 @@ void updateInputs(unsigned long loopmillis) {
|
|||
gt_steer_limit = constrain(gt_steer_limit, 50, 1000);
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
if (button_inc_click) {
|
||||
esc.resetStatistics();
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
|
||||
|
@ -686,7 +700,7 @@ void display_show_stats() {
|
|||
|
||||
|
||||
//updates only when display active
|
||||
static float maxcurL=0;
|
||||
/* static float maxcurL=0;
|
||||
static float maxcurR=0;
|
||||
maxcurL=max(maxcurL,esc.getFiltered_curL());
|
||||
maxcurR=max(maxcurR,esc.getFiltered_curR());
|
||||
|
@ -694,14 +708,15 @@ void display_show_stats() {
|
|||
static float mincurL=0;
|
||||
static float mincurR=0;
|
||||
mincurL=min(mincurL,esc.getFiltered_curL());
|
||||
mincurR=min(mincurR,esc.getFiltered_curR());
|
||||
mincurR=min(mincurR,esc.getFiltered_curR());*/
|
||||
|
||||
|
||||
display.print(F("Bat=")); display.print(esc.getFeedback_batVoltage()); display.print(F(" Temp=")); display.println(esc.getFeedback_boardTemp());
|
||||
display.print(F("nrf_delay=")); display.print(last_nrfreceive_delay);
|
||||
display.print(F("maxdiff=")); display.println(raw_length_maxdiff);
|
||||
display.print(F("DC max=")); display.print(maxcurL,1); display.print(F("/")); display.println(maxcurR,1); // display.print(F(" min=")); display.print(mincurL,1); display.print(F("/")); display.println(mincurR,1);
|
||||
display.print(F("trip=")); display.print(esc.getTrip(),0); display.print(F(",")); display.print(esc.getCurrentConsumed(),3); display.println(F("Ah"));
|
||||
display.print(F("Bat=")); display.print(esc.getFeedback_batVoltage()); display.print(F(" min=")); display.println(esc.getMinBatVoltage());
|
||||
display.print(F("Temp=")); display.println(esc.getFeedback_boardTemp());
|
||||
|
||||
display.print(F("DC max=")); display.print(esc.getMaxcurL(),1); display.print(F("/")); display.println(esc.getMaxcurR(),1); // display.print(F(" min=")); display.print(mincurL,1); display.print(F("/")); display.println(mincurR,1);
|
||||
display.print(F("trip=")); display.print(esc.getTrip(),0); display.print(F(", ")); display.print(esc.getCurrentConsumed(),3); display.println(F("Ah"));
|
||||
|
||||
|
||||
display.display(); // Show initial text
|
||||
}
|
||||
|
@ -714,7 +729,7 @@ void display_show_stats2() {
|
|||
|
||||
display.print(F("CMD=")); display.print(esc.getCmdL()); display.print(F(", ")); display.println(esc.getCmdR());
|
||||
display.print(F("FBC=")); display.print(esc.getFeedback_cmd1()); display.print(F(", ")); display.println(esc.getFeedback_cmd2());
|
||||
display.print(F("Speed=")); display.print(esc.getFeedback_speedL_meas()); display.print(F(", ")); display.println(esc.getFeedback_speedR_meas());
|
||||
display.print(F("Speed=")); display.print(esc.getFeedback_speedL_meas()); display.print(F(",")); display.print(esc.getFeedback_speedR_meas()); display.print(F("=")); display.print(esc.getMeanSpeed()); display.println(F("ms"));
|
||||
display.print(F("Length=")); display.println(gt_length);
|
||||
display.print(F("H=")); display.print(gt_horizontal); display.print(F(" V=")); display.println(gt_vertical);
|
||||
display.print(F("CMD=")); display.print(esc.getCmdL()); display.print(F(", ")); display.println(esc.getCmdR());
|
||||
|
@ -729,6 +744,12 @@ void display_show_stats3() {
|
|||
display.setTextColor(SSD1306_WHITE);
|
||||
display.setCursor(0, 0);
|
||||
|
||||
display.print(F("looptime=")); display.println(loopmillis-last_loopmillis);
|
||||
display.print(F("feedback=")); display.println(esc.getFeedbackInterval());
|
||||
|
||||
display.print(F("nrf_delay=")); display.println(last_nrfreceive_delay);
|
||||
display.print(F("maxdiff=")); display.println(raw_length_maxdiff);
|
||||
|
||||
|
||||
display.display(); // Show initial text
|
||||
}
|
||||
|
@ -767,6 +788,13 @@ void display_show_menu() {
|
|||
case 6:
|
||||
display.print(F("gt_steer_limit=")); display.println(gt_steer_limit);
|
||||
break;
|
||||
case 7:
|
||||
if ((loopmillis/1000)%2==0) {
|
||||
display.print(F("Inc to reset stats"));
|
||||
}else{
|
||||
display.print(F("t=")); display.println(esc.getTripTime(loopmillis)/1000); display.println(F("s"));
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue