backlight.cpp 802 B

12345678910111213141516171819202122232425262728293031323334353637
  1. //backlight.cpp
  2. #include "backlight.h"
  3. #include <avr/eeprom.h>
  4. #include <Arduino.h>
  5. #include "eeprom.h"
  6. #include "Marlin.h"
  7. #include "pins.h"
  8. #include "fastio.h"
  9. // #include "Timer.h"
  10. // #include "Configuration.h"
  11. #ifdef LCD_BL_PIN
  12. int16_t backlightLevel = 0;
  13. int16_t backlightLevel_old = 0;
  14. // uint16_t backlightCounter = 0;
  15. void backlight_update()
  16. {
  17. if (backlightLevel != backlightLevel_old) //update level
  18. {
  19. analogWrite(LCD_BL_PIN, backlightLevel);
  20. backlightLevel_old = backlightLevel;
  21. eeprom_update_byte((uint8_t *)EEPROM_BACKLIGHT_LEVEL, backlightLevel);
  22. }
  23. }
  24. void backlight_init()
  25. {
  26. SET_OUTPUT(LCD_BL_PIN);
  27. WRITE(LCD_BL_PIN,0);
  28. backlightLevel = eeprom_read_byte((uint8_t *)EEPROM_BACKLIGHT_LEVEL);
  29. backlight_update();
  30. }
  31. #endif //LCD_BL_PIN