Подключаем жк дисплей модуль 5110

Для Symbian 15.05.2019
Для Symbian

Наверное, у меня, как и у всех Arduino-строителей, появилась какая-то бредовая идея в голове. Заказал в Китае все необходимые детали. Ждать пришлось очень долго, но тут раньше срока был доставлен клон платы Arduino Uno и LCD-дисплей Nokia 5110 . Так как до этого с электроникой и программированием я был не знаком, решил не терять время зря и начал учиться выводить информацию на данный модуль.

Первым делом я загуглил и попал на публикацию «Arduino, модуль Nokia 5110 LCD и кириллица» от автора . И тут я понял, что всё, что раньше задумал, будет не так уже и просто сделать.

С кириллицей я разобрался, там все просто, не буду копипастить прошлый пост, а вот с картинками действительно проблема. Стоит задача: нужно нарисовать картинку и залить ее на дисплей. Столкнулся с первой проблемой, зашел в среду программирования Arduino я увидел, что там нет такой штуки как «Вставить - Изображения», а нужно картинку записать определенным кодом в hex системе исчисления . Нашел несколько редакторов, но не тут то было. Картинка адекватно не отображается. Я начал искать проблемы что может быть.

Методом кучей экспериментов, попыток и проб получился алгоритм которым я с вами поделюсь:

1) Нужно получить саму картинку, в черно-белом формате.bmp с расширением 84 х 48 пикселей.
Сделать это можно кучей способами почти у каждом графическом редакторе есть функция «Cохранить как» где указываем необходимые параметры.
Я делал в corelDRAW . Получаем что-то похожее. Нужно уточнить, что имя картинки обязательно должно сохранено латинской раскладкой клавиатуры, так как следующая программа ее не сможет открыть.

2) Если необходимо, можно отредактировать картинку в paint, как ни странно, там есть несколько простых и интересных инструментов.

3) При помощи получаем hex-код картинки.

4) Вставляем данный код в программный код Arduino и заливаем на плату:

// SCK - Pin 8 // MOSI - Pin 9 // DC - Pin 10 // RST - Pin 11 // CS - Pin 12 // #include LCD5110 myGLCD(8,9,10,11,12); extern uint8_t OKO; float y; uint8_t* bm; int pacy; void setup() { myGLCD.InitLCD(); } void loop() { myGLCD.clrScr(); myGLCD.drawBitmap(0, 0, OKO, 84, 48); myGLCD.update(); delay(2000); }

#include const uint8_t OKO PROGMEM={ //Скопированный hex-код GLCD tools };

Для неопытных пользователей, желающих самостоятельно создавать системы управления роботизированными устройствами или средства автоматики, на рынке IT-услуг предлагаются различные аппаратные модули и их модификации. Как правило, такие устройства имеют простую архитектуру с правом копирования и прилагающимся к ним программному обеспечению в виде простых утилит. Подобные изделия могут использоваться как самостоятельно, так и подключаться к другим компьютерным системам через проводные или беспроводные интерфейсы.

Плюсы работы с графическими дисплеями

Ранее графические монохромные дисплеи использовались очень широко в производстве сотовых телефонов.

Компания Nokia выпустила огромное количество различных моделей, оснащенных таким экраном. Времена тех телефонов прошли, но дисплеи не исчезли с рынка и продолжают активно использоваться по настоящее время. Они оказались незаменимыми и, кроме того, дешевыми приборами для вывода текстовой и дисплеи работают за счет создания на экранах матриц точек, которые и высвечивают изображение. Они экономят ресурсы и время, при этом отображая большое количество информации и расходуя малое количество энергии. Существует огромное количество различных областей, где могут использоваться устройства Nokia 5110: фото-, видео-, телеаппаратуре, медицине, и во многих других отраслях.

Перед описанием порядка подключения дисплея Nokia к аппаратному модулю Arduino необходимо привести краткое представление данных устройств.

Преимущества использования Arduino Uno

Было создано множество платформ и микроконтроллеров, являющихся аналогами представленной в данной статье платформы Arduino. Одни из таких аналогов - Netmedia"s BX-24, Parallax Basic Stamp и многие другие. Однако остановимся на Arduino Uno, так как этот конструктор имеет ряд преимуществ перед остальными контроллерами. На них и стоит обратить внимание при выборе платформы для работы. В первую очередь это низкая стоимость данных устройств. Модели с этим программным обеспечением стоят менее 45 долларов, а при желании могут быть собраны вручную, так как обладают довольно простой конструкцией. Вторым пунктом стоит отметить, что платформы Arduino могут работать со всеми операционными системами: Windows, Linux, а также Macintosh OSX, тогда как все остальные ограничиваются работой исключительно с Windows.

Описание Arduino Uno

Arduino Uno - платформа для разработки и программирования различных устройств, которая имеет 14 цифровых входов и выходов, 6 аналоговых входов, несколько разъемов (USB, ICSP, силовой) и кнопку, которая имеет функцию перезагрузки устройства. В данную платформу встроен предохранитель, препятствующий короткому замыканию и обеспечивающий безопасную работу с USB-кабелем. Он срабатывает, когда через USB-порт проходит более 500 мА тока. По сравнению с универсальными компьютерами, Arduino Uno намного плотнее взаимодействует с окружающей физической средой. Платформа построена на печатной плате и предназначена для работы с открытым кодом. Ею могут воспользоваться как студенты и любители, так и профессионалы, которые могут расширять и дополнять модели по своему усмотрению и свободно работать с открытым кодом. Платформа спроектирована таким образом, чтобы в нее без труда можно было добавить новые компоненты. Конструкция предполагает выбор разработчиком самостоятельного использования устройства, поэтому не помещена в корпус и не имеет жесткой привязки к монтажу.

Описание дисплея Nokia 5110

Графический дисплей Nokia 5110 - бюджетный монохромный дисплей с диагональю 1.6", который позволяетт отображать не только текстовую информацию, но и рисунки. Его разрешение - 48х84 px, а напряжение, при котором он может работать - 2,7-5 В. Информация на экран выводится вертикальными блоками. Их высота - восемь пикселей, в ширину размер экрана составляет шесть строк. На задней панели имеются обозначения каждого контакта, что не позволит пользователям ошибиться в их расположении.

Ранее в этом блоге было рассмотрено несколько ЖК-дисплеев / индикаторов и их использование из Arduino. Существенным их недостатком является довольно большой размер, а также вес. Зачастую это не является проблемой. Например, если вы собираете DIY паяльную станцию в самодельном корпусе, там как-то без разницы, какого размера дисплей. С другой стороны, если вам нужен дисплей, скажем, на квадрокоптере , тут вес и размер становятся критически важными. Поэтому сегодня мы научимся работать с очень маленьким и легким экранчиком от телефона Nokia 5110.

Примечание: Другие посты по теме экранчиков — Научился выводить текст на ЖК-индикатор из Arduino , Об использовании экранчиков 1602 с I2C-адаптером , Работаем с LCD на базе HD44780 без библиотек , и Цифровой термометр из ЖК-матрицы, TMP36 и Arduino .

Не беспокойтесь, покупать эффективно не существующий нынче телефон Nokia 5110, выковыривать из него экранчик и выбрасывать все остальные детали не придется. Экранчик от Nokia 5110 являются очень распространенным самостоятельным модулем для радиолюбителей и стоит где-то от 2 до 5$, в зависимости от магазина. В России модуль можно купить, например, на tpai.ru , arduino-kit.ru , amperkot.ru , compacttool.ru , chipster.ru или electromicro.ru . Ну и, конечно же, по самой низкой цене экранчики продаются на AliExpress, но придется подождать месяц или два, пока они придут из Китая.

Как это часто бывает в мире Arduino, для модуля уже существуют готовые библиотеки, и не одна. Мне понравилась библиотека LCD5110, выложенная на сайте rinkydinkelectronics.com. У этой библиотеки есть две версии. Первая называется LCD5110_Basic . Она попроще и способна выводить только текст шрифтами разного размера. Есть возможность создания собственных шрифтов. Вторая версия называется LCD5110_Graph . Она имеет все возможности первой библиотеки и в дополнение к ним умеет рисовать отрезки, прямоугольники, круги и так далее.

В рамках этого поста будет использована LCD5110_Basic. Обе библиотеки прекрасно документированы и имеют множество примеров использования, так что при необходимости в LCD5110_Graph вы без труда разберетесь самостоятельно. Стоит однако отметить, что чтобы LCD5110_Basic компилировалась без warning’ов, мне пришлось внести пару небольших правок в ее код.

Итак, пример использования библиотеки:

#include

extern uint8_t BigNumbers ;
extern uint8_t MediumNumbers ;
extern uint8_t SmallFont ;

/* SCK / CLK, MOSI / DIN, DC, RST, CS */
LCD5110 lcd(2 , 3 , 4 , 6 , 5 ) ;

void setup()
{
lcd.InitLCD () ;
}

int ctr = 0 ;
void loop()
{
lcd.clrScr () ;

Lcd.setFont (BigNumbers) ;
lcd.printNumI (ctr, RIGHT, 0 ) ;

Lcd.setFont (MediumNumbers) ;
lcd.printNumF (12.34 , 2 , RIGHT, 24 ) ;

Lcd.setFont (SmallFont) ;
lcd.print ("Line 1" , 0 , 8 * 0 ) ;
lcd.print ("Line 2" , 0 , 8 * 1 ) ;
lcd.print ("Line 3" , 0 , 8 * 2 ) ;
lcd.print ("L 4" , 0 , 8 * 3 ) ;
lcd.print ("L 5" , 0 , 8 * 4 ) ;
lcd.print ("0123456789ABCD" , 0 , 8 * 5 ) ;

Ctr + = 5 ;
if (ctr >= 1000 )
ctr = 0 ;

Delay(500 ) ;
}

Как это выглядит в действии:

Надеюсь, что код разжевывать не требуется. Заметьте, что модуль питается от 3.3 В, но команды от Arduino при этом понимает нормально безо всяких преобразователей логических уровней. Соответственно, пины VCC (питание) и BL (подсветка) подключаем к 3.3 В, GND подключаем к земле, остальные пять пинов подключаем к цифровым пинам Arduino. Номера пинов передаем конструктору класса LCD5110 в соответствии с комментариями в приведенном коде.

Просто, не правда ли? Полную версию исходников к этой заметке вы найдете в этом репозитории на GitHub . Дополнения и вопросы, как всегда, всячески приветствуются.

Дополнение: Автор библиотеки для работы с экранчиком от Nokia 5110 также является автором библиотеки OLED_I2C, предназначенной для работы с не менее популярными OLED-экранчиками с I2C-интерфейсом. Пример использования OLED_I2C вы найдете в посте Используем джойстик от Sega Genesis в проектах на Arduino . Как можно было ожидать, эти две библиотеки имеют похожий интерфейс.

Инструкция

Подключим ЖК экран от Nokia 5110 к Arduino по приведённой схеме.

Для работы с этим LCD экраном написано много библиотек. Предлагаю воспользоваться этой: http://www.rinkydinkelectronics.com/library.php?id=44 (скачивание файла LCD5110_Basic.zip ).
Для установки разархивируем файл в директорию Arduino IDE/libraries/ .
Библиотека поддерживает следующие возможности.
LCD5110(SCK, MOSI, DC, RST, CS); - объявление ЖК экрана с указанием соответствия пинам Arduino;
InitLCD(); - инициализация дисплея 5110 с опциональным указанием контрастности (0-127), по умолчанию используется значение 70;
setContrast(contrast); - задаёт контрастность (0-127);
enableSleep(); - переводит экран в спящий режим;
disableSleep(); - выводит экран из спящего режима;
clrScr(); - очищает экран;
clrRow(row, , ); - очистка выбранной строки номер row, от позиции start до end;
invert(true); и invert(false); - включение и выключение инверсии содержимого LCD экрана;
print(string, x, y); - выводит строку символов с заданными координатами; вместо x-координаты можно использовать LEFT, CENTER и RIGHT; высота стандартного шрифта 8 точек, поэтому строки должны идти с интервалами через 8;
printNumI(num, x, y, , ); - вывести целое число на экран на заданной позиции (x, y); length - желаемая длина числа; filler - символ для заполнения "пустот", если число меньше желаемой длины; по умолчанию это пустой пробел " ";
printNumF(num, dec, x, y, , , ); - вывести число с плавающей запятой; dec - число знаков после запятой; divider - знак десятичного разделителя, по умолчанию точка ".";
setFont(name); - выбрать шрифт; встроенные шрифты называются SmallFont и TinyFont; вы можете определить свои шрифты в скетче;
invertText(true); и invertText(false); - инверсия текста вкл./выкл.;
drawBitmap(x, y, data, sx, sy); - вывести картинку на экран по координатам x и y; data - массив, содержащий картинку; sx и sy - ширина и высота рисунка.

Напишем такой скетч. Сначала подключаем библиотеку, затем объявляем экземпляр класса LCD5110 с назначением выводов.
В процедуре setup() инициализируем ЖК экран.
В процедуре loop() очищаем экран и пишем маленьким шрифтом произвольный текст, под ним - средним шрифтом выводим счётчик секунд.

Давайте выведем на экран картинку. Для этого подготовим монохромное изображение, которое хотим вывести на экран Nokia 5110. Помните, что разрешение экрана 48 на 84 точки, и картинка должна быть не больше. На странице http://www.rinkydinkelectronics.com/t_imageconverter_mono.php преобразуем изображение в массив битов. Скачаем полученный файл с расширением "*.c" и добавим его к проекту через меню: Эскиз -> Добавить файл... или просто поместим файл в директорию скетча, а затем перезагрузим среду разработки Arduino IDE.

Фирмы Philips PCD8544.
Для соединения модуля с другими устройствами плата содержит вилку соединителя и отверстия для припаивания проводов. Также имеются 4 установочных отверстия, расположенные по углам платы.
Монохроматический дисплей Nokia 5110 LCD (blue screen) имеет подсветку синими светодиодами. За годы производства Nokia 5110 применялся и применяется в широком спектре приложений. Модуль дисплея облегчает подключение Nokia и установку в приборе. Благодаря модулю упрощается первое знакомство электронщика, программиста с дисплеем Nokia 5110 LCD. Изначально применявшийся как индикатор мобильного телефона дисплей распространился в другие категории приборов. Его удобно использовать в измерительных приборах: вольтметрах, амперметрах, омметрах и других. Пригодится дисплей и для индикации показаний медицинских мобильных приборов. Интересно его применить для шкалы радиоприемника или индикатора уровня сигнала в звуковоспроизводящей аппаратуре. Экран разрешением 84х48 точек позволяет выводить символьную и графическую информацию.
Если у вас есть опыт работы с Nokia 3310 LCD будет легко освоить Nokia 5110 LCD, так как эти индикаторы построены на одном контроллере PCD8544.

Характеристики модуля Nokia 5110 LCD

Питание
напряжение 2,7…3,3 В
ток
подсветка отключена 5 мА
подсветка включена 20 мА

Температура воздуха во время работы 0…50
Температура хранения -10…70

ЖКИ индикатор Nokia 5110

Основные характеристики

Главный компонент модуля Nokia 5110 LCD - ЖКИ индикатор. Имеет встроенные генераторы напряжения питания и смещения ЖК-элементов, есть светодиодная подсветка. Интерфейс SPI ввода информации. Nokia 5110 может работать в четырех режимах: нормальный, инверсия изображения, пустой экран и “все точки включены”. Так же пользователю доступно управление температурным режимом, напряжением питания и смещения.

Питание
напряжение 2,7…3,3 В
ток до 320 мкА
Частота тактирования до 4 МГц
Время сброса не менее 100 нс

Структура дисплея

Дисплей представляет собой матрицу ЖК-элементов и микросхему PCD8544 для их управления, размещенные в корпусе установленном на плате. На ней так же размещены четыре светодиода подсветки экрана. Информация о состоянии точек дисплея хранится в оперативной памяти контроллера PCD8544, каждой точке соответствует один бит памяти. Так же встроен счетчик адреса, который автоматически увеличивается при записи очередного байта информации в память.

Управление дисплеем

Осуществляется по интерфейсу SPI, дисплей является ведомым устройством. Однако, вместо обычных четырех линий управления здесь лишь три. Это линии тактирования CLK, выбора кристалла SCE и входных данных MOSI. Линия выхода MISO отсутствует. Это приводит к необходимости применять специальные методы управления, подробнее об этом далее. Работает интерфейс в режимах SPI-0 или SPI-3. В Nokia 5110 присутствует также дополнительная линия управления Информация/Команда - D/C̅. Каждый байт, передаваемый в дисплей, может быть интерпретирован как команда или информационный байт, в зависимости от уровня на линии D/C̅.
Передача информации однонаправленная, и считать данные из памяти и регистров дисплея нельзя. Поэтому, в программе необходимо предусмотреть возможность контролировать состояния дисплея. Однако, есть еще одна особенность, которая усложняет управление. Эта особенность связана с организацией памяти.

Память состоит из шести банков, в каждом из которых находится 84 ячейки емкостью 1 байт.

Адресация каждого пикселя индикатора. Всего у нас 84х48 пикселей, организованных в 6 горизонтальных банков (от нуля до пяти) и 84 столбцов.

Каждый банк содержит 8 вертикально расположенных пикселей, которые в сумме шести банков дают 48 строк. На рисунке видно, как из оперативной памяти будет отображаться заданный пиксель на дисплее, каждая строка на рисунке представляет один банк.
Запись информации в память осуществляется побайтно, а не побитно, и нет возможности управлять каждой точкой, а лишь группами по восемь точек. Это в сочетании с тем, что информация из памяти Nokia 5110 LCD не может быть считана, приводит к тому, что перед отправкой необходимо запоминать, какие данные в какой ячейке хранятся. В противном случае при отправке новых данных в дисплей можно потерять информацию. Эту особенность иллюстрирует рисунок показывающий замену символа. При написании управляющей программы необходимо предусмотреть возможность хранения данных.

Замена символа Л на символ А.

Дисплей имеет размер 84х48 пикселей. Информация выводится вертикальными блоками высотой 8 пикселей, значения которых определяются значениями бит в выводимом байте. Младший бит кодирует верхний пиксель.
Забегая вперед описания команд скажем. Команды 1xxxxxxx и 01000yyy определяют координаты курсора - строку и позицию, в которых будет отображены следующие 8 бит данных. После того как байт выведен, курсор автоматически смещается на соседнюю позицию.
Если командой 00100PDVH выбран горизонтальный режим адресации V=0, то курсор смещается вправо и следующий байт данных будет отображен на соседней позиции справа. Когда достигнут правый край экрана, курсор перемещается в начало следующей строки. Если же выбрана вертикальная адресация V=1, то курсор смещается вниз, на следующую строку, а после последней строки курсор смещается на одну горизонтальную позицию вправо и устанавливается на верхнюю строку.
В качестве промежуточной памяти можно использовать память управляющего контроллера, в которой будет храниться копия данных в дисплея. Перед отправкой необходимо корректировать данные, в зависимости от того, какая информация хранится в промежуточной памяти.

Команды управления Nokia 5110

Управление дисплеем осуществляется отправкой командного слова через интерфейс SPI. Размер слова 1 байт. Команды управления разделены на 3 категории.

Верховные функции управления

Установить тип функций - указывает, с каким типом функций будет работать модуль основными или расширенными.
Установить режим питания - включает или отключает питание.
Установить режим адресации - определяет тип адресации памяти: вертикальный или горизонтальный. В первом случае после записи байта данных будет увеличен счетчик Y-адреса, то есть, запись будет идти по столбцам. Во втором - счетчик Х-адреса, запись будет идти по строкам.
Функции передаются Nokia 5110 LCD, когда на линии D/C̅ низкий уровень. Они определяются одним командным словом. Это слово необходимо отправить в дисплей в начале работы. Формат:

0 0 1 0 0 PD V H

Бит PD определяет режим питания, установленный PD означает режим отключения (power-down).
Бит V режим адресации: 1 - вертикальная, 0 - горизонтальная.
Бит H тип функций, с которыми будет идти дальнейшая работа: 0 - обычный, 1 - расширенный.
Как видно, необходимо запоминать текущее состояние дисплея, чтобы при установке нового значения параметра не потерять информацию о значениях других. Команда 00100PDVH присутствует в обоих наборах команд.

Основные функции

Установить режим отображения 00001D0E. Определяет режим отображения: пустой экран, все точки включены, нормальное отображение, инверсное отображение. E - признак инверсии изображения, D - вывод изображения. Если D=0, то экран либо полностью очищен E=0, либо полностью черный E=1.
Установить Х-адрес команда 1xxxxxxx, или 0x80 + x выбор горизонтальной позиции в текущей строке, куда будет выводиться изображение. Где x=0 самая левая позиции, 83 - самая правая.
УстановитьY-адрес команда 01000yyy устанавливает Y-адрес ячейки, куда будет записан следующий байт. Команда, или 0x40+y выбор номера строки (страницы) на которую выводится изображение. Y=0 самая верхняя строка, 5 - самая нижняя. Строка имеет высоту 8 точек.

Расширенные функции

Расширенный набор команд выбирается после передачи команды 00100PDV1.
Установить температурный режим. Команда 000001tt, или 0x04 + t выбор одного из четырёх режимов температурной коррекции. В зависимости от режима будет по-разному изменяться напряжение дисплея при изменении температуры.
Установить напряжение смещения ЖК-элементов дисплея. Команда 00010bbb, или 0x10 + b выбор одного из восьми режимов расчета смещения уровней для управления LCD. Для обычных дисплеев от Nokia рекомендуется режим 0001011, или 0x13.
Установить напряжения питания ЖК-элементов дисплея. Команда 1vvvvvvv, или 0x80 + v выбор напряжения на генераторе повышенного напряжения для LCD. При v=0 генератор отключен. Выходное напряжение рассчитывается по формуле VLCD = 3.06 В + v * 0.06 В. В зависимости от выбора способа коррекции напряжения, это значение изменяется в зависимости от температуры. Чтобы не повредить дисплей при низких температурах, рекомендуется это значение менее 8,5 В, т. е. v<=90. Для обычных дисплеев Nokia это нормальное рабочее значение этого параметра примерно равно 56, т. е. команда принимает вид 10111000, или 0xB8.
Работа с основными и расширенными функциями проще, поскольку каждой из них соответствует отдельное командное слово.
Необходимо помнить, что для работы с определенным типом функций необходимо перевести дисплей в режим работы с этими функциями. Иначе отправка слова команды приведет к некорректному выполнению этой команды. Более подробно о командах управления можно прочитать в документации на странице 11 .

Инициализация дисплея

Должна быть выполнена в течении 30 мс после появления питания в следующей последовательности:
сбросить, установив на соответствующем входе низкий уровень на 100 нс или более,
включить дисплей и выбрать расширенный набор команд, послав 0x21,
направить команду смещения напряжения 0x13,
установить температурную коррекцию командой 0x04,
включить генератор повышенного напряжения на уровень 6,42 В командой 0xB8,
вернуться в стандартный набор команд, послав 0x20,
включить графический режим командой 0x0C.
После этих действий Nokia 5110 LCD готов к работе.

Подключение модуля Nokia 5110 LCD

Вывод сигналов на контакты модуля показан на изображении в верху страницы. Также может быть другое расположение контактов показанное на рисунке.

Один из вариантов расположения контактов.

Сигналы и линии модуля

VCC Питание 3,3 В
GND Общий провод
SCE Включение, активный низкий уровень
Reset Сброс, активный низкий уровень
D/C̅ Данные/команда: 0 - данные, 1 - команда
SDIN Вход интерфейса
SCLC Тактовый сигнал
LED Подсветка. Для модулей на красной плате соединить с общим, для синих модулей соединить с питанием. Применять в цепи подсветки резистор 330 Ом. В некоторых модификациях уже установлен резистор в некоторых нет. Для определения наличия резистора и выбора оптимального режима подсветки следует контролировать ток модуля и ток подсветки. Он не должен превышать 20 мА.

Если к интерфейсу SPI микроконтроллера не подключены другие устройства, то для экономии контактов основного управляющего модуля прибора и сокращения количества линий связи контакт выбора активного устройства SCE следует соединить на плате модуля с контактом GND. Но есть недостаток. Если контроллер Nokia потерял синхронизацию с МК, то это теперь невозможно обнаружить.
Более надежное подключение следует делать так. Притягивать эту линию к высокому уровню резистором 100-500 кОм, чтобы исключить воздействие помех на контроллер, пока МК находится в состоянии сброса.
При работе с микроконтроллерами AVR, удобно использовать интерфейс USART в режиме SPI ведущий. Режим SPI-3 (CPHA=1, CPOL=1). Это значит, что пока обмен отсутствует, на линии SCLK высокий уровень, а данные с линии SDIN контроллер читает по нарастающему фронту на линии SCLK в течение 100 нс. При этом они должны быть выставлены минимум за 100 нс до нарастания фронта. Передача осуществляется по 8 бит, сначала старший.
Уровень на линии D/C̅ определяет, как трактовать полученные данные. Высокий уровень означает, что переданные данные должны быть выведены на дисплей, низкий уровень - передана команда. Контроллер читает значение на этой линии вместе с последним (младшим) битом каждого переданного байта данных. При использовании асинхронной аппаратной передачи с этим могут возникнуть трудности. Перед установкой уровня необходимо дождаться завершения передачи предыдущего байта.

Соединение модуля Nokia 5110 LCD и Arduino UNO.

Входные сигналы модуля должны соответствовать логическим уровням схемы питаемой напряжением 3,3 В. При работе с микроконтроллером, имеющим питание 5 В, обязательно применяются цепи согласования уровней.

Графика

В начале подготовки графического изображения следует подготовить в любом графическом редакторе черно-белое изображение в формате *.bmp с разрешением 84х48 точек. Мы подготовили такую картинку в Paint, вот она:

Имя файла картинки должно быть сохранено латинскими буквами. При помощи программы



Рекомендуем почитать

Наверх