помощь в библиотеке HX1230_FB
- Войдите на сайт для отправки комментариев
Ср, 26/02/2020 - 23:20
Есть библиотека HX1230_FB для дисплея.
https://github.com/cbm80amiga/HX1230_FB
Никак не могу задействовать из нее функцию отключения подсветки и собственно экрана (для экономии энергии)
может кто сталкивался с этим? прошу подсказать.
даже на маленьком примере не срабатывает=(
подключение, как рекомендует автор.
/*
HX1230 96x68 LCD connections (header on bottom, from left):
#1 RST - D6 or any digital
#2 CE - D7 or any digital
#3 N/C
#4 DIN - D11/MOSI
#5 CLK - D13/SCK
#6 VCC - 3V3
#7 BL - 3V3 or 8 digital
#8 GND - GND
*/
#define LCD_RST 6
#define LCD_CS 7
#define LCD_BL 8
#include <HX1230_FB.h>
#include <SPI.h>
HX1230_FB lcd(LCD_RST, LCD_CS);
#include "chicago_font.h"
void setup() {
pinMode(LCD_BL, OUTPUT);
digitalWrite(LCD_BL, HIGH);
lcd.init();
}
void loop() {
lcd.setFont(Chicago21x18);
lcd.printStr(ALIGN_LEFT, 2, "TEST");
lcd.display();
lcd.cls();
delay (2000);
//lcd.sleep(HX1230_POWER_OFF); //и так пробовал. тут только изображение пропадает, но подсветка горит
//lcd.sleep(HX1230_DISPLAY_OFF); //и так пробовал. тут только изображение пропадает
lcd.displayOn(HX1230_DISPLAY_OFF); //и так пробовал. вообще ничего не происходит
//lcd.displayOn(HX1230_POWER_OFF); //и так пробовал. вообще ничего не происходит
//lcd.displayMode(HX1230_DISPLAY_OFF); //и так пробовал. тут только изображение пропадает, но подсветка горит
//lcd.displayMode(HX1230_POWER_OFF); //и так пробовал. в этом варианте только моргает изображение один раз, но подсветка горит
delay (2000);
}
УПС, а куда текст исчез?
еще раз:
Есть библиотека HX_1230_FB для дисплея.
Никак не могу задействовать из нее функцию отключения подсветки и собственно экрана (для экономии энергии)
может кто сталкивался с этим? прошу подсказать.
даже на маленьком примере не срабатывает=(
подключение, как рекомендует автор.
/* HX1230 96x68 LCD connections (header on bottom, from left): #1 RST - D6 or any digital #2 CE - D7 or any digital #3 N/C #4 DIN - D11/MOSI #5 CLK - D13/SCK #6 VCC - 3V3 #7 BL - 3V3 or 8 digital #8 GND - GND */ #define LCD_RST 6 #define LCD_CS 7 #define LCD_BL 8 #include <HX1230_FB.h> #include <SPI.h> HX1230_FB lcd(LCD_RST, LCD_CS); #include "chicago_font.h" void setup() { pinMode(LCD_BL, OUTPUT); digitalWrite(LCD_BL, HIGH); lcd.init(); } void loop() { lcd.setFont(Chicago21x18); lcd.printStr(ALIGN_LEFT, 2, "TEST"); lcd.display(); lcd.cls(); delay (2000); //lcd.sleep(HX1230_POWER_OFF); //и так пробовал. тут только изображение пропадает, но подсветка горит //lcd.sleep(HX1230_DISPLAY_OFF); //и так пробовал. тут только изображение пропадает lcd.displayOn(HX1230_DISPLAY_OFF); //и так пробовал. вообще ничего не происходит //lcd.displayOn(HX1230_POWER_OFF); //и так пробовал. вообще ничего не происходит //lcd.displayMode(HX1230_DISPLAY_OFF); //и так пробовал. тут только изображение пропадает, но подсветка горит //lcd.displayMode(HX1230_POWER_OFF); //и так пробовал. в этом варианте только моргает изображение один раз, но подсветка горит delay (2000); }Подсветка отдельный вывод на индикаторе BL,добавьте
В демке так же предлагается засадить BL на PWM-пин.
И учтите, что: #7 BL - 3V3 or any digital via resistor
Подсветка отдельный вывод на индикаторе BL,добавьте
Имеете в виду вместо команд просто пином управлять? так срабатывает, подсветка гаснет. но почему библиотечная команда не идет? в остальном библиотека нравится.
В демке так же предлагается засадить BL на PWM-пин.
И учтите, что: #7 BL - 3V3 or any digital via resistor
так я и сажаю на 8ой пин.
вот же в 15ой строке
15#define LCD_BL 823pinMode(LCD_BL, OUTPUT);24digitalWrite(LCD_BL, HIGH);Но питание то не отключится при этом.=(
Вот же в библиотеке есть команды. Почему-то не срабатывают....
// ---------------------------------------------------------------- void HX1230_FB::displayOn(bool mode) { CS_ACTIVE; sendCmd(mode ? HX1230_DISPLAY_ON : HX1230_DISPLAY_OFF); CS_IDLE; } // ---------------------------------------------------------------- // val=HX1230_POWER_ON, HX1230_POWER_OFF, HX1230_DISPLAY_NORMAL, HX1230_DISPLAY_TEST // HX1230_INVERT_OFF, HX1230_INVERT_ON, HX1230_DISPLAY_ON, HX1230_DISPLAY_OFF void HX1230_FB::displayMode(byte val) { CS_ACTIVE; sendCmd(val); CS_IDLE; }Ну, ёпрст. Делай displayOff() и следом за ним - гаси пином подсветку.
Но питание то не отключится при этом.=(
Вот же в библиотеке есть команды. Почему-то не срабатывают....
// ---------------------------------------------------------------- void HX1230_FB::displayOn(bool mode) { CS_ACTIVE; sendCmd(mode ? HX1230_DISPLAY_ON : HX1230_DISPLAY_OFF); CS_IDLE; } // ---------------------------------------------------------------- // val=HX1230_POWER_ON, HX1230_POWER_OFF, HX1230_DISPLAY_NORMAL, HX1230_DISPLAY_TEST // HX1230_INVERT_OFF, HX1230_INVERT_ON, HX1230_DISPLAY_ON, HX1230_DISPLAY_OFF void HX1230_FB::displayMode(byte val) { CS_ACTIVE; sendCmd(val); CS_IDLE; }Вы же сами видите что уходит в сон контроллер жки,подсветку отдельной командой которую я вам дал,либо правьте библиотеку сами-делов на пару минут с перекуром
Чтоб питание отключалось СОВСЕМ ставьте ключ по питанию