uint8_t SettingsMenu::printItem(uint8_t index) { StaticMenu::printItem(index); if(getBlinkIndex() != index) { START_CASE_COUNTER; switch (index) { #ifdef ENABLE_LCD_BACKLIGHT case NEXT_CASE: lcdPrintUnsigned(p_.backlight_, 3); break; #endif #ifdef ENABLE_FAN case NEXT_CASE: printTemp(p_.fanTempOn_); break; #endif #ifdef ENABLE_T_INTERNAL case NEXT_CASE: printTemp(p_.dischargeTempOff_); break; #endif case NEXT_CASE: lcdPrintYesNo(p_.externT_); break; case NEXT_CASE: printTemp(p_.externTCO_); break; case NEXT_CASE: printDeltaT(p_.deltaT_); break; case NEXT_CASE: lcdPrint_mV(p_.deltaV_NiMH_, 5); break; case NEXT_CASE: lcdPrint_mV(p_.deltaV_NiCd_, 5); break; case NEXT_CASE: lcdPrintUnsigned(p_.CDcycles_, 3); break; case NEXT_CASE: lcdPrintPercentage(p_.capCutoff_, 5); break; case NEXT_CASE: printVolt(p_.inputVoltageLow_); break; case NEXT_CASE: lcdPrint_mV(p_.dischargeOffset_LiXX_,6);break; case NEXT_CASE: lcdPrint_mV(p_.balancerError_, 5); break; case NEXT_CASE: printUART(); break; case NEXT_CASE: printUARTSpeed(); break; } } }
virtual uint8_t printItem(uint8_t index) { StaticMenu::printItem(index); if(getBlinkIndex() != index) { if(index == 0) { AnalogInputs::printRealValue(tName_, 7); } else { lcdPrintUnsigned(AnalogInputs::getAvrADCValue(tName_), 7); } } }
virtual uint8_t printItem(uint8_t index) { StaticMenu::printItem(index); if(getBlinkIndex() != index) { if(index == 0) { lcdPrintUnsigned(value_, 5); } else { lcdPrintCurrent(AnalogInputs::getIout(), 7); } } }
void StaticEditMenu::printItem(uint8_t item) { uint8_t index = getSelectedIndexOrSize(item); const char * str = pgm::read(&staticEditData[index].staticString); uint8_t dig = lcdPrint_P(str); if(getBlinkIndex() != item) { dig = LCD_COLUMNS - dig - 1; uint8_t size = pgm::read(&staticEditData[index].print.size); if(size) { lcdPrintSpaces(dig - size); dig = size; } cprintf::cprintf(&staticEditData[index].print, dig); } }
virtual void printItem(uint8_t index) { //TODO: hack, should be improved ... Gyuri: R138 burned. if(!AnalogInputs::isConnected(AnalogInputs::Vout)) { Screen::displayStrings(string_connectBattery); if(cName_ == AnalogInputs::IdischargeSet) { Discharger::powerOff(); } } else { StaticMenu::printItem(index); if(getBlinkIndex() != index) { if(index == 0) { lcdPrintUnsigned(value_, 5); } else { lcdPrintCurrent(AnalogInputs::getIout(), 7); } } } }
void Screen::displayStartInfo() { lcdSetCursor0_0(); ProgramData::currentProgramData.printBatteryString(4); lcdPrintChar(' '); ProgramData::currentProgramData.printVoltageString(); lcdPrintChar(' '); printProgram2chars(Program::programType_); lcdSetCursor0_1(); uint16_t procent = getChargeProcent(); if(procent == 100) { if(getBlinkOff()) lcdPrintSpaces(4); else lcdPrint_P(PSTR("FUL ")); } else { lcdPrintUnsigned(procent, 2); lcdPrint_P(PSTR("% ")); } int bindex = getBlinkIndex(); if(bindex & 1) analogInputs.printRealValue(AnalogInputs::Vout, 5); else lcdPrintSpaces(5); lcdPrintChar(' '); if(ProgramData::currentProgramData.isLiXX()) { //display balance port if(bindex & 2) analogInputs.printRealValue(AnalogInputs::Vbalancer, 5); else lcdPrintSpaces(5); if(bindex & 4) lcdPrintDigit(analogInputs.getConnectedBalancePorts()); else lcdPrintChar(' '); } else { lcdPrintCharge(ProgramData::currentProgramData.battery.C, 6); lcdPrintSpaces(); } }
uint8_t ProgramDataMenu::printItem(uint8_t index) { StaticMenu::printItem(index); if(getBlinkIndex() != index) { switch (index) { case 0: p_.printBatteryString(); break; case 1: p_.printVoltageString(); break; case 2: p_.printChargeString(); break; case 3: p_.printIcString(); break; case 4: p_.printIdString(); break; } } return 0; }