Не до конца заводится Nokia LCD 5110
- Войдите на сайт для отправки комментариев
Доброго времени суток :)
Попробовал сегодня подключить завалявшийся дисплей от нокии, с использованием библиотек Adafruit. По большому счету, как вот здесь http://zelectro.cc/nokia5110_module_arduino И вот ведь непорядок - не рисует, чертяга!
Симптомы такие - при включении весь экран заливает черным. Причем он вроде как проглатывает команду установки констрастности, потому что в зависимости от прописанного уровня констрастности меняется, так скажем оттенок этой всей заливки. Информации, которую хочу там увидеть, не появляется :(
Ардуино поставил работать от 3.3 V, на дисплей подал тоже 3.3 V, мультиметром померял. Код и подключение как по ссылке выше, разве что пины переназначил. Поэтому осмелюсь не приводить скетч целиком, а только измененный фрагмент.
Для наглядности: гифка с двумя инициализациями подряд с разными контрастностями
Низ дисплея точно так же, как тут http://aterlux.ru/articles/img/fullsize/pcd8544_module2.jpg
01
#include <Adafruit_GFX.h>
02
#include <Adafruit_PCD8544.h>
03
04
// pin 8 - Serial clock out (SCLK)
05
// pin 9 - Serial data out (DIN)
06
// pin 10 - Data/Command select (D/C)
07
// pin 11 - LCD chip select (CS)
08
// pin 12 - LCD reset (RST)
09
Adafruit_PCD8544 display = Adafruit_PCD8544(8, 9, 10, 11, 12);
10
11
void
setup
(){
12
//дисплей
13
display.begin();
// Инициализация дисплея
14
display.setContrast(65);
// Устанавливаем контраст
15
display.setTextColor(BLACK);
// Устанавливаем цвет текста
16
display.setTextSize(1);
// Устанавливаем размер текста
17
display.clearDisplay();
// Очищаем дисплей
18
display.display();
19
delay(1000);
20
display.begin();
// Инициализация дисплея
21
display.setContrast(90);
// Устанавливаем контраст
22
display.setTextColor(BLACK);
// Устанавливаем цвет текста
23
display.setTextSize(1);
// Устанавливаем размер текста
24
display.clearDisplay();
// Очищаем дисплей
25
display.display();
26
delay(1000);
27
// Рисуем несколько пикселей (точек)
28
display.drawPixel(0, 0, BLACK);
29
display.drawPixel(1, 1, BLACK);
30
display.drawPixel(2, 2, WHITE);
// Посередине белый пиксель
31
display.drawPixel(3, 3, BLACK);
32
display.drawPixel(4, 4, BLACK);
33
display.display();
34
delay(2000);
35
// Рисуем диагональ
36
display.drawLine(0, LCDHEIGHT-1, LCDWIDTH, 0, BLACK);
// x0, y0, x1, y1, color
37
display.display();
38
delay(2000);
39
40
display.clearDisplay();
41
display.display();
42
delay(1000);
43
//---дисплей
44
}
Будем считать что отбой, Hello World с плейграунда заработал. Остается колупать разницу между двумя скетчами-примерами.
По крайней мере дисплей живой, это радует :)