Как использовать графические ЖК-дисплеи с Raspberry Pi?
Blaze Display Technology Co., Ltd. | Updated: Nov 27, 2018
Как подключить графический ЖК-дисплей к Raspberry PI?
Используется ЖК-дисплей 128×64 с контроллером ЖК-дисплея ST7565. Его можно запитать напрямую от шины Raspberry Pi 3,3 В. Для данных требуется 5 контактов GPIO.
Схема следующая: CS (выбор чипа), RST (сброс) и A0 (выбор регистра) можно подключить к любым 3 контактам GPIO. В этом примере значения по умолчанию — 8, 24 и 25. При создании экземпляра класса Python ST7565 в качестве параметров можно указать различные значения. SCLK (последовательный тактовый сигнал) на GLCD поступает на GPIO 11, который является последовательным тактовым сигналом Pi. SID (последовательные входные данные) на GLCD поступает на GPIO 10 на Pi, который является MOSI. GPIO 10 и 11 должны использоваться для SID и SCLK. Vdd подключен к контакту 3,3 В на PI, а заземление также подключено.
ЖК-дисплей имеет подсветку RGB. Контакты светодиода могут подключаться к GPIO 16, 20 и 21. Чтобы управлять цветом с Pi, укажите контакты RGB при создании экземпляра класса ST7565. Резисторы должны быть включены последовательно, чтобы ограничить ток и предотвратить выход светодиода из строя. Яркость светодиода можно изменять, используя различные значения резисторов. Лучше всего настроить ток примерно на 20 мА, конечно, другие значения приведут к другому сочетанию цветов. Очень сложно смешать чистый белый цвет. Пожалуйста, тщательно рассчитайте значение резистора, при 40 мА яркость светодиода резко уменьшится со временем, при токе около 60 мА светодиод может выйти из строя и быть необратимо поврежденным.
Как запрограммировать графический ЖК-дисплей?
Дисплей имеет разрешение 128 пикселей по горизонтали и 64 пикселя по вертикали. ЖК-дисплей можно разбить на 8 горизонтальных страниц. Они пронумерованы от 3 до 0 и от 7 до 4 сверху вниз. Каждая страница включает 128 столбцов и 8 строк пикселей. Для обращения к пикселям, указания номера страницы и столбца, и отправки байта для заполнения 8 вертикальных пикселей одновременно.
Дисплей имеет SPI (последовательный периферийный интерфейс) для подключения к Pi. SPI требует 3 линий MOSI, MISO и Clock. Pi является ведущим, а GLCD — ведомым. В этом примере выполняется только запись в GLCD и не готов, поэтому необходимо подключение к линиям MOSI и Clock. MOSI — это выход Pi в GLCD, а Clock синхронизирует синхронизацию.
1. Сначала включите SPI на Raspberry Pi
2. В меню raspi-config выберите Advanced Options, затем SPI. Затем выберите Yes для «Whole want the SPI interface to be enabled». Нажмите OK, Reboot. Выберите Yes для «the SPI kernel module to be load by default». Перезагрузите Pi после включения SPI. Затем протестируйте SPI с помощью IsmodIt, он должен вернуть SPI_bcm2708 или spi_bcm2835 в зависимости от версии Pi. Библиотека Python SPI требует python2.7 dev, который можно установить с помощью apt-get install.
3. Библиотека Python SPI называется py-spidev. Ее можно установить с помощью git:GLCD Библиотеку Python для Pi можно загрузить с сайта GitHub.
4. Основная библиотека ST7565 (st7565.py) обрабатывает рисование, текст и растровые изображения, а также модуль шрифтов (xglcd_font.py) для загрузки шрифтов X-GLCD.