Changed the naming of some LCD functions, so the names match better what the function does. Also moved around some prototypes for general cleanup.
This commit is contained in:
parent
94ea26ff46
commit
6a9bee27cc
@ -19,6 +19,4 @@ FORCE_INLINE void Config_StoreSettings() {}
|
||||
FORCE_INLINE void Config_RetrieveSettings() { Config_ResetDefault(); Config_PrintSettings(); }
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#endif//CONFIG_STORE_H
|
||||
|
@ -180,6 +180,7 @@ void setPwmFrequency(uint8_t pin, int val);
|
||||
extern float homing_feedrate[];
|
||||
extern bool axis_relative_modes[];
|
||||
extern int feedmultiply;
|
||||
extern bool feedmultiplychanged;
|
||||
extern int extrudemultiply; // Sets extrude multiply factor (in percent)
|
||||
extern float current_position[NUM_AXIS] ;
|
||||
extern float add_homeing[3];
|
||||
|
@ -147,6 +147,7 @@ CardReader card;
|
||||
float homing_feedrate[] = HOMING_FEEDRATE;
|
||||
bool axis_relative_modes[] = AXIS_RELATIVE_MODES;
|
||||
int feedmultiply=100; //100->1 200->2
|
||||
bool feedmultiplychanged;
|
||||
int saved_feedmultiply;
|
||||
int extrudemultiply=100; //100->1 200->2
|
||||
float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0 };
|
||||
@ -360,7 +361,7 @@ void setup()
|
||||
st_init(); // Initialize stepper, this enables interrupts!
|
||||
setup_photpin();
|
||||
|
||||
LCD_INIT;
|
||||
lcd_init();
|
||||
}
|
||||
|
||||
|
||||
@ -401,7 +402,7 @@ void loop()
|
||||
manage_heater();
|
||||
manage_inactivity();
|
||||
checkHitEndstops();
|
||||
LCD_STATUS;
|
||||
lcd_update();
|
||||
}
|
||||
|
||||
void get_command()
|
||||
@ -534,7 +535,7 @@ void get_command()
|
||||
sprintf_P(time, PSTR("%i min, %i sec"),min,sec);
|
||||
SERIAL_ECHO_START;
|
||||
SERIAL_ECHOLN(time);
|
||||
LCD_MESSAGE(time);
|
||||
lcd_setstatus(time);
|
||||
card.printingHasFinished();
|
||||
card.checkautostart(true);
|
||||
|
||||
@ -683,7 +684,7 @@ void process_commands()
|
||||
while(millis() < codenum ){
|
||||
manage_heater();
|
||||
manage_inactivity();
|
||||
LCD_STATUS;
|
||||
lcd_update();
|
||||
}
|
||||
break;
|
||||
#ifdef FWRETRACT
|
||||
@ -847,16 +848,16 @@ void process_commands()
|
||||
previous_millis_cmd = millis();
|
||||
if (codenum > 0){
|
||||
codenum += millis(); // keep track of when we started waiting
|
||||
while(millis() < codenum && !CLICKED){
|
||||
while(millis() < codenum && !LCD_CLICKED){
|
||||
manage_heater();
|
||||
manage_inactivity();
|
||||
LCD_STATUS;
|
||||
lcd_update();
|
||||
}
|
||||
}else{
|
||||
while(!CLICKED){
|
||||
while(!LCD_CLICKED){
|
||||
manage_heater();
|
||||
manage_inactivity();
|
||||
LCD_STATUS;
|
||||
lcd_update();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -947,7 +948,7 @@ void process_commands()
|
||||
sprintf_P(time, PSTR("%i min, %i sec"), min, sec);
|
||||
SERIAL_ECHO_START;
|
||||
SERIAL_ECHOLN(time);
|
||||
LCD_MESSAGE(time);
|
||||
lcd_setstatus(time);
|
||||
autotempShutdown();
|
||||
}
|
||||
break;
|
||||
@ -1075,7 +1076,7 @@ void process_commands()
|
||||
}
|
||||
manage_heater();
|
||||
manage_inactivity();
|
||||
LCD_STATUS;
|
||||
lcd_update();
|
||||
#ifdef TEMP_RESIDENCY_TIME
|
||||
/* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time
|
||||
or when current temp falls outside the hysteresis after target temp was reached */
|
||||
@ -1113,7 +1114,7 @@ void process_commands()
|
||||
}
|
||||
manage_heater();
|
||||
manage_inactivity();
|
||||
LCD_STATUS;
|
||||
lcd_update();
|
||||
}
|
||||
LCD_MESSAGEPGM(MSG_BED_DONE);
|
||||
previous_millis_cmd = millis();
|
||||
@ -1220,7 +1221,7 @@ void process_commands()
|
||||
SERIAL_PROTOCOLPGM(MSG_M115_REPORT);
|
||||
break;
|
||||
case 117: // M117 display message
|
||||
LCD_MESSAGE(cmdbuffer[bufindr]+5);
|
||||
lcd_setstatus(cmdbuffer[bufindr]+5);
|
||||
break;
|
||||
case 114: // M114
|
||||
SERIAL_PROTOCOLPGM("X:");
|
||||
@ -1371,6 +1372,7 @@ void process_commands()
|
||||
if(code_seen('S'))
|
||||
{
|
||||
feedmultiply = code_value() ;
|
||||
feedmultiplychanged = true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -279,7 +279,7 @@ void CardReader::openFile(char* name,bool read)
|
||||
sdpos = 0;
|
||||
|
||||
SERIAL_PROTOCOLLNPGM(MSG_SD_FILE_SELECTED);
|
||||
LCD_MESSAGE(fname);
|
||||
lcd_setstatus(fname);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -301,7 +301,7 @@ void CardReader::openFile(char* name,bool read)
|
||||
saving = true;
|
||||
SERIAL_PROTOCOLPGM(MSG_SD_WRITE_TO_FILE);
|
||||
SERIAL_PROTOCOLLN(name);
|
||||
LCD_MESSAGE(fname);
|
||||
lcd_setstatus(fname);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -69,6 +69,17 @@ private:
|
||||
extern CardReader card;
|
||||
#define IS_SD_PRINTING (card.sdprinting)
|
||||
|
||||
#if (SDCARDDETECT > -1)
|
||||
# ifdef SDCARDDETECTINVERTED
|
||||
# define IS_SD_INSERTED (READ(SDCARDDETECT)!=0)
|
||||
# else
|
||||
# define IS_SD_INSERTED (READ(SDCARDDETECT)==0)
|
||||
# endif //SDCARDTETECTINVERTED
|
||||
#else
|
||||
//If we don't have a card detect line, aways asume the card is inserted
|
||||
# define IS_SD_INSERTED true
|
||||
#endif
|
||||
|
||||
#else
|
||||
|
||||
#define IS_SD_PRINTING (false)
|
||||
|
@ -506,7 +506,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa
|
||||
{
|
||||
manage_heater();
|
||||
manage_inactivity();
|
||||
LCD_STATUS;
|
||||
lcd_update();
|
||||
}
|
||||
|
||||
// The target position of the tool in absolute steps
|
||||
|
@ -905,7 +905,7 @@ void st_synchronize()
|
||||
while( blocks_queued()) {
|
||||
manage_heater();
|
||||
manage_inactivity();
|
||||
LCD_STATUS;
|
||||
lcd_update();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -190,6 +190,9 @@ void PID_autotune(float temp, int extruder, int ncycles)
|
||||
for(;;) {
|
||||
|
||||
if(temp_meas_ready == true) { // temp sample ready
|
||||
//Reset the watchdog after we know we have a temperature measurement.
|
||||
watchdog_reset();
|
||||
|
||||
CRITICAL_SECTION_START;
|
||||
temp_meas_ready = false;
|
||||
CRITICAL_SECTION_END;
|
||||
@ -291,7 +294,7 @@ void PID_autotune(float temp, int extruder, int ncycles)
|
||||
SERIAL_PROTOCOLLNPGM("PID Autotune finished ! Place the Kp, Ki and Kd constants in the configuration.h");
|
||||
return;
|
||||
}
|
||||
LCD_STATUS;
|
||||
lcd_update();
|
||||
}
|
||||
}
|
||||
|
||||
@ -957,9 +960,7 @@ ISR(TIMER0_COMPB_vect)
|
||||
ADMUX = ((1 << REFS0) | (TEMP_0_PIN & 0x07));
|
||||
ADCSRA |= 1<<ADSC; // Start conversion
|
||||
#endif
|
||||
#ifdef ULTIPANEL
|
||||
buttons_check();
|
||||
#endif
|
||||
lcd_buttons_update();
|
||||
temp_state = 1;
|
||||
break;
|
||||
case 1: // Measure TEMP_0
|
||||
@ -981,9 +982,7 @@ ISR(TIMER0_COMPB_vect)
|
||||
ADMUX = ((1 << REFS0) | (TEMP_BED_PIN & 0x07));
|
||||
ADCSRA |= 1<<ADSC; // Start conversion
|
||||
#endif
|
||||
#ifdef ULTIPANEL
|
||||
buttons_check();
|
||||
#endif
|
||||
lcd_buttons_update();
|
||||
temp_state = 3;
|
||||
break;
|
||||
case 3: // Measure TEMP_BED
|
||||
@ -1002,9 +1001,7 @@ ISR(TIMER0_COMPB_vect)
|
||||
ADMUX = ((1 << REFS0) | (TEMP_1_PIN & 0x07));
|
||||
ADCSRA |= 1<<ADSC; // Start conversion
|
||||
#endif
|
||||
#ifdef ULTIPANEL
|
||||
buttons_check();
|
||||
#endif
|
||||
lcd_buttons_update();
|
||||
temp_state = 5;
|
||||
break;
|
||||
case 5: // Measure TEMP_1
|
||||
@ -1023,9 +1020,7 @@ ISR(TIMER0_COMPB_vect)
|
||||
ADMUX = ((1 << REFS0) | (TEMP_2_PIN & 0x07));
|
||||
ADCSRA |= 1<<ADSC; // Start conversion
|
||||
#endif
|
||||
#ifdef ULTIPANEL
|
||||
buttons_check();
|
||||
#endif
|
||||
lcd_buttons_update();
|
||||
temp_state = 7;
|
||||
break;
|
||||
case 7: // Measure TEMP_2
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -4,7 +4,6 @@
|
||||
#include "Marlin.h"
|
||||
|
||||
#ifdef ULTRA_LCD
|
||||
#include "language.h"
|
||||
|
||||
#if LANGUAGE_CHOICE == 6
|
||||
#include "LiquidCrystalRus.h"
|
||||
@ -14,27 +13,37 @@
|
||||
#define LCD_CLASS LiquidCrystal
|
||||
#endif
|
||||
|
||||
void lcd_status();
|
||||
void lcd_update();
|
||||
void lcd_init();
|
||||
void lcd_status(const char* message);
|
||||
void beep();
|
||||
void buttons_init();
|
||||
void buttons_check();
|
||||
void lcd_setstatus(const char* message);
|
||||
void lcd_setstatuspgm(const char* message);
|
||||
void lcd_setalertstatuspgm(const char* message);
|
||||
void lcd_buttons_update();
|
||||
void lcd_buttons_init();
|
||||
|
||||
#define LCD_MESSAGEPGM(x) lcd_setstatuspgm(PSTR(x))
|
||||
#define LCD_ALERTMESSAGEPGM(x) lcd_setalertstatuspgm(PSTR(x))
|
||||
|
||||
#define LCD_UPDATE_INTERVAL 100
|
||||
#define STATUSTIMEOUT 15000
|
||||
#define LCD_TIMEOUT_TO_STATUS 15000
|
||||
|
||||
extern LCD_CLASS lcd;
|
||||
extern volatile uint8_t buttons; //the last checked buttons in a bit array.
|
||||
|
||||
extern volatile char buttons; //the last checked buttons in a bit array.
|
||||
extern int plaPreheatHotendTemp;
|
||||
extern int plaPreheatHPBTemp;
|
||||
extern int plaPreheatFanSpeed;
|
||||
|
||||
extern int absPreheatHotendTemp;
|
||||
extern int absPreheatHPBTemp;
|
||||
extern int absPreheatFanSpeed;
|
||||
|
||||
#ifdef NEWPANEL
|
||||
#define EN_C (1<<BLEN_C)
|
||||
#define EN_B (1<<BLEN_B)
|
||||
#define EN_A (1<<BLEN_A)
|
||||
|
||||
#define CLICKED (buttons&EN_C)
|
||||
#define BLOCK {blocking=millis()+blocktime;}
|
||||
#define LCD_CLICKED (buttons&EN_C)
|
||||
#define LCD_BLOCK {blocking=millis()+blocktime;}
|
||||
#else
|
||||
//atomatic, do not change
|
||||
#define B_LE (1<<BL_LE)
|
||||
@ -46,28 +55,18 @@ extern volatile char buttons; //the last checked buttons in a bit array.
|
||||
#define EN_B (1<<BLEN_B)
|
||||
#define EN_A (1<<BLEN_A)
|
||||
|
||||
#define CLICKED ((buttons&B_MI)||(buttons&B_ST))
|
||||
#define BLOCK {blocking[BL_MI]=millis()+blocktime;blocking[BL_ST]=millis()+blocktime;}
|
||||
#define LCD_CLICKED ((buttons&B_MI)||(buttons&B_ST))
|
||||
#define LCD_BLOCK {blocking[BL_MI]=millis()+blocktime;blocking[BL_ST]=millis()+blocktime;}
|
||||
#endif
|
||||
|
||||
#if (SDCARDDETECT > -1)
|
||||
#ifdef SDCARDDETECTINVERTED
|
||||
#define CARDINSERTED (READ(SDCARDDETECT)!=0)
|
||||
#else
|
||||
#define CARDINSERTED (READ(SDCARDDETECT)==0)
|
||||
#endif //SDCARDTETECTINVERTED
|
||||
#else
|
||||
//If we don't have a card detect line, aways asume the card is inserted
|
||||
#define CARDINSERTED true
|
||||
#endif
|
||||
|
||||
|
||||
// blocking time for recognizing a new keypress of one key, ms
|
||||
#define blocktime 500
|
||||
#define lcdslow 5
|
||||
|
||||
enum MainStatus{Main_Status, Main_Menu, Main_Prepare,Sub_PrepareMove, Main_Control, Main_SD,Sub_TempControl,Sub_MotionControl,Sub_RetractControl, Sub_PreheatPLASettings, Sub_PreheatABSSettings};
|
||||
|
||||
extern LCD_CLASS lcd;
|
||||
|
||||
class MainMenu{
|
||||
public:
|
||||
MainMenu();
|
||||
@ -146,50 +145,29 @@ extern volatile char buttons; //the last checked buttons in a bit array.
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
//conversion routines, could need some overworking
|
||||
char *ftostr51(const float &x);
|
||||
char *ftostr52(const float &x);
|
||||
char *ftostr31(const float &x);
|
||||
char *ftostr3(const float &x);
|
||||
|
||||
|
||||
#define LCD_INIT lcd_init();
|
||||
#define LCD_MESSAGE(x) lcd_status(x);
|
||||
#define LCD_MESSAGEPGM(x) lcd_statuspgm(PSTR(x));
|
||||
#define LCD_ALERTMESSAGEPGM(x) lcd_alertstatuspgm(PSTR(x));
|
||||
#define LCD_STATUS lcd_status()
|
||||
#else //no lcd
|
||||
#define LCD_INIT
|
||||
#define LCD_STATUS
|
||||
#define LCD_MESSAGE(x)
|
||||
FORCE_INLINE void lcd_update() {}
|
||||
FORCE_INLINE void lcd_init() {}
|
||||
FORCE_INLINE void lcd_setstatus(const char* message) {}
|
||||
FORCE_INLINE void lcd_buttons_init() {}
|
||||
FORCE_INLINE void lcd_buttons_update() {}
|
||||
|
||||
#define LCD_MESSAGEPGM(x)
|
||||
#define LCD_ALERTMESSAGEPGM(x)
|
||||
FORCE_INLINE void lcd_status() {};
|
||||
|
||||
#define CLICKED false
|
||||
#define BLOCK ;
|
||||
#endif
|
||||
|
||||
void lcd_statuspgm(const char* message);
|
||||
void lcd_alertstatuspgm(const char* message);
|
||||
|
||||
char *ftostr3(const float &x);
|
||||
char *itostr2(const uint8_t &x);
|
||||
char *ftostr31(const float &x);
|
||||
char *ftostr32(const float &x);
|
||||
char *itostr31(const int &xx);
|
||||
char *itostr3(const int &xx);
|
||||
char *itostr4(const int &xx);
|
||||
|
||||
char *ftostr3(const float &x);
|
||||
char *ftostr31(const float &x);
|
||||
char *ftostr32(const float &x);
|
||||
char *ftostr51(const float &x);
|
||||
|
||||
//TODO: These do not belong here.
|
||||
extern int plaPreheatHotendTemp;
|
||||
extern int plaPreheatHPBTemp;
|
||||
extern int plaPreheatFanSpeed;
|
||||
|
||||
extern int absPreheatHotendTemp;
|
||||
extern int absPreheatHPBTemp;
|
||||
extern int absPreheatFanSpeed;
|
||||
char *ftostr52(const float &x);
|
||||
|
||||
#endif //ULTRALCD
|
||||
|
Loading…
Reference in New Issue
Block a user