Backlight detection
This commit is contained in:
parent
5a662413e6
commit
3b005ae38f
3 changed files with 16 additions and 2 deletions
|
@ -12,6 +12,7 @@
|
|||
|
||||
#ifdef LCD_BL_PIN
|
||||
|
||||
bool backlightSupport = 0;
|
||||
int16_t backlightLevel = 0;
|
||||
int16_t backlightLevel_old = 0;
|
||||
unsigned long backlightTimer_period = 10000ul;
|
||||
|
@ -21,7 +22,7 @@ LongTimer backlightTimer;
|
|||
static void backlightDim()
|
||||
{
|
||||
// if (backlightIsDimmed) return;
|
||||
backlightLevel /= 4; //make the display half as bright.
|
||||
backlightLevel /= 4; //make the display dimmer.
|
||||
backlightIsDimmed = true;
|
||||
}
|
||||
|
||||
|
@ -40,6 +41,7 @@ void backlightTimer_reset() //used for resetting the timer and waking the displa
|
|||
|
||||
void backlight_update()
|
||||
{
|
||||
if (!backlightSupport) return;
|
||||
if (backlightTimer.expired(backlightTimer_period)) backlightDim();
|
||||
|
||||
if (backlightLevel != backlightLevel_old) //update pwm duty cycle
|
||||
|
@ -53,6 +55,14 @@ void backlight_update()
|
|||
|
||||
void backlight_init()
|
||||
{
|
||||
//check for backlight support on lcd
|
||||
SET_INPUT(LCD_BL_PIN);
|
||||
WRITE(LCD_BL_PIN,HIGH);
|
||||
_delay(10);
|
||||
backlightSupport = !READ(LCD_BL_PIN);
|
||||
if (backlightSupport == 0) return;
|
||||
|
||||
//initialize backlight pin
|
||||
SET_OUTPUT(LCD_BL_PIN);
|
||||
WRITE(LCD_BL_PIN,0);
|
||||
backlightTimer_reset(); //initializes eeprom data and starts backlightTimer
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
#include <inttypes.h>
|
||||
|
||||
extern int16_t backlightLevel;
|
||||
extern bool backlightSupport;
|
||||
|
||||
extern void backlight_update();
|
||||
extern void backlight_init();
|
||||
|
|
|
@ -5774,7 +5774,10 @@ static void lcd_settings_menu()
|
|||
SETTINGS_SOUND;
|
||||
|
||||
#ifdef LCD_BL_PIN
|
||||
MENU_ITEM_EDIT_int3_P(_i("Backlight"), &backlightLevel, 0, 255);
|
||||
if (backlightSupport)
|
||||
{
|
||||
MENU_ITEM_EDIT_int3_P(_i("Backlight"), &backlightLevel, 0, 255);
|
||||
}
|
||||
#endif //LCD_BL_PIN
|
||||
|
||||
if (farm_mode)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue