Alguien sabe modificar el firmware Marlin December 30, 2014 11:51AM |
Registered: 9 years ago Posts: 792 |
Re: Alguien sabe modificar el firmware Marlin January 01, 2015 08:58PM |
Registered: 9 years ago Posts: 792 |
Re: Alguien sabe modificar el firmware Marlin January 01, 2015 10:39PM |
Registered: 10 years ago Posts: 654 |
Re: Alguien sabe modificar el firmware Marlin January 01, 2015 11:50PM |
Registered: 9 years ago Posts: 792 |
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 12:09AM |
Registered: 9 years ago Posts: 792 |
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 12:25AM |
Registered: 10 years ago Posts: 272 |
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 12:38AM |
Registered: 9 years ago Posts: 792 |
Quote
Lechonquinto
https://github.com/ErikZalm/Marlin/issues
Primero busca en la lista si ya formularon la pregunta o pedido de ( característica / función ) con anterioridad, si no encontras nada, plantealo en ese lugar y te van a saber guiar, creo yo son los mas indicados.
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 12:42AM |
Registered: 10 years ago Posts: 272 |
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 12:48AM |
Registered: 10 years ago Posts: 272 |
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 12:56AM |
Registered: 9 years ago Posts: 792 |
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 09:23AM |
Registered: 9 years ago Posts: 792 |
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 04:22PM |
Registered: 9 years ago Posts: 792 |
// Humidity & Temperature DTHxx Sensor By: Tatubias #include "PATH_COMPLETO_DE_LA_LIBRERIA\DHT.h" #define DHTPIN 40 // Pata del arduino a utilizar #define DHTTYPE DHT11 // Sensor DHT 11 (posibles DHT11,DHT22,DHT21,DHT21 (AM2301)) DHT dht(DHTPIN, DHTTYPE); int h; int t; h = dht.readHumidity(); t = dht.readTemperature(); // Grafica la informacion en la pantalla u8g.setFont(u8g_font_5x8); u8g.setPrintPos(73,61); u8g.print("T:"); u8g.print(t); u8g.setFont(u8g_font_5x8); u8g.setPrintPos(100,61); u8g.print("H:"); u8g.print(h);
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 04:59PM |
Registered: 10 years ago Posts: 272 |
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 05:12PM |
Registered: 10 years ago Posts: 272 |
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 06:17PM |
Registered: 9 years ago Posts: 792 |
Quote
Lechonquinto
Que grande el tatu!!!
Ahora falta conectarlo a una salida extra para controlar dos resistencias de calentamiento y tenes cámara calentada de ambiente controlado =O
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 06:20PM |
Registered: 9 years ago Posts: 792 |
Re: Alguien sabe modificar el firmware Marlin January 02, 2015 07:49PM |
Registered: 10 years ago Posts: 654 |
Re: Alguien sabe modificar el firmware Marlin January 03, 2015 05:51AM |
Registered: 9 years ago Posts: 721 |
Re: Alguien sabe modificar el firmware Marlin January 03, 2015 11:18AM |
Registered: 9 years ago Posts: 792 |
Re: Alguien sabe modificar el firmware Marlin January 03, 2015 04:49PM |
Registered: 9 years ago Posts: 792 |
/** *dogm_lcd_implementation.h * *Graphics LCD implementation for 128x64 pixel LCDs by STB for ErikZalm/Marlin *Demonstrator: [www.reprap.org] *License: [opensource.org] * *With the use of: *u8glib by Oliver Kraus *[code.google.com] *License: [opensource.org] */ #ifndef ULTRA_LCD_IMPLEMENTATION_DOGM_H #define ULTRA_LCD_IMPLEMENTATION_DOGM_H /** * Implementation of the LCD display routines for a DOGM128 graphic display. These are common LCD 128x64 pixel graphic displays. **/ //Inclusiones y deficinciones para El sensor de humerdad y temperatura DHTxx #include "DHT.h" #define DHTPIN 4 #define DHTTYPE DHT11 // DHT 11 #ifdef ULTIPANEL #define BLEN_A 0 #define BLEN_B 1 #define BLEN_C 2 #define EN_A (1< #include "DOGMbitmaps.h" #include "dogm_font_data_marlin.h" #include "ultralcd.h" #include "ultralcd_st7920_u8glib_rrd.h" /* Russian language not supported yet, needs custom font #if LANGUAGE_CHOICE == ru #include "LiquidCrystalRus.h" #define LCD_CLASS LiquidCrystalRus #else #include #define LCD_CLASS LiquidCrystal #endif */ // DOGM parameters (size in pixels) #define DOG_CHAR_WIDTH 6 #define DOG_CHAR_HEIGHT 12 #define DOG_CHAR_WIDTH_LARGE 9 #define DOG_CHAR_HEIGHT_LARGE 18 #define START_ROW 0 /* Custom characters defined in font font_6x10_marlin.c */ #define LCD_STR_DEGREE "\xB0" #define LCD_STR_REFRESH "\xF8" #define LCD_STR_FOLDER "\xF9" #define LCD_STR_ARROW_RIGHT "\xFA" #define LCD_STR_UPLEVEL "\xFB" #define LCD_STR_CLOCK "\xFC" #define LCD_STR_FEEDRATE "\xFD" #define LCD_STR_BEDTEMP "\xFE" #define LCD_STR_THERMOMETER "\xFF" #define FONT_STATUSMENU u8g_font_6x9 int lcd_contrast; // LCD selection #ifdef U8GLIB_ST7920 //U8GLIB_ST7920_128X64_RRD u8g(0,0,0); U8GLIB_ST7920_128X64_RRD u8g(0); #elif defined(MAKRPANEL) // The MaKrPanel display, ST7565 controller as well U8GLIB_NHD_C12864 u8g(DOGLCD_CS, DOGLCD_A0); #else // for regular DOGM128 display with HW-SPI U8GLIB_DOGM128 u8g(DOGLCD_CS, DOGLCD_A0); // HW-SPI Com: CS, A0 #endif DHT dht(DHTPIN, DHTTYPE); // SE INICIALIZA FUNCION DEL SENSOR DE HUMEDAD Y TEMPERATURA static void lcd_implementation_init() { #ifdef LCD_PIN_BL pinMode(LCD_PIN_BL, OUTPUT); // Enable LCD backlight digitalWrite(LCD_PIN_BL, HIGH); #endif u8g.setContrast(lcd_contrast); // Uncomment this if you have the first generation (V1.10) of STBs board // pinMode(17, OUTPUT); // Enable LCD backlight // digitalWrite(17, HIGH); u8g.firstPage(); do { u8g.setFont(u8g_font_6x10_marlin); u8g.setColorIndex(1); u8g.drawBox (0, 0, u8g.getWidth(), u8g.getHeight()); u8g.setColorIndex(1); } while( u8g.nextPage() ); #ifdef LCD_SCREEN_ROT_90 u8g.setRot90(); // Rotate screen by 90° #endif #ifdef LCD_SCREEN_ROT_180 u8g.setRot180(); // Rotate screen by 180° #endif #ifdef LCD_SCREEN_ROT_270 u8g.setRot270(); // Rotate screen by 270° #endif u8g.firstPage(); do { // RepRap init bmp u8g.drawBitmapP(0,0,START_BMPBYTEWIDTH,START_BMPHEIGHT,start_bmp); // Welcome message u8g.setFont(u8g_font_6x10_marlin); u8g.drawStr(65,10,"Core(X,Y)"); u8g.drawStr(65,20,"System"); u8g.drawStr(65,45,"By:"); u8g.drawStr(65,55,"TATUBIAS"); } while( u8g.nextPage() ); dht.begin(); //Se incializa el dht sensor de humerdad } static void lcd_implementation_clear() { // NO NEED TO IMPLEMENT LIKE SO. Picture loop automatically clears the display. // // Check this article: [arduino.cc] // // u8g.firstPage(); // do { // u8g.setColorIndex(0); // u8g.drawBox (0, 0, u8g.getWidth(), u8g.getHeight()); // u8g.setColorIndex(1); // } while( u8g.nextPage() ); } /* Arduino < 1.0.0 is missing a function to print PROGMEM strings, so we need to implement our own */ static void lcd_printPGM(const char* str) { char c; while((c = pgm_read_byte(str++)) != '\0') { u8g.print(c); } } static void _draw_heater_status(int x, int heater) { bool isBed = heater < 0; int y = 17 + (isBed ? 1 : 0); u8g.setFont(FONT_STATUSMENU); u8g.setPrintPos(x,6); u8g.print(itostr3(int((heater >= 0 ? degTargetHotend(heater) : degTargetBed()) + 0.5))); lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); u8g.setPrintPos(x,27); u8g.print(itostr3(int(heater >= 0 ? degHotend(heater) : degBed()) + 0.5)); lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); if (!isHeatingHotend(0)) { u8g.drawBox(x+7,y,2,2); } else { u8g.setColorIndex(0); // white on black u8g.drawBox(x+7,y,2,2); u8g.setColorIndex(1); // black on white } } static void lcd_implementation_status_screen() { static unsigned char fan_rot = 0; u8g.setColorIndex(1); // black on white // Symbols menu graphics, animated fan u8g.drawBitmapP(9,1,STATUS_SCREENBYTEWIDTH,STATUS_SCREENHEIGHT, (blink % 2) && fanSpeed ? status_screen0_bmp : status_screen1_bmp); #ifdef SDSUPPORT //SD Card Symbol u8g.drawBox(42,42,8,7); u8g.drawBox(50,44,2,5); u8g.drawFrame(42,49,10,4); u8g.drawPixel(50,43); // Progress bar u8g.drawFrame(54,49,73,4); // SD Card Progress bar and clock u8g.setFont(FONT_STATUSMENU); if (IS_SD_PRINTING) { // Progress bar u8g.drawBox(55,50, (unsigned int)( (71 * card.percentDone())/100) ,2); } else { // do nothing } u8g.setPrintPos(80,47); if(starttime != 0) { uint16_t time = millis()/60000 - starttime/60000; u8g.print(itostr2(time/60)); u8g.print(':'); u8g.print(itostr2(time%60)); }else{ lcd_printPGM(PSTR("--:--")); } #endif // Extruders _draw_heater_status(6, 0); #if EXTRUDERS > 1 _draw_heater_status(31, 1); #if EXTRUDERS > 2 _draw_heater_status(55, 2); #endif #endif // Heatbed _draw_heater_status(55, -1); // Fan u8g.setFont(FONT_STATUSMENU); u8g.setPrintPos(104,27); #if defined(FAN_PIN) && FAN_PIN > -1 u8g.print(itostr3(int((fanSpeed*100)/256 + 1))); u8g.print("%"); #else u8g.print("---"); #endif // Humidity & Temperature DTHxx Sensor By: Tatubias int dht_humi = dht.readHumidity(); int dht_temp = dht.readTemperature(); u8g.setFont(u8g_font_5x8); u8g.setPrintPos(80,12); u8g.print("T:"); u8g.print(dht_temp); lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); u8g.setFont(u8g_font_5x8); u8g.setPrintPos(80,22); u8g.print("H:"); u8g.print(dht_humi); u8g.print("%"); // X, Y, Z-Coordinates u8g.setFont(FONT_STATUSMENU); u8g.drawBox(0,29,128,10); u8g.setColorIndex(0); // white on black u8g.setPrintPos(2,37); u8g.print("X"); u8g.drawPixel(8,33); u8g.drawPixel(8,35); u8g.setPrintPos(10,37); u8g.print(ftostr31ns(current_position[X_AXIS])); u8g.setPrintPos(43,37); lcd_printPGM(PSTR("Y")); u8g.drawPixel(49,33); u8g.drawPixel(49,35); u8g.setPrintPos(51,37); u8g.print(ftostr31ns(current_position[Y_AXIS])); u8g.setPrintPos(83,37); u8g.print("Z"); u8g.drawPixel(89,33); u8g.drawPixel(89,35); u8g.setPrintPos(91,37); u8g.print(ftostr31(current_position[Z_AXIS])); u8g.setColorIndex(1); // black on white // Feedrate u8g.setFont(u8g_font_6x10_marlin); u8g.setPrintPos(3,49); u8g.print(LCD_STR_FEEDRATE[0]); u8g.setFont(FONT_STATUSMENU); u8g.setPrintPos(12,48); u8g.print(itostr3(feedmultiply)); u8g.print('%'); // Status line u8g.setFont(FONT_STATUSMENU); u8g.setPrintPos(0,61); #ifndef FILAMENT_LCD_DISPLAY u8g.print(lcd_status_message); #else if(message_millis+5000>millis()){ //Display both Status message line and Filament display on the last line u8g.print(lcd_status_message); } else { lcd_printPGM(PSTR("dia:")); u8g.print(ftostr12ns(filament_width_meas)); lcd_printPGM(PSTR(" factor:")); u8g.print(itostr3(extrudemultiply)); u8g.print('%'); } #endif } static void lcd_implementation_drawmenu_generic(uint8_t row, const char* pstr, char pre_char, char post_char) { char c; uint8_t n = LCD_WIDTH - 1 - 2; if ((pre_char == '>') || (pre_char == LCD_STR_UPLEVEL[0] )) { u8g.setColorIndex(1); // black on white u8g.drawBox (0, row*DOG_CHAR_HEIGHT + 3, 128, DOG_CHAR_HEIGHT); u8g.setColorIndex(0); // following text must be white on black } else u8g.setColorIndex(1); // unmarked text is black on white u8g.setPrintPos(0 * DOG_CHAR_WIDTH, (row + 1) * DOG_CHAR_HEIGHT); u8g.print(pre_char == '>' ? ' ' : pre_char); // Row selector is obsolete while( (c = pgm_read_byte(pstr)) != '\0' ) { u8g.print(c); pstr++; n--; } while(n--){ u8g.print(' '); } u8g.print(post_char); u8g.print(' '); u8g.setColorIndex(1); // restore settings to black on white } static void _drawmenu_setting_edit_generic(uint8_t row, const char* pstr, char pre_char, char* data, bool pgm) { char c; uint8_t n = LCD_WIDTH - 1 - 2 - (pgm ? strlen_P(data) : strlen(data)); u8g.setPrintPos(0 * DOG_CHAR_WIDTH, (row + 1) * DOG_CHAR_HEIGHT); u8g.print(pre_char); while( (c = pgm_read_byte(pstr)) != '\0' ) { u8g.print(c); pstr++; n--; } u8g.print(':'); while(n--) u8g.print(' '); if (pgm) { lcd_printPGM(data); } else { u8g.print(data); } } #define lcd_implementation_drawmenu_setting_edit_generic(row, pstr, pre_char, data) _drawmenu_setting_edit_generic(row, pstr, pre_char, data, false) #define lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, pre_char, data) _drawmenu_setting_edit_generic(row, pstr, pre_char, data, true) #define lcd_implementation_drawmenu_setting_edit_int3_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', itostr3(*(data))) #define lcd_implementation_drawmenu_setting_edit_int3(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', itostr3(*(data))) #define lcd_implementation_drawmenu_setting_edit_float3_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr3(*(data))) #define lcd_implementation_drawmenu_setting_edit_float3(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr3(*(data))) #define lcd_implementation_drawmenu_setting_edit_float32_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr32(*(data))) #define lcd_implementation_drawmenu_setting_edit_float32(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr32(*(data))) #define lcd_implementation_drawmenu_setting_edit_float5_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) #define lcd_implementation_drawmenu_setting_edit_float5(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) #define lcd_implementation_drawmenu_setting_edit_float52_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr52(*(data))) #define lcd_implementation_drawmenu_setting_edit_float52(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr52(*(data))) #define lcd_implementation_drawmenu_setting_edit_float51_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr51(*(data))) #define lcd_implementation_drawmenu_setting_edit_float51(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr51(*(data))) #define lcd_implementation_drawmenu_setting_edit_long5_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) #define lcd_implementation_drawmenu_setting_edit_long5(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) #define lcd_implementation_drawmenu_setting_edit_bool_selected(row, pstr, pstr2, data) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, '>', (*(data))?PSTR(MSG_ON)STR(MSG_OFF)) #define lcd_implementation_drawmenu_setting_edit_bool(row, pstr, pstr2, data) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, ' ', (*(data))?PSTR(MSG_ON)
STR(MSG_OFF)) //Add version for callback functions #define lcd_implementation_drawmenu_setting_edit_callback_int3_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', itostr3(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_int3(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', itostr3(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_float3_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr3(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_float3(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr3(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_float32_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr32(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_float32(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr32(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_float5_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_float5(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_float52_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr52(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_float52(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr52(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_float51_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr51(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_float51(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr51(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_long5_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_long5(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) #define lcd_implementation_drawmenu_setting_edit_callback_bool_selected(row, pstr, pstr2, data, callback) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, '>', (*(data))?PSTR(MSG_ON)
STR(MSG_OFF)) #define lcd_implementation_drawmenu_setting_edit_callback_bool(row, pstr, pstr2, data, callback) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, ' ', (*(data))?PSTR(MSG_ON)
STR(MSG_OFF)) void lcd_implementation_drawedit(const char* pstr, char* value) { u8g.setPrintPos(0 * DOG_CHAR_WIDTH_LARGE, (u8g.getHeight() - 1 - DOG_CHAR_HEIGHT_LARGE) - (1 * DOG_CHAR_HEIGHT_LARGE) - START_ROW ); u8g.setFont(u8g_font_9x18); lcd_printPGM(pstr); u8g.print(':'); u8g.setPrintPos((14 - strlen(value)) * DOG_CHAR_WIDTH_LARGE, (u8g.getHeight() - 1 - DOG_CHAR_HEIGHT_LARGE) - (1 * DOG_CHAR_HEIGHT_LARGE) - START_ROW ); u8g.print(value); } static void _drawmenu_sd(uint8_t row, const char* pstr, const char* filename, char * const longFilename, bool isDir, bool isSelected) { char c; uint8_t n = LCD_WIDTH - 1; if (longFilename[0] != '\0') { filename = longFilename; longFilename[n] = '\0'; } if (isSelected) { u8g.setColorIndex(1); // black on white u8g.drawBox (0, row*DOG_CHAR_HEIGHT + 3, 128, DOG_CHAR_HEIGHT); u8g.setColorIndex(0); // following text must be white on black } u8g.setPrintPos(0 * DOG_CHAR_WIDTH, (row + 1) * DOG_CHAR_HEIGHT); u8g.print(' '); // Indent by 1 char if (isDir) u8g.print(LCD_STR_FOLDER[0]); while((c = *filename) != '\0') { u8g.print(c); filename++; n--; } while(n--) u8g.print(' '); if (isSelected) u8g.setColorIndex(1); // black on white } #define lcd_implementation_drawmenu_sdfile_selected(row, pstr, filename, longFilename) _drawmenu_sd(row, pstr, filename, longFilename, false, true) #define lcd_implementation_drawmenu_sdfile(row, pstr, filename, longFilename) _drawmenu_sd(row, pstr, filename, longFilename, false, false) #define lcd_implementation_drawmenu_sddirectory_selected(row, pstr, filename, longFilename) _drawmenu_sd(row, pstr, filename, longFilename, true, true) #define lcd_implementation_drawmenu_sddirectory(row, pstr, filename, longFilename) _drawmenu_sd(row, pstr, filename, longFilename, true, false) #define lcd_implementation_drawmenu_back_selected(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, LCD_STR_UPLEVEL[0], LCD_STR_UPLEVEL[0]) #define lcd_implementation_drawmenu_back(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, ' ', LCD_STR_UPLEVEL[0]) #define lcd_implementation_drawmenu_submenu_selected(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, '>', LCD_STR_ARROW_RIGHT[0]) #define lcd_implementation_drawmenu_submenu(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, ' ', LCD_STR_ARROW_RIGHT[0]) #define lcd_implementation_drawmenu_gcode_selected(row, pstr, gcode) lcd_implementation_drawmenu_generic(row, pstr, '>', ' ') #define lcd_implementation_drawmenu_gcode(row, pstr, gcode) lcd_implementation_drawmenu_generic(row, pstr, ' ', ' ') #define lcd_implementation_drawmenu_function_selected(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, '>', ' ') #define lcd_implementation_drawmenu_function(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, ' ', ' ') static void lcd_implementation_quick_feedback() { #if BEEPER > -1 SET_OUTPUT(BEEPER); for(int8_t i=0;i<10;i++) { WRITE(BEEPER,HIGH); delay(3); WRITE(BEEPER,LOW); delay(3); } #endif } #endif//ULTRA_LCD_IMPLEMENTATION_DOGM_H
#define START_BMPWIDTH 60 //Width in pixels #define START_BMPHEIGHT 64 //Height in pixels #define START_BMPBYTEWIDTH 8 //Width in bytes const unsigned char start_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0, 0, 0, 224, 16, 0, 0, 0, 0, 0, 3, 224, 60, 0, 0, 0, 0, 0, 3, 240, 60, 0, 0, 0, 0, 0, 3, 240, 124, 0, 0, 0, 0, 3, 3, 248, 252, 4, 0, 0, 0, 7, 131, 255, 252, 14, 0, 0, 0, 15, 195, 255, 252, 31, 128, 0, 0, 15, 255, 255, 255, 63, 128, 0, 0, 15, 255, 255, 255, 255, 128, 0, 0, 7, 255, 255, 255, 255, 0, 0, 0, 7, 255, 255, 255, 255, 0, 0, 0, 7, 255, 255, 255, 254, 0, 0, 3, 15, 255, 255, 255, 255, 0, 0, 3, 223, 255, 255, 255, 255, 140, 0, 7, 255, 255, 255, 255, 255, 254, 0, 15, 255, 255, 255, 255, 255, 255, 0, 7, 255, 255, 255, 255, 255, 255, 0, 3, 255, 255, 255, 255, 255, 254, 0, 1, 254, 127, 255, 255, 255, 252, 0, 1, 252, 63, 253, 247, 249, 252, 0, 1, 248, 0, 248, 7, 240, 248, 0, 1, 240, 0, 0, 0, 0, 120, 0, 1, 240, 18, 192, 4, 128, 120, 0, 127, 224, 31, 208, 55, 144, 60, 0, 127, 224, 92, 248, 31, 240, 63, 224, 127, 224, 112, 48, 240, 112, 63, 240, 255, 224, 96, 30, 96, 28, 31, 240, 127, 193, 192, 12, 192, 28, 31, 240, 63, 193, 192, 13, 128, 8, 31, 240, 15, 192, 128, 7, 128, 14, 31, 192, 7, 193, 130, 7, 130, 6, 31, 0, 7, 193, 128, 7, 128, 12, 62, 0, 7, 224, 128, 15, 128, 12, 62, 0, 7, 224, 192, 14, 192, 14, 62, 0, 31, 225, 224, 25, 192, 24, 127, 0, 127, 240, 240, 56, 96, 56, 127, 128, 255, 255, 248, 232, 120, 125, 255, 240, 255, 255, 239, 224, 111, 255, 255, 240, 127, 255, 239, 96, 15, 127, 255, 240, 127, 255, 240, 0, 3, 127, 255, 224, 3, 255, 240, 0, 0, 127, 255, 224, 1, 255, 240, 0, 0, 127, 252, 0, 1, 255, 248, 0, 0, 255, 248, 0, 1, 255, 248, 0, 0, 255, 248, 0, 1, 255, 248, 0, 0, 255, 248, 0, 3, 255, 252, 0, 1, 255, 248, 0, 7, 255, 252, 0, 1, 255, 252, 0, 15, 255, 254, 0, 3, 255, 254, 0, 15, 255, 254, 0, 67, 255, 254, 0, 7, 255, 254, 8, 135, 255, 254, 0, 7, 31, 255, 0, 7, 255, 190, 0, 0, 15, 255, 128, 15, 255, 12, 0, 0, 7, 255, 255, 255, 254, 0, 0, 0, 15, 255, 255, 255, 254, 0, 0, 0, 15, 255, 255, 255, 254, 0, 0, 0, 15, 255, 255, 255, 255, 0, 0, 0, 31, 207, 255, 255, 255, 0, 0, 0, 31, 131, 255, 252, 63, 0, 0, 0, 7, 3, 255, 252, 31, 0, 0, 0, 2, 3, 241, 252, 12, 0, 0, 0, 0, 3, 224, 252, 0, 0, 0, 0, 0, 3, 224, 252, 0, 0, 0, 0, 0, 3, 192, 124, 0, 0, 0, 0, 0, 1, 128, 120, 0, 0, 0}; // Here comes a compile-time operation to match the extruder symbols // on the info screen to the set number of extruders in configuration.h // // When only one extruder is selected, the "1" on the symbol will not // be displayed. #if EXTRUDERS == 1 #define STATUS_SCREENWIDTH 115 //Width in pixels #define STATUS_SCREENHEIGHT 19 //Height in pixels #define STATUS_SCREENBYTEWIDTH 15 //Width in bytes const unsigned char status_screen0_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0xE0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x0C,0x60, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x47,0x0E,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x4F,0x0F,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5F,0x0F,0xA0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5E,0x07,0xA0, 0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x04,0x00,0x40,0x60,0x20, 0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x82,0x00,0x40,0xF0,0x20, 0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x82,0x00,0x40,0xF0,0x20, 0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x04,0x00,0x40,0x60,0x20, 0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x82,0x08,0x00,0x5E,0x07,0xA0, 0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x04,0x10,0x00,0x5F,0x0F,0xA0, 0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x04,0x10,0x00,0x4F,0x0F,0x20, 0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x82,0x08,0x00,0x47,0x0E,0x20, 0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x04,0x00,0x63,0x0C,0x60, 0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, 0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xFF,0xFF,0x80,0x7F,0xFF,0xE0, 0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xFF,0xFF,0x80,0x00,0x00,0x00 }; #define STATUS_SCREENWIDTH 115 //Width in pixels #define STATUS_SCREENHEIGHT 19 //Height in pixels #define STATUS_SCREENBYTEWIDTH 15 //Width in bytes const unsigned char status_screen1_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0xE0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0xF8,0x60, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0xF8,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0xF0,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x60,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x58,0x01,0xA0, 0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x04,0x00,0x5C,0x63,0xA0, 0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x82,0x00,0x5E,0xF7,0xA0, 0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x82,0x00,0x5E,0xF7,0xA0, 0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x04,0x00,0x5C,0x63,0xA0, 0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x82,0x08,0x00,0x58,0x01,0xA0, 0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x04,0x10,0x00,0x40,0x60,0x20, 0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x04,0x10,0x00,0x40,0xF0,0x20, 0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x82,0x08,0x00,0x41,0xF8,0x20, 0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x04,0x00,0x61,0xF8,0x60, 0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, 0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xFF,0xFF,0x80,0x7F,0xFF,0xE0, 0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xFF,0xFF,0x80,0x00,0x00,0x00 }; #elif EXTRUDERS == 2 #define STATUS_SCREENWIDTH 115 //Width in pixels #define STATUS_SCREENHEIGHT 19 //Height in pixels #define STATUS_SCREENBYTEWIDTH 15 //Width in bytes const unsigned char status_screen0_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0xE0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x0C,0x60, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x47,0x0E,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x4F,0x0F,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5F,0x0F,0xA0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5E,0x07,0xA0, 0x7F,0x80,0x00,0x3F,0xC0,0x00,0x41,0x04,0x00,0x00,0x00,0x00,0x40,0x60,0x20, 0xFB,0xC0,0x00,0x79,0xE0,0x00,0x20,0x82,0x00,0x00,0x00,0x00,0x40,0xF0,0x20, 0xF3,0xC0,0x00,0x76,0xE0,0x00,0x20,0x82,0x00,0x00,0x00,0x00,0x40,0xF0,0x20, 0xEB,0xC0,0x00,0x7E,0xE0,0x00,0x41,0x04,0x00,0x00,0x00,0x00,0x40,0x60,0x20, 0x7B,0x80,0x00,0x3D,0xC0,0x00,0x82,0x08,0x00,0x00,0x00,0x00,0x5E,0x07,0xA0, 0x7B,0x80,0x00,0x3B,0xC0,0x01,0x04,0x10,0x00,0x00,0x00,0x00,0x5F,0x0F,0xA0, 0xFB,0xC0,0x00,0x77,0xE0,0x01,0x04,0x10,0x00,0x00,0x00,0x00,0x4F,0x0F,0x20, 0xFB,0xC0,0x00,0x70,0xE0,0x00,0x82,0x08,0x00,0x00,0x00,0x00,0x47,0x0E,0x20, 0xFF,0xC0,0x00,0x7F,0xE0,0x00,0x41,0x04,0x00,0x00,0x00,0x00,0x63,0x0C,0x60, 0x3F,0x00,0x00,0x1F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, 0x1E,0x00,0x00,0x0F,0x00,0x01,0xFF,0xFF,0x80,0x00,0x00,0x00,0x7F,0xFF,0xE0, 0x0C,0x00,0x00,0x06,0x00,0x01,0xFF,0xFF,0x80,0x00,0x00,0x00,0x00,0x00,0x00, }; #define STATUS_SCREENWIDTH 115 //Width in pixels #define STATUS_SCREENHEIGHT 19 //Height in pixels #define STATUS_SCREENBYTEWIDTH 15 //Width in bytes const unsigned char status_screen1_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0xE0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0xF8,0x60, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0xF8,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0xF0,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x60,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x58,0x01,0xA0, 0x7F,0x80,0x00,0x3F,0xC0,0x00,0x41,0x04,0x00,0x00,0x00,0x00,0x5C,0x63,0xA0, 0xFB,0xC0,0x00,0x79,0xE0,0x00,0x20,0x82,0x00,0x00,0x00,0x00,0x5E,0xF7,0xA0, 0xF3,0xC0,0x00,0x76,0xE0,0x00,0x20,0x82,0x00,0x00,0x00,0x00,0x5E,0xF7,0xA0, 0xEB,0xC0,0x00,0x7E,0xE0,0x00,0x41,0x04,0x00,0x00,0x00,0x00,0x5C,0x63,0xA0, 0x7B,0x80,0x00,0x3D,0xC0,0x00,0x82,0x08,0x00,0x00,0x00,0x00,0x58,0x01,0xA0, 0x7B,0x80,0x00,0x3B,0xC0,0x01,0x04,0x10,0x00,0x00,0x00,0x00,0x40,0x60,0x20, 0xFB,0xC0,0x00,0x77,0xE0,0x01,0x04,0x10,0x00,0x00,0x00,0x00,0x40,0xF0,0x20, 0xFB,0xC0,0x00,0x70,0xE0,0x00,0x82,0x08,0x00,0x00,0x00,0x00,0x41,0xF8,0x20, 0xFF,0xC0,0x00,0x7F,0xE0,0x00,0x41,0x04,0x00,0x00,0x00,0x00,0x61,0xF8,0x60, 0x3F,0x00,0x00,0x1F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, 0x1E,0x00,0x00,0x0F,0x00,0x01,0xFF,0xFF,0x80,0x00,0x00,0x00,0x7F,0xFF,0xE0, 0x0C,0x00,0x00,0x06,0x00,0x01,0xFF,0xFF,0x80,0x00,0x00,0x00,0x00,0x00,0x00, }; #else #define STATUS_SCREENWIDTH 115 //Width in pixels #define STATUS_SCREENHEIGHT 19 //Height in pixels #define STATUS_SCREENBYTEWIDTH 15 //Width in bytes const unsigned char status_screen0_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0xE0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x0C,0x60, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x47,0x0E,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x4F,0x0F,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5F,0x0F,0xA0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5E,0x07,0xA0, 0x7F,0x80,0x00,0x3F,0xC0,0x00,0x3F,0xC0,0x00,0x41,0x04,0x00,0x40,0x60,0x20, 0xFB,0xC0,0x00,0x79,0xE0,0x00,0x79,0xE0,0x00,0x20,0x82,0x00,0x40,0xF0,0x20, 0xF3,0xC0,0x00,0x76,0xE0,0x00,0x76,0xE0,0x00,0x20,0x82,0x00,0x40,0xF0,0x20, 0xEB,0xC0,0x00,0x7E,0xE0,0x00,0x7E,0xE0,0x00,0x41,0x04,0x00,0x40,0x60,0x20, 0x7B,0x80,0x00,0x3D,0xC0,0x00,0x39,0xC0,0x00,0x82,0x08,0x00,0x5E,0x07,0xA0, 0x7B,0x80,0x00,0x3B,0xC0,0x00,0x3E,0xC0,0x01,0x04,0x10,0x00,0x5F,0x0F,0xA0, 0xFB,0xC0,0x00,0x77,0xE0,0x00,0x76,0xE0,0x01,0x04,0x10,0x00,0x4F,0x0F,0x20, 0xFB,0xC0,0x00,0x70,0xE0,0x00,0x79,0xE0,0x00,0x82,0x08,0x00,0x47,0x0E,0x20, 0xFF,0xC0,0x00,0x7F,0xE0,0x00,0x7F,0xE0,0x00,0x41,0x04,0x00,0x63,0x0C,0x60, 0x3F,0x00,0x00,0x1F,0x80,0x00,0x1F,0x80,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, 0x1E,0x00,0x00,0x0F,0x00,0x00,0x0F,0x00,0x01,0xFF,0xFF,0x80,0x7F,0xFF,0xE0, 0x0C,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x01,0xFF,0xFF,0x80,0x00,0x00,0x00 }; #define STATUS_SCREENWIDTH 115 //Width in pixels #define STATUS_SCREENHEIGHT 19 //Height in pixels #define STATUS_SCREENBYTEWIDTH 15 //Width in bytes const unsigned char status_screen1_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0xE0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0xF8,0x60, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0xF8,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0xF0,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x60,0x20, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x58,0x01,0xA0, 0x7F,0x80,0x00,0x3F,0xC0,0x00,0x3F,0xC0,0x00,0x41,0x04,0x00,0x5C,0x63,0xA0, 0xFB,0xC0,0x00,0x79,0xE0,0x00,0x79,0xE0,0x00,0x20,0x82,0x00,0x5E,0xF7,0xA0, 0xF3,0xC0,0x00,0x76,0xE0,0x00,0x76,0xE0,0x00,0x20,0x82,0x00,0x5E,0xF7,0xA0, 0xEB,0xC0,0x00,0x7E,0xE0,0x00,0x7E,0xE0,0x00,0x41,0x04,0x00,0x5C,0x63,0xA0, 0x7B,0x80,0x00,0x3D,0xC0,0x00,0x39,0xC0,0x00,0x82,0x08,0x00,0x58,0x01,0xA0, 0x7B,0x80,0x00,0x3B,0xC0,0x00,0x3E,0xC0,0x01,0x04,0x10,0x00,0x40,0x60,0x20, 0xFB,0xC0,0x00,0x77,0xE0,0x00,0x76,0xE0,0x01,0x04,0x10,0x00,0x40,0xF0,0x20, 0xFB,0xC0,0x00,0x70,0xE0,0x00,0x79,0xE0,0x00,0x82,0x08,0x00,0x41,0xF8,0x20, 0xFF,0xC0,0x00,0x7F,0xE0,0x00,0x7F,0xE0,0x00,0x41,0x04,0x00,0x61,0xF8,0x60, 0x3F,0x00,0x00,0x1F,0x80,0x00,0x1F,0x80,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, 0x1E,0x00,0x00,0x0F,0x00,0x00,0x0F,0x00,0x01,0xFF,0xFF,0x80,0x7F,0xFF,0xE0, 0x0C,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x01,0xFF,0xFF,0x80,0x00,0x00,0x00 }; #endif // Extruders
Re: Alguien sabe modificar el firmware Marlin January 04, 2015 05:49AM |
Registered: 9 years ago Posts: 721 |
Re: Alguien sabe modificar el firmware Marlin January 05, 2015 07:12AM |
Registered: 9 years ago Posts: 792 |
// Humidity & Temperature DTHxx Sensor By: Tatubias int dht_humi = dht.readHumidity(); int dht_temp = dht.readTemperature(); u8g.setFont(u8g_font_6x10_marlin); // Setea el la letra y el tamaño de la misma Las letras estan dentro del file dogm_font_data_marlin.h) u8g.setPrintPos(80,10); // Setea la posicion en el display a escribit 80x 10y) u8g.print(LCD_STR_THERMOMETER[0]); // escribe el caracter especial (termometro) u8g.setFont(u8g_font_5x8); u8g.print(dht_temp); // Imprime en pantalla la temperatura en celcius u8g.setFont(FONT_STATUSMENU); // Setea el la letra y el tamaño de la misma Las letras (esto es una variable que esta declarada al comienzo de este archivo) lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); //imprime el caracter especial ° ya que no es parte de character set basico) u8g.setFont(u8g_font_6x10_marlin); u8g.setPrintPos(80,24); u8g.print("H"); u8g.setFont(u8g_font_5x8); u8g.print(dht_humi); u8g.setFont(FONT_STATUSMENU); u8g.print("%");
Re: Alguien sabe modificar el firmware Marlin January 05, 2015 08:18AM |
Registered: 9 years ago Posts: 792 |
// Humidity & Temperature DTHxx Sensor By: Tatubias int dht_humi = dht.readHumidity(); int dht_temp = dht.readTemperature(); u8g.setFont(u8g_font_6x10_marlin); u8g.setPrintPos(80,10); u8g.print(LCD_STR_THERMOMETER[0]); u8g.setFont(FONT_STATUSMENU); u8g.print(dht_temp); lcd_printPGM(PSTR(LCD_STR_DEGREE)); u8g.setFont(u8g_font_6x12_67_75); // Setea la font u8g_font_6x12_67_75 u8g.setPrintPos(80,24); u8g.print("\xed"); //Imprime el caracter con forma de "GOTA" u8g.setFont(FONT_STATUSMENU); u8g.print(dht_humi); u8g.print("%");
Re: Alguien sabe modificar el firmware Marlin January 05, 2015 01:22PM |
Registered: 9 years ago Posts: 792 |
#define START_BMPWIDTH 60 //Width in pixels #define START_BMPHEIGHT 64 //Height in pixels #define START_BMPBYTEWIDTH 8 //Width in bytes const unsigned char start_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0x00, 0x00, 0x00, 0x3f, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x7f, 0xe0, 0x01, 0x80, 0x00, 0x00, 0x3c, 0x00, 0xff, 0xf0, 0x03, 0xc0, 0x00, 0x00, 0x7f, 0x01, 0xf7, 0xf8, 0x0f, 0xe0, 0x00, 0x00, 0xff, 0x87, 0xe0, 0x3e, 0x1f, 0xf0, 0x00, 0x01, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xf8, 0x00, 0x03, 0xff, 0xff, 0xe0, 0x0f, 0xff, 0xfc, 0x00, 0x03, 0xff, 0xff, 0xc0, 0x07, 0xff, 0xfc, 0x00, 0x01, 0xff, 0xff, 0x80, 0x01, 0xff, 0xf8, 0x00, 0x00, 0xff, 0xff, 0xc0, 0x01, 0xef, 0xf0, 0x00, 0x00, 0xff, 0xff, 0xc0, 0x03, 0xcf, 0xf0, 0x00, 0x00, 0x7f, 0xff, 0x80, 0x00, 0x1f, 0xe0, 0x00, 0x00, 0x3f, 0xff, 0x00, 0x00, 0x3f, 0xc0, 0x00, 0x00, 0x3f, 0xff, 0x00, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x3f, 0xff, 0x00, 0x01, 0xff, 0xc0, 0x00, 0x00, 0x7f, 0xff, 0x00, 0x03, 0xff, 0xe0, 0x00, 0x00, 0x7f, 0xff, 0x00, 0x03, 0xff, 0xe0, 0x00, 0x00, 0x7f, 0xff, 0x00, 0x07, 0xff, 0xe0, 0x00, 0x00, 0xff, 0xff, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x07, 0xff, 0xff, 0x00, 0x03, 0xff, 0xfe, 0x00, 0xff, 0xff, 0xfe, 0x00, 0x01, 0xff, 0xff, 0x00, 0xff, 0xff, 0xfe, 0x00, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0xfe, 0x00, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0xff, 0x00, 0x01, 0xff, 0xff, 0x00, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0x00, 0xff, 0xff, 0xfe, 0x00, 0x73, 0xff, 0xff, 0x00, 0xff, 0xff, 0xfe, 0x00, 0x47, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xfe, 0x00, 0x8f, 0xff, 0xff, 0x00, 0x00, 0xff, 0xfe, 0x03, 0x0f, 0xff, 0xf0, 0x00, 0x00, 0xff, 0xfe, 0x01, 0x3f, 0xff, 0xf0, 0x00, 0x00, 0x7f, 0xfe, 0x01, 0x7f, 0xff, 0xe0, 0x00, 0x00, 0x7f, 0xfe, 0x02, 0x7f, 0xff, 0xe0, 0x00, 0x00, 0x7f, 0xff, 0x02, 0x3f, 0xff, 0xc0, 0x00, 0x00, 0x3f, 0xff, 0x04, 0x3f, 0xff, 0xc0, 0x00, 0x00, 0x3f, 0xff, 0x08, 0x1f, 0xff, 0xc0, 0x00, 0x00, 0x7f, 0xff, 0x04, 0x1f, 0xff, 0xe0, 0x00, 0x00, 0x7f, 0xff, 0x04, 0x0f, 0xff, 0xe0, 0x00, 0x00, 0xff, 0xff, 0x04, 0x0f, 0xff, 0xf0, 0x00, 0x01, 0xff, 0xfe, 0x08, 0x0f, 0xff, 0xf8, 0x00, 0x01, 0xff, 0xfe, 0x08, 0x07, 0xff, 0xf8, 0x00, 0x03, 0xff, 0xff, 0x10, 0x07, 0xff, 0xfc, 0x00, 0x01, 0xff, 0xfd, 0x10, 0x03, 0xff, 0xf8, 0x00, 0x00, 0xff, 0xdc, 0x90, 0x03, 0xbf, 0xf0, 0x00, 0x00, 0x7f, 0x00, 0x90, 0x00, 0x0f, 0xe0, 0x00, 0x00, 0x3e, 0x00, 0x88, 0x00, 0x07, 0xc0, 0x00, 0x00, 0x18, 0x00, 0x74, 0x00, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
#define START_BMPWIDTH 60 //Width in pixels #define START_BMPHEIGHT 64 //Height in pixels #define START_BMPBYTEWIDTH 8 //Width in bytes const unsigned char start_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0x00, 0x00, 0x00, 0xe0, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xe0, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xf0, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xf0, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0xf8, 0xfc, 0x04, 0x00, 0x00, 0x00, 0x07, 0x83, 0xff, 0xfc, 0x0e, 0x00, 0x00, 0x00, 0x0f, 0xc3, 0xff, 0xfc, 0x1f, 0x80, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0x3f, 0x80, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x03, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x03, 0xdf, 0xff, 0xff, 0xff, 0xff, 0x8c, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x01, 0xfe, 0x7f, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x01, 0xfc, 0x3f, 0xfd, 0xf7, 0xf9, 0xfc, 0x00, 0x01, 0xf8, 0x00, 0xf8, 0x07, 0xf0, 0xf8, 0x00, 0x01, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 0x01, 0xf0, 0x12, 0xc0, 0x04, 0x80, 0x78, 0x00, 0x7f, 0xe0, 0x1f, 0xd0, 0x37, 0x90, 0x3c, 0x00, 0x7f, 0xe0, 0x5c, 0xf8, 0x1f, 0xf0, 0x3f, 0x00, 0x7f, 0xe0, 0x70, 0x30, 0xf0, 0x70, 0x3f, 0x00, 0xff, 0xe0, 0x60, 0x1e, 0x60, 0x1c, 0x1f, 0x00, 0x7f, 0xc1, 0xc0, 0x0c, 0xc0, 0x1c, 0x1f, 0x00, 0x3f, 0xc1, 0xc0, 0x0d, 0x80, 0x08, 0x1f, 0x00, 0x0f, 0xc0, 0x80, 0x07, 0x80, 0x0e, 0x1f, 0x00, 0x07, 0xc1, 0x82, 0x07, 0x82, 0x06, 0x1f, 0x00, 0x07, 0xc1, 0x80, 0x07, 0x80, 0x0c, 0x3e, 0x00, 0x07, 0xe0, 0x80, 0x0f, 0x80, 0x0c, 0x3e, 0x00, 0x07, 0xe0, 0xc0, 0x0e, 0xc0, 0x0e, 0x3e, 0x00, 0x1f, 0xe1, 0xe0, 0x19, 0xc0, 0x18, 0x7f, 0x00, 0x7f, 0xf0, 0xf0, 0x38, 0x60, 0x38, 0x7f, 0x00, 0xff, 0xff, 0xf8, 0xe8, 0x78, 0x7d, 0xff, 0x00, 0xff, 0xff, 0xef, 0xe0, 0x6f, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xef, 0x60, 0x0f, 0x7f, 0xff, 0x00, 0x7f, 0xff, 0xf0, 0x00, 0x03, 0x7f, 0xff, 0x00, 0x03, 0xff, 0xf0, 0x00, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xf0, 0x00, 0x00, 0x7f, 0xfc, 0x00, 0x01, 0xff, 0xf8, 0x00, 0x00, 0xff, 0xf8, 0x00, 0x01, 0xff, 0xf8, 0x00, 0x00, 0xff, 0xf8, 0x00, 0x01, 0xff, 0xf8, 0x00, 0x00, 0xff, 0xf8, 0x00, 0x03, 0xff, 0xfc, 0x00, 0x01, 0xff, 0xf8, 0x00, 0x07, 0xff, 0xfc, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x0f, 0xff, 0xfe, 0x00, 0x03, 0xff, 0xfe, 0x00, 0x0f, 0xff, 0xfe, 0x00, 0x43, 0xff, 0xfe, 0x00, 0x07, 0xff, 0xfe, 0x08, 0x87, 0xff, 0xfe, 0x00, 0x07, 0x1f, 0xff, 0x00, 0x07, 0xff, 0xbe, 0x00, 0x00, 0x0f, 0xff, 0x80, 0x0f, 0xff, 0x0c, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x1f, 0xcf, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x1f, 0x83, 0xff, 0xfc, 0x3f, 0x00, 0x00, 0x00, 0x07, 0x03, 0xff, 0xfc, 0x1f, 0x00, 0x00, 0x00, 0x02, 0x03, 0xf1, 0xfc, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x03, 0xe0, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xe0, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xc0, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x80, 0x78, 0x00, 0x00, 0x00};
#define START_BMPWIDTH 60 //Width in pixels #define START_BMPHEIGHT 64 //Height in pixels #define START_BMPBYTEWIDTH 8 //Width in bytes const unsigned char start_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xf1, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x01, 0xfe, 0x00, 0x07, 0xf0, 0x00, 0x00, 0x00, 0x03, 0xf0, 0x1f, 0x81, 0xf8, 0x00, 0x00, 0x00, 0x07, 0xc0, 0x0f, 0xf0, 0x7e, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x07, 0xf0, 0x1f, 0x00, 0x00, 0x00, 0x3e, 0x04, 0x07, 0xf0, 0x0f, 0x80, 0x00, 0x00, 0x3c, 0x06, 0x07, 0xf0, 0x07, 0xc0, 0x00, 0x00, 0x78, 0x06, 0x07, 0xf0, 0x13, 0xc0, 0x00, 0x00, 0xf0, 0x06, 0x07, 0xf0, 0x19, 0xe0, 0x00, 0x01, 0xe6, 0x06, 0x07, 0xf0, 0x1c, 0xf0, 0x00, 0x01, 0xc6, 0x06, 0x07, 0xf0, 0x1e, 0x78, 0x00, 0x03, 0xce, 0x06, 0x07, 0xf0, 0x1e, 0x78, 0x00, 0x03, 0x9e, 0x06, 0x07, 0xf0, 0x1f, 0x38, 0x00, 0x07, 0x1e, 0x06, 0x07, 0xf0, 0x1f, 0x9c, 0x00, 0x07, 0x3e, 0x06, 0x07, 0xf0, 0x1f, 0x9c, 0x00, 0x07, 0x3e, 0x06, 0x07, 0xf0, 0x1f, 0x9e, 0x00, 0x0e, 0x7e, 0x06, 0x07, 0xf0, 0x1f, 0xce, 0x00, 0x0e, 0x7e, 0x06, 0x07, 0xf0, 0x1f, 0xce, 0x00, 0x0e, 0x7e, 0x06, 0x07, 0xf0, 0x1f, 0xce, 0x00, 0x1e, 0xfe, 0x06, 0x07, 0xf0, 0x1f, 0xe7, 0x00, 0x1c, 0xfe, 0x06, 0x07, 0xf0, 0x1f, 0xe7, 0x00, 0x1c, 0xfe, 0x00, 0x07, 0xf0, 0x1f, 0xe7, 0x00, 0x1c, 0xfe, 0x00, 0x0f, 0xf0, 0x1f, 0xe7, 0x00, 0x1c, 0xfe, 0x00, 0x0f, 0xf0, 0x1f, 0xe7, 0x00, 0x1c, 0xfe, 0x00, 0x3f, 0xf0, 0x1f, 0xe7, 0x00, 0x1c, 0xfe, 0x07, 0xff, 0xf0, 0x1f, 0xe7, 0x00, 0x1c, 0xfe, 0x07, 0xc0, 0xf0, 0x1f, 0xe7, 0x00, 0x1e, 0x7e, 0x07, 0x80, 0x70, 0x1f, 0xe7, 0x00, 0x0e, 0x7e, 0x07, 0x80, 0x30, 0x1f, 0xce, 0x00, 0x0e, 0x7e, 0x07, 0x84, 0x30, 0x1f, 0xce, 0x00, 0x0e, 0x7e, 0x07, 0x84, 0x30, 0x1f, 0xce, 0x00, 0x07, 0x3e, 0x07, 0x84, 0x30, 0x1f, 0x9e, 0x00, 0x07, 0x3e, 0x07, 0x9c, 0x30, 0x1f, 0x9c, 0x00, 0x07, 0x9e, 0x07, 0xe0, 0x30, 0x1f, 0x3c, 0x00, 0x03, 0x9e, 0x07, 0x80, 0x30, 0x00, 0x38, 0x00, 0x03, 0xce, 0x07, 0x80, 0x30, 0x00, 0x78, 0x00, 0x01, 0xc6, 0x07, 0x84, 0x30, 0x00, 0x70, 0x00, 0x01, 0xe6, 0x07, 0x84, 0x38, 0x00, 0xf0, 0x00, 0x00, 0xf0, 0x07, 0x84, 0x38, 0x01, 0xe0, 0x00, 0x00, 0x78, 0x07, 0x84, 0x3e, 0x03, 0xc0, 0x00, 0x00, 0x3c, 0x07, 0x84, 0x3f, 0xc7, 0xc0, 0x00, 0x00, 0x1e, 0x07, 0x84, 0x3f, 0x8f, 0x00, 0x00, 0x00, 0x0f, 0x87, 0x80, 0x3e, 0x3e, 0x00, 0x00, 0x00, 0x07, 0xc1, 0x80, 0x30, 0x7c, 0x00, 0x00, 0x00, 0x03, 0xf0, 0x00, 0x01, 0xf8, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x0f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
Re: Alguien sabe modificar el firmware Marlin January 05, 2015 02:07PM |
Registered: 9 years ago Posts: 721 |
Re: Alguien sabe modificar el firmware Marlin January 06, 2015 03:34PM |
Registered: 9 years ago Posts: 792 |
#define START_BMPWIDTH 60 //Width in pixels #define START_BMPHEIGHT 64 //Height in pixels #define START_BMPBYTEWIDTH 8 //Width in bytes const unsigned char start_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x1f, 0xf1, 0xff, 0xff, 0xff, 0xf8, 0xff, 0x00, 0x1f, 0xf1, 0xff, 0xff, 0xff, 0xf8, 0xff, 0x00, 0x1f, 0xf1, 0xff, 0xe0, 0x7f, 0xf8, 0xff, 0x00, 0x1f, 0xf1, 0xff, 0x80, 0x1f, 0xf8, 0xff, 0x00, 0x1f, 0xf8, 0xff, 0xc0, 0x3f, 0xf1, 0xff, 0x00, 0x0f, 0xf8, 0x7f, 0xf0, 0xff, 0xe1, 0xff, 0x00, 0x0f, 0x3c, 0x3f, 0xf9, 0xff, 0xc3, 0xcf, 0x00, 0x0f, 0x9f, 0x0f, 0xff, 0xff, 0x0f, 0x9f, 0x00, 0x0f, 0xc7, 0x87, 0xff, 0xfe, 0x1e, 0x3f, 0x00, 0x0f, 0xf3, 0xe1, 0xff, 0xf8, 0x7c, 0xff, 0x00, 0x0f, 0xf8, 0xf0, 0xff, 0xf0, 0xf1, 0xff, 0x00, 0x07, 0xbe, 0x3c, 0x3f, 0xc3, 0xc7, 0xde, 0x00, 0x07, 0x8f, 0x1e, 0x1f, 0x87, 0x8f, 0x1e, 0x00, 0x07, 0xc7, 0xce, 0x06, 0x07, 0x3e, 0x3e, 0x00, 0x07, 0xf1, 0xfe, 0x20, 0x47, 0xf8, 0xfe, 0x00, 0x07, 0xf8, 0xff, 0x30, 0xcf, 0xf1, 0xfe, 0x00, 0x03, 0xfe, 0x3f, 0x3f, 0xcf, 0xc7, 0xfc, 0x00, 0x00, 0xff, 0x1f, 0x3f, 0xcf, 0x8f, 0xf0, 0x00, 0x00, 0x3f, 0xc7, 0x3f, 0xce, 0x3f, 0xc0, 0x00, 0x00, 0x1f, 0xe7, 0x9f, 0x9e, 0x7f, 0x80, 0x00, 0x03, 0x07, 0xff, 0x9f, 0x9f, 0xfe, 0x0c, 0x00, 0x01, 0x83, 0xff, 0x9f, 0x9f, 0xfc, 0x18, 0x00, 0x01, 0xe0, 0xff, 0x9f, 0x9f, 0xf0, 0x78, 0x00, 0x01, 0xf0, 0x00, 0x0f, 0x00, 0x00, 0xf8, 0x00, 0x01, 0xf0, 0x00, 0x0f, 0x00, 0x00, 0xf8, 0x00, 0x01, 0xf0, 0x00, 0x0f, 0x00, 0x00, 0xf8, 0x00, 0x01, 0xf0, 0x00, 0x0f, 0x00, 0x00, 0xf8, 0x00, 0x01, 0xfc, 0x00, 0x8f, 0x10, 0x03, 0xf8, 0x00, 0x01, 0xfe, 0x03, 0x8f, 0x1c, 0x07, 0xf8, 0x00, 0x01, 0xff, 0x87, 0x8f, 0x1e, 0x1f, 0xf8, 0x00, 0x00, 0xff, 0x9f, 0x8f, 0x1f, 0x9f, 0xf0, 0x00, 0x00, 0xff, 0x9f, 0x8f, 0x1f, 0x9f, 0xf0, 0x00, 0x00, 0xff, 0x9f, 0x8f, 0x1f, 0x9f, 0xf0, 0x00, 0x00, 0xff, 0x9f, 0x8f, 0x1f, 0x9f, 0xf0, 0x00, 0x00, 0xff, 0x9f, 0x8f, 0x1f, 0x9f, 0xf0, 0x00, 0x00, 0xff, 0x9f, 0x80, 0x1f, 0x9f, 0xf0, 0x00, 0x00, 0xff, 0x9f, 0x80, 0x1f, 0x9f, 0xf0, 0x00, 0x00, 0xff, 0x9f, 0x80, 0x1f, 0x9f, 0xf0, 0x00, 0x00, 0xff, 0x9f, 0xff, 0xff, 0x9f, 0xf0, 0x00, 0x00, 0xff, 0x9f, 0xff, 0xff, 0x9f, 0xf0, 0x00, 0x00, 0x3f, 0x9f, 0x80, 0x1f, 0x9f, 0xc0, 0x00, 0x00, 0x1f, 0x9f, 0x00, 0x0f, 0x9f, 0x80, 0x00, 0x00, 0x07, 0x9f, 0x00, 0x0f, 0x9e, 0x00, 0x00, 0x00, 0x03, 0x9e, 0x3f, 0xc7, 0x9c, 0x00, 0x00, 0x00, 0x00, 0x9e, 0x3f, 0xc7, 0x90, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x7f, 0xe3, 0x80, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x7f, 0xe3, 0x80, 0x00, 0x00, 0x00, 0x00, 0x08, 0xff, 0xf1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
#define START_BMPWIDTH 60 //Width in pixels #define START_BMPHEIGHT 64 //Height in pixels #define START_BMPBYTEWIDTH 8 //Width in bytes const unsigned char start_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 2, 0, 4, 0, 0, 0, 16, 0, 3, 0, 4, 0, 0, 0, 16, 0, 1, 0, 8, 0, 0, 128, 24, 0, 1, 128, 8, 0, 1, 128, 12, 0, 1, 128, 24, 0, 1, 0, 14, 0, 1, 192, 24, 0, 3, 0, 14, 0, 1, 192, 56, 0, 7, 0, 15, 192, 1, 224, 120, 0, 63, 0, 15, 252, 1, 255, 248, 1, 255, 0, 15, 255, 128, 255, 240, 15, 255, 0, 15, 255, 240, 255, 240, 255, 255, 0, 15, 143, 248, 224, 113, 255, 222, 0, 7, 129, 248, 224, 113, 254, 30, 0, 7, 192, 56, 240, 241, 224, 30, 0, 7, 240, 0, 240, 224, 0, 62, 0, 7, 255, 0, 240, 224, 3, 254, 0, 7, 255, 224, 121, 224, 31, 254, 0, 7, 195, 248, 121, 225, 255, 62, 0, 7, 192, 124, 121, 227, 240, 62, 0, 7, 224, 4, 125, 227, 0, 60, 0, 7, 252, 0, 127, 224, 0, 252, 0, 3, 255, 128, 63, 192, 15, 252, 0, 3, 255, 248, 31, 128, 255, 252, 0, 1, 255, 254, 15, 7, 255, 248, 0, 0, 255, 255, 6, 15, 255, 240, 0, 0, 239, 255, 132, 31, 255, 240, 0, 0, 113, 255, 224, 63, 252, 224, 0, 0, 56, 63, 240, 255, 193, 192, 0, 2, 28, 3, 249, 254, 3, 132, 0, 2, 30, 0, 127, 240, 7, 140, 0, 3, 15, 0, 31, 128, 15, 12, 0, 3, 135, 128, 31, 128, 30, 24, 0, 3, 199, 192, 63, 128, 60, 56, 0, 3, 195, 192, 63, 192, 124, 120, 0, 3, 225, 224, 127, 192, 248, 120, 0, 3, 241, 240, 127, 225, 240, 248, 0, 3, 240, 248, 255, 227, 241, 248, 0, 1, 248, 124, 255, 243, 225, 248, 0, 1, 252, 127, 255, 255, 195, 248, 0, 1, 252, 63, 255, 255, 135, 248, 0, 1, 254, 31, 255, 255, 143, 248, 0, 1, 255, 15, 255, 255, 15, 240, 0, 1, 255, 143, 255, 254, 31, 240, 0, 1, 255, 135, 255, 252, 63, 240, 0, 1, 255, 195, 255, 252, 63, 240, 0, 1, 255, 227, 255, 248, 127, 240, 0, 1, 255, 225, 255, 240, 255, 240, 0, 1, 255, 240, 255, 241, 255, 240, 0, 0, 127, 248, 255, 225, 255, 224, 0, 0, 15, 248, 127, 195, 255, 0, 0, 0, 3, 252, 63, 135, 252, 0, 0, 0, 0, 254, 31, 135, 224, 0, 0, 0, 0, 31, 31, 15, 128, 0, 0, 0, 0, 7, 14, 30, 0, 0, 0, 0, 0, 1, 134, 48, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
#define START_BMPWIDTH 60 //Width in pixels #define START_BMPHEIGHT 64 //Height in pixels #define START_BMPBYTEWIDTH 8 //Width in bytes const unsigned char start_bmp[] PROGMEM = { //AVR-GCC, WinAVR 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, 0, 255, 192, 0, 0, 0, 1, 255, 255, 255, 252, 0, 0, 0, 15, 255, 255, 255, 255, 0, 0, 0, 31, 131, 31, 198, 15, 128, 0, 0, 126, 57, 143, 140, 227, 224, 0, 0, 248, 28, 71, 144, 192, 240, 0, 1, 241, 248, 7, 128, 252, 120, 0, 3, 227, 199, 15, 135, 30, 60, 0, 7, 231, 63, 15, 131, 227, 28, 0, 7, 198, 48, 31, 192, 99, 158, 0, 7, 128, 97, 15, 132, 48, 142, 0, 7, 0, 225, 143, 142, 56, 7, 0, 7, 112, 96, 135, 136, 48, 119, 0, 7, 252, 112, 135, 8, 113, 255, 0, 7, 192, 56, 135, 8, 224, 31, 128, 7, 192, 24, 135, 136, 224, 31, 128, 15, 199, 248, 207, 152, 255, 31, 128, 31, 199, 248, 127, 240, 255, 159, 128, 30, 103, 2, 31, 226, 3, 49, 128, 30, 115, 254, 7, 3, 254, 113, 0, 30, 112, 134, 39, 3, 8, 113, 0, 30, 97, 0, 39, 32, 0, 19, 0, 14, 96, 32, 39, 32, 33, 19, 0, 15, 48, 126, 103, 51, 248, 103, 0, 3, 128, 199, 231, 63, 8, 6, 0, 1, 255, 255, 255, 255, 255, 254, 0, 15, 255, 255, 255, 255, 255, 255, 0, 15, 255, 255, 255, 255, 255, 255, 0, 15, 255, 255, 255, 255, 255, 255, 0, 15, 128, 0, 63, 192, 0, 31, 0, 3, 128, 0, 63, 192, 0, 28, 0, 3, 192, 0, 63, 192, 0, 60, 0, 1, 192, 0, 127, 224, 0, 56, 0, 1, 224, 0, 127, 224, 0, 120, 0, 1, 224, 0, 127, 224, 0, 120, 0, 1, 224, 0, 112, 224, 0, 112, 0, 0, 255, 255, 224, 127, 255, 240, 0, 0, 255, 255, 224, 127, 255, 240, 0, 0, 127, 255, 192, 63, 255, 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 111, 251, 254, 127, 128, 0, 0, 120, 108, 3, 6, 96, 224, 0, 0, 124, 108, 3, 6, 96, 96, 0, 0, 110, 111, 195, 254, 96, 96, 0, 0, 103, 108, 3, 252, 96, 96, 0, 0, 97, 236, 3, 24, 96, 224, 0, 0, 96, 239, 251, 14, 127, 192, 0, 0, 96, 111, 251, 7, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
Re: Alguien sabe modificar el firmware Marlin January 06, 2015 04:42PM |
Registered: 9 years ago Posts: 792 |
Quote
Lechonquinto
Que grande el tatu!!!
Ahora falta conectarlo a una salida extra para controlar dos resistencias de calentamiento y tenes cámara calentada de ambiente controlado =O
Re: Alguien sabe modificar el firmware Marlin January 06, 2015 07:34PM |
Registered: 9 years ago Posts: 116 |
Re: Alguien sabe modificar el firmware Marlin January 06, 2015 09:00PM |
Registered: 9 years ago Posts: 792 |
Quote
78moebius
muy bueno tu laburo y muy bien documentado !!!!!!!
antes que nada, aclaro que no me incluyo entre los que saben.... jajajaja....... ( por si queda alguna duda )
le veo un pequeño problema a la idea de una camara con temperatura controlada..... puede que la temperatura no sea uniforme, creo que aparecerian areas con mayor temperatura que otras...... no se, pero a menos que uses algo para forzar el aire ( y no se si eso es buena idea.... ) vas a tener uno o varios gradientes de temperatura ( el mas obvio es el vertical y si usas una resistencia, vas a tener mas temperatura alrededor de ella y va a disminuir en los puntos mas alejados, al menos que la resistencia sea simetrica.... ¿ un circulo o algo asi que rodee la cama ? ) de todas maneras, es solo una suposicion, y si la diferencia de temperatura es pequeña ¿ mas o menos 5 grados supongo ? no deberia ser tan terrible, tal vez estoy exagerando y el resultado podria ser muy bueno
otra cosa ( que supongo que ya habras pensado.... ) los cables y los motores... se van a bancar el aumento de temperatura ??????
Re: Alguien sabe modificar el firmware Marlin January 06, 2015 09:34PM |
Registered: 10 years ago Posts: 272 |