ADAFRUIT_ST7565

Added support for new display type
This commit is contained in:
Ed Boston 2015-05-17 12:47:41 -07:00
parent c5feb9c6a1
commit 41f8cdb3a6
5 changed files with 33 additions and 5 deletions

View File

@ -22,15 +22,17 @@
#define NEWPANEL #define NEWPANEL
#endif #endif
#if defined(miniVIKI) || defined(VIKI2) #if defined(miniVIKI) || defined(VIKI2) || defined(ADAFRUIT_ST7565)
#define ULTRA_LCD //general LCD support, also 16x2 #define ULTRA_LCD //general LCD support, also 16x2
#define DOGLCD // Support for SPI LCD 128x64 (Controller ST7565R graphic Display Family) #define DOGLCD // Support for SPI LCD 128x64 (Controller ST7565R graphic Display Family)
#define ULTIMAKERCONTROLLER //as available from the Ultimaker online store. #define ULTIMAKERCONTROLLER //as available from the Ultimaker online store.
#ifdef miniVIKI #ifdef miniVIKI
#define DEFAULT_LCD_CONTRAST 95 #define DEFAULT_LCD_CONTRAST 95
#else #elif defined(VIKI2)
#define DEFAULT_LCD_CONTRAST 40 #define DEFAULT_LCD_CONTRAST 40
#elif defined(ADAFRUIT_ST7565)
#define DEFAULT_LCD_CONTRAST 110
#endif #endif
#define ENCODER_PULSES_PER_STEP 4 #define ENCODER_PULSES_PER_STEP 4

View File

@ -660,6 +660,8 @@ const bool Z_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the logic
//#define VIKI2 //#define VIKI2
//#define miniVIKI //#define miniVIKI
#define ADAFRUIT_ST7565
// The RepRapDiscount Smart Controller (white PCB) // The RepRapDiscount Smart Controller (white PCB)
// http://reprap.org/wiki/RepRapDiscount_Smart_Controller // http://reprap.org/wiki/RepRapDiscount_Smart_Controller
//#define REPRAP_DISCOUNT_SMART_CONTROLLER //#define REPRAP_DISCOUNT_SMART_CONTROLLER

View File

@ -126,6 +126,8 @@
#elif defined(VIKI2) || defined(miniVIKI) #elif defined(VIKI2) || defined(miniVIKI)
// Mini Viki and Viki 2.0 LCD, ST7565 controller as well // Mini Viki and Viki 2.0 LCD, ST7565 controller as well
U8GLIB_NHD_C12864 u8g(DOGLCD_CS, DOGLCD_A0); U8GLIB_NHD_C12864 u8g(DOGLCD_CS, DOGLCD_A0);
#elif defined(ADAFRUIT_ST7565)
U8GLIB_LM6059 u8g(DOGLCD_CS, DOGLCD_A0);
#else #else
// for regular DOGM128 display with HW-SPI // for regular DOGM128 display with HW-SPI
U8GLIB_DOGM128 u8g(DOGLCD_CS, DOGLCD_A0); // HW-SPI Com: CS, A0 U8GLIB_DOGM128 u8g(DOGLCD_CS, DOGLCD_A0); // HW-SPI Com: CS, A0

View File

@ -180,6 +180,19 @@
#define BTN_ENC -1 #define BTN_ENC -1
#define LCD_SDSS 53 #define LCD_SDSS 53
#define SDCARDDETECT 49 #define SDCARDDETECT 49
#elif defined(ADAFRUIT_ST7565)
#define BTN_EN1 35
#define BTN_EN2 37
#define BTN_ENC 31
#define SDCARDDETECT 49
#define SDCARDDETECTINVERTED
#define SDSLOW
#define LCD_SDSS 53
#define KILL_PIN 41
#define BEEPER 23
#define DOGLCD_CS 29
#define DOGLCD_A0 27
#define LCD_PIN_BL 33
#else #else
// arduino pin which triggers an piezzo beeper // arduino pin which triggers an piezzo beeper
#define BEEPER 33 // Beeper on AUX-4 #define BEEPER 33 // Beeper on AUX-4
@ -209,7 +222,6 @@
#endif #endif
#endif #endif
#else // Old-style panel with shift register #else // Old-style panel with shift register
// Arduino pin witch triggers an piezzo beeper // Arduino pin witch triggers an piezzo beeper
#define BEEPER 33 // No Beeper added #define BEEPER 33 // No Beeper added

View File

@ -1110,13 +1110,23 @@ static void lcd_control_volumetric_menu() {
#ifdef HAS_LCD_CONTRAST #ifdef HAS_LCD_CONTRAST
static void lcd_set_contrast() { static void lcd_set_contrast() {
if (encoderPosition != 0) { if (encoderPosition != 0) {
#ifdef ADAFRUIT_ST7565
lcd_contrast += encoderPosition;
lcd_contrast &= 0xFF;
#else
lcd_contrast -= encoderPosition; lcd_contrast -= encoderPosition;
lcd_contrast &= 0x3F; lcd_contrast &= 0x3F;
#endif
encoderPosition = 0; encoderPosition = 0;
lcdDrawUpdate = 1; lcdDrawUpdate = 1;
u8g.setContrast(lcd_contrast); u8g.setContrast(lcd_contrast);
} }
if (lcdDrawUpdate) lcd_implementation_drawedit(PSTR(MSG_CONTRAST), itostr2(lcd_contrast)); if (lcdDrawUpdate)
#ifdef ADAFRUIT_ST7565
lcd_implementation_drawedit(PSTR(MSG_CONTRAST), itostr3(lcd_contrast));
#else
lcd_implementation_drawedit(PSTR(MSG_CONTRAST), itostr2(lcd_contrast));
#endif
if (LCD_CLICKED) lcd_goto_menu(lcd_control_menu); if (LCD_CLICKED) lcd_goto_menu(lcd_control_menu);
} }
#endif // HAS_LCD_CONTRAST #endif // HAS_LCD_CONTRAST