2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Подключение и использование LCD Nokia 3310 (5110) к AVR-микроконтроллеру

Как подключить LCD дисплей для Nokia 5110 к Arduino

Старые «Нокиа» смело можно назвать легендарными телефонами. В 90-х годах они были вне конкуренции. Удивительно, но даже при падении с большой высоты они не ломались. Именно поэтому в народе их прозвали неубиваемыми. Владельцы этих телефонов рассказывали, что ни какие жизненные перипетии не были способны вывести аппарат из строя.

Героем этой статьи стал телефон 1998 года выпуска – Nokia 5110. Конечно же, его 19-летняя история не позволяет оценивать данный девайс по привычным критериям, которые актуальны для современных смартфонов. Этот аппарат представляет собой простую «звонилку». Он поддерживает только сети GSM 900. Такие характеристики остались в далеком прошлом, однако этот телефон-легенда работает до сих пор. Итак, давайте поностальгируем.

0100 0010 😉

Отображение графики на дисплее Nokia 5110

Постановка задачи

Обзор задачи

Выбор микроконтроллера

В данный момент, на рынке существует богатый ассортимент микроконтроллеров (МК) с различными характеристиками: от PIC-контроллеров, до МК, программируемых на высокоуровневых языках с платами, на которых уже присутствует всё для работы. Одими из подобных контроллеров являются контроллеры выпускаемые под маркой Arduino и их «клоны».

Arduino — торговая марка аппаратно-программных средств для построения простых систем автоматики и робототехники, ориентированная на непрофессиональных пользователей. Программная часть состоит из бесплатной программной оболочки (IDE) для написания программ, их компиляции и программирования аппаратуры. Аппаратная часть представляет собой набор смонтированных печатных плат, продающихся как официальным производителем, так и сторонними производителями. Полностью открытая архитектура системы позволяет свободно копировать или дополнять линейку продукции Ардуино [wikiArd].

В нашей стране Ардуино имеет широкое распространение и большое сообщество. Кроме того, в открытых источниках доступны различные примеры кода готового к использованию, что и повлияло на выбор Arduino как платформы для управления дисплеем.

Компания Arduino имеет несколько готовых вариантов плат. Для использования в данной работе была выбранна плата Arduino UNO, как плата широко распространенная и обладающая применимостью в других проектах.

Рис.1: Внешний вид платы Arduino UNO

Технически плата Arduino Uno (рис. 1) построена на базе микроконтроллера ATmega328. Платформа имеет 14 цифровых вход/выходов (6 из которых могут использоваться как выходы ШИМ), 6 аналоговых входов, кварцевый генератор 16 МГц, разъем USB, силовой разъем, разъем ICSP и кнопку перезагрузки. Для работы необходимо подключить платформу к компьютеру посредством кабеля USB, либо подать питание при помощи адаптера AC/DC или батареи[ArdSpec].

Дисплей

Рис. 2: Две различимые модификации дисплеев Nokia 5110 из Китая

Дисплей от телефона Nokia 5110 доступен в различных вариантах: из старых телефонов и от китайских производителей. Первый вариант имеет сложности, т.к. телефон этой модели уже не выпускается, и даже если заполучить такой телефон, то дисплей подключен к плате с помощью специфичной контактной группы, которая затрудняет его монтаж и использование. Но у дисплеев фирмы Nokia есть неоспоримое преимущество: они сделаны на контроллере Philips PCD8544.

Дисплеи от китайских производителей более доступны, они продаются перекупщиками и доступны для заказа из Китая. Существует две отличимые внешне модификации: на синем и на красном текстолите (рис. 2). Эти две модификации отличаются порядком вывода контактов и у «красной» модификации есть возможность подключения контактов сверху. Но, несмотря на доступность этих модулей, существует один неизвестный элемент: контроллер дисплея. До сих пор не известно, какой контроллер находится в китайских дисплея. С некоторыми исправлениями программный код совместим.

  • Контроллер работает только в режиме отображения. Что значит нельзя узнать в каком состоянии диплей находится сейчас. Это требует точного соблюдения таймингов при выводе информации. К счастью контроллер может работать на достаточно большой скорости и это не является проблемой.
  • Невозможно работать с изображением в режиме «чтение-изменение-запись». Вывод сложного изображения, где потребуется совмещение разной графической информации, может быть осуществлён только с использованием внеэкранного буфера, или предварительного полного расчёта совмещения изображений.
  • В то же время, контроллер обеспечивает крайне низкое энергопотребление:
    менее 300

мкА (с типичными дисплеями Nokia) в рабочем режиме, и около 1,5

мкА в режиме отключения.

  • Контроллер имеет встроенный генератор повышенного напряжения, поэтому отдельно подводить напряжение для питания дисплея не требуется.
  • Несмотря на то, что рабочим напряжением является напряжение 2,7-3,3 Вольта и все вводы необходимо подключать через делители (как в случае с Arduino, где рабочее напряжение 5 В) — вводы дисплея лояльны к 5 В, но питание мк дисплея все равно надо подключать к допустимому напряжению. Скорее всего, это может сказываться на сроке службы дисплея, но в рамках этой курсовой работы и простоты подключения к Arduino — делители напряжения будут отсутствовать.

    Работа дисплея

    • SCLK — тактовый импульс для передачи данных.
    • SDIN — передаваемые данные.
    • D/C — выбор типа передаваемых данных: высокий уровень — графические данные, низкий — инструкция.
    • SCE — выбор чипа. Передача данных осуществляется при низком уровне на этой линии. При высоком уровне данные игнорируются.
    • RES — сброс. При низком уровне происходит аппаратный сброс контроллера.

    Фирменному дисплею соответствует Область отображения 84х48 точек (что позволяет разместить 6 строк текста по 14 символов 5×7 в каждой), интерфейс SPI с пропускной способностью до 4 Mbit/s. Но надо учитывать, что в китайских дисплеях той же области экрана соответствует блок памяти для 102х64 точки[radiokot29]. Так же, стоит учитывать случай, если частота работы МК превышает 8МГц, следует ограничить максимальную скорость передачи.

    Кроме линий передачи данных, на модуле с дисплеем обычно присутствует вход управления подсветкой, соединённый с катодом светодиодов. Аноды же через ограничивающие резисторы подключены к линии питания. Для постоянно работающей подсветки можно данный вход подключить напрямую, или через резистор к «земле». Для управления от МК подсветка может быть подключена через транзистор. Поскольку подсветка потребляет менее 20мА, при подключении к МК AVR возможно также подключать её напрямую к выводу МК.

    Команды передаются контроллеру дисплея, когда на линии D/C̅ низкий уровень. Контроллер работает с двумя наборами команд: обычным и расширенным. Обычный абор команд задает режим работы дисплея и положение вывода изображения. В расширенном наборе команд присутствует выбор режима температурной коррекции напряжения.

    мс после появления питания.

    1. Выполнить аппаратный сброс, установив на линии RES низкий уровень минимум на 100нс;
    2. Включить дисплей и выбрать расширенный набор команд, послав 0x21;
    3. Установить схему смещения напряжения, команда 0x13;
    4. Установить режим температурной коррекции, команда 0x04;
    5. Включить генератор повышенного напряжения на уровне 6.42 Вольта, команда 0xB8;
    6. Вернуться в стандартный набор команд, послав 0x20;
    7. Включить вывод графической информации на дисплей командой 0x0C.

    Пример кода инициализации:

    Вывод графической информации
    Дисплей имеет размер 84х48 пикселей. Информация выводится Информация выводится вертикальными блоками высотой 8 пикселей, значения которых определяются значениями бит в выводимом байте. Младший бит кодирует верхний пиксель (рис. 3).

    Рис. 3: Схема соответствия памяти и пикселей дисплея

    Таким образом, графическая область дисплея представлена в виде шести строк, каждая по 8 пикселей в высоту.

    Команды 1xxxxxxx и 01000yyy определяют координаты курсора — строку и позицию, в которых будет отображены следующие 8 бит данных. После того как байт выведен, курсор смещается на соседнюю позицию.

    Если командой 00100PVH выбран горизонтальный режим адресации (V = 0), то курсор смещается вправо и следующий байт данных будет отображён на соседней позиции справа. Когда достигнут правый край экрана, курсор перемещается на начало следующей строки. Если же выбрана вертикальная адресация (V = 1), то курсор смещается вниз, на следующую строку, а после последней строки курсор смещается на одну горизонтальную позицию вправо и устанавливается на верхнюю строку.

    Программирование микроконтроллера

    Программирование платы Arduino происходит в специальной среде Arduino IDE. Для работы дисплея используетя готовая библиотека — Adafruit_GFX_Librarycite​. Библиотека свободно распространяется по BSD-лицензии. Она реализует общение между ардуино и дисплеем по протоколу SPI. В библиотеки реализован ряд функций необходимых для работы с дисплеем (такие как инициализация дисплея, сброс) и функции облегчающие труд разработчика (попиксельное рисование, рисование линий, латинский шрифт и другие).

    Читать еще:  Лада Тарзан: история создания, развитие модели, достоинства и недостатки

    Для вывода попиксельного изображения на дисплей в данной курсовой используется функция drawBitmap.

    С использованием этой библиотеки, реализация программы для Arduino сводится к объявлению попиксельного изображения, команд инициализации и команды вывода изображения.

    В своё время уже писал, как применял этот замечательный дисплей с PIC микроконтроллерами . Сейчас попробуем его подключить к STM32.

    Применение дисплея nokia1100 с stm32

    На самом деле портировать код со своего раннего проекта и оформить его в библиотеку сложности не составило. Во время проверки схему тоже не изменял – взял свой старый готовый модуль из того же проекта, где подключал его к pic16f628a с гасящими резисторами на 5В логических линях контроллера, и подключил его к установленному на STM32vlDiscovery контроллеру STM32F100RB. Но по уму для STM с питанием и логическим уровнем в 3,3В подключение будет выглядеть следующим образом:

    Схема разводки дисплея

    Для упрощения подсветку убрал.

    Схема подключения дисплея к контроллеру

    Возможности библиотеки:
    lcd1100_clear() – очистка дисплея
    lcd1100_gotoxy(x, y) – установка курсора
    Где: x, y – координаты курсора
    lcd1100_putch(c) – вывод символа
    lcd1100_putch_inv(c) – вывод инвертированного символа
    c — символ в ASCII кодировке
    lcd1100_puts(*s) – вывод строки
    lcd1100_puts_inv(*s) – вывод инвертированной строки
    *s – ссылка на строку (массив из символов)
    lcd1100_test() – тестовое заполнение всего дисплея символами из ASCII таблицы
    lcd1100_putch_big(col, row, c) – вывод большого символа
    col – ширина символа, row – высота символа, c – символ в ASCII
    lcd1100_puts_big(col, row, *s) – вывод строки из больших символов
    col – ширина символа, row – высота символа, *s – ссылка на строку
    Последние две функции, используя те-же ASCII символы 5х8, выводя их в 2, 4 и 8 раз больше (заложено увеличение кратное только 2x).

    Таблица ASCII, или шрифт, был вручную прорисован с помощью программы – символьный генератор .

    Для работы библиотеки в начале файла lcd-nokia1100.h нужно задать настройки порта и выводов для работы с дисплеем. Для приведенного примера с подключением линий SCLK к PB12, SDA к PB13, CS к PB14 и RES к PB15 инициализация будет выглядеть следующим образом:

    Настройка рассчитана на управление подключаемым дисплеем с одного порта контроллера.

    Код примера работы с дисплеем:

    Изменив настройки конфигурации, функцию инициализации и возможно подправив задержку, данную библиотеку можно будет применить для любого микроконтроллера.

    22 комментария на « Подключение дисплея от nokia1100 к STM32»

    Игорь пишет 18.09.2013 в 02:30 #

    Скачал пример. Все компилится без ошибок. Загружаю прошивку — экран не реагирует. Экран рабочий 100%, подключенный к Меге88 работает как положено. В прошивке Меги используется библиотека с такой процедурой инициализации дисплея:

    _delay_ms(5); // выжидем не менее 5мс для установки генератора(менее 5 мс может неработать)

    nlcd_SendByte(CMD_LCD_MODE,0xE2); // *** SOFTWARE RESET

    nlcd_SendByte(CMD_LCD_MODE,0x3A); // *** Use internal oscillator
    nlcd_SendByte(CMD_LCD_MODE,0xEF); // *** FRAME FREQUENCY:
    nlcd_SendByte(CMD_LCD_MODE,0x04); // *** 80Hz
    nlcd_SendByte(CMD_LCD_MODE,0xD0); // *** 1:65 divider

    nlcd_SendByte(CMD_LCD_MODE,0x20); // Запись в регистр Vop
    nlcd_SendByte(CMD_LCD_MODE,0x90);

    nlcd_SendByte(CMD_LCD_MODE,0xA4); // all on/normal display

    nlcd_SendByte(CMD_LCD_MODE,0x2F); // Power control set(charge pump on/off)
    // Определяет контрастность

    nlcd_SendByte(CMD_LCD_MODE,0x40); // set start row address = 0
    nlcd_SendByte(CMD_LCD_MODE,0xB0); // установить Y-адрес = 0
    nlcd_SendByte(CMD_LCD_MODE,0x10); // установить X-адрес, старшие 3 бита
    nlcd_SendByte(CMD_LCD_MODE,0x0); // установить X-адрес, младшие 4 бита

    //nlcd_SendByte(CMD_LCD_MODE,0xC8); // mirror Y axis (about X axis)
    //nlcd_SendByte(CMD_LCD_MODE,0xA1); // Инвертировать экран по горизонтали

    nlcd_SendByte(CMD_LCD_MODE,0xAC); // set initial row (R0) of the display
    nlcd_SendByte(CMD_LCD_MODE,0x07);

    nlcd_SendByte(CMD_LCD_MODE,0xAF); // экран вкл/выкл

    nlcd_Clear(); // clear LCD

    Пробовал и такую инициализацию — никакого толку…

    Alex_EXE пишет 18.09.2013 в 03:14 #

    Как подключаете дисплей? Точнее как питаете?
    Можете попробовать инициализацию из статьи по дисплею 2760.
    Можете попробовать подкоректировать функцию задержки в библиотеки дисплея, а точнее множитель.

    Игорь пишет 19.09.2013 в 01:10 #

    Питаю аналогично тому, как и при подключении к Меге88 — с нею-то все работает. Тоже подозреваю, что дело в таймингах задержек в библиотеке. Пробовал менять задержки в процедуре инициализации — не помогло. На досуге поковыряю другие функции библиотеки, где используются задержки.

    Игорь пишет 27.09.2013 в 01:06 #

    Как и ожидалось, дело оказалось в таймингах. Увеличив в 20 раз задержки в функции lcd1100_write, удалось заставить его работать. Ну и плюс инициализация вот такая:
    void lcd1100_init(void)
    <
    delay_lcd1100(100);
    lcd1100_CS_off;
    lcd1100_RST_off;
    delay_lcd1100(1000);
    lcd1100_RST_on;
    delay_lcd1100(1);

    lcd1100_write(lcd1100_CMD,0xE2);
    lcd1100_write(lcd1100_CMD,0x3A);
    lcd1100_write(lcd1100_CMD,0xEF);
    lcd1100_write(lcd1100_CMD,0x04);
    lcd1100_write(lcd1100_CMD,0xD0);

    lcd1100_write(lcd1100_CMD,0x20);
    lcd1100_write(lcd1100_CMD,0x90);
    lcd1100_write(lcd1100_CMD,0xA4);
    lcd1100_write(lcd1100_CMD,0x2F);
    lcd1100_write(lcd1100_CMD,0x40);
    lcd1100_write(lcd1100_CMD,0xb0);
    lcd1100_write(lcd1100_CMD,0x10);
    lcd1100_write(lcd1100_CMD,0x0);
    lcd1100_write(lcd1100_CMD,0xac);
    lcd1100_write(lcd1100_CMD,0x07);
    lcd1100_write(lcd1100_CMD,0xaf);

    lcd1100_clear();
    lcd1100_write(lcd1100_CMD,0xa7);
    delay_lcd1100(1);
    lcd1100_write(lcd1100_CMD,0xa6);
    delay_lcd1100(2);
    >

    Спасибо за статью и помощь.

    Игорь пишет 27.09.2013 в 01:27 #

    И еще момент — не выводятся нормально русские буквы. Вместо «96×65 точек» выводится «96×65 CPCPP», вместо «мм» — «РР». Через функцию lcd1100_test() — все буквы отображаются нормально. Как вариант — чудит Кейл? Версия — 4.7 .

    Alex_EXE пишет 27.09.2013 в 02:17 #

    До рабочего места добрался, но еще проверить не успел. Выздровил, но с оформлением больничного целая эпопея, завтра пойду переоформлять.
    Спасибо за замечания. Когда смогу сесть спокойно — проверю.
    На счет русского языка — да это кейл чудит, какие-то глюки с кодировками у него. Если и комментарии, и текст пишу в кейл, то выводит так, как у Вас, если пишу текст для дисплея в notepad++ — то в кейл он отображается кракозябрами, зато выводиться нормально. С кирилицей у него основательные проблемы, для нормального отображения комментариев файлы новых проектов отдельно перекодирую в UTF (если не путаю), но выводимый текст видать ему подавай в родной кодировке.

    Игорь пишет 28.09.2013 в 02:07 #

    Прицепил вместо дисплея от Nokia 1100 дисплей от Nokia 1202 — работает на «ура!». Убавил задержки в функции lcd1100_write до минимума (как в исходном коде библиотеке) — работает. Контроллер у него пошустрее, видимо, чем у 1100, да и по-контрастнее он внешне, чем 1100.

    Игорь пишет 28.09.2013 в 03:19 #

    void lcd1100_init(void)
    <
    delay_lcd1100(10); //100
    lcd1100_CS_off;
    lcd1100_RST_off;
    delay_lcd1100(100); //1000
    lcd1100_RST_on;
    delay_lcd1100(1); //1

    lcd1100_write(lcd1100_CMD,0xE2);
    lcd1100_write(lcd1100_CMD,0x3D);
    lcd1100_write(lcd1100_CMD,0x01);
    lcd1100_write(lcd1100_CMD,0xE1);
    lcd1100_write(lcd1100_CMD,0x16);
    lcd1100_write(lcd1100_CMD,0xA4);
    lcd1100_write(lcd1100_CMD,0x2F);
    lcd1100_write(lcd1100_CMD,0xAF);
    lcd1100_clear();
    >

    Дисплейчик хорош, ярче и контрастнее, чем 1100, только символы на нем меньшей высоты получаются, чем на 1100: у 1100 пиксель прямоугольной формы, вертикально вытянутый, а у 1202 — строго квадратный. ?

    Alex_EXE пишет 02.10.2013 в 07:44 #

    А какой у Вас дисплей 1100? Покупали с подложкой, где ещё остаются свободные контакты по бокам или чисто дисплей без довесков, как на фото, или оригинал?
    Для дисплея 1202, если символы маловаты — то можете их растянуть, если готов пожертвовать разрешением.
    Так же могу отметить о существовании не только 1100 и 1202, их в серии нокии очень много (3310, 2760, 1100i…) у каждого есть своя небольшая особенность, а управление идентичное, ну или почти идентичное может быть. Жаль только начинают пропадать из продажи, на мой взгляд они гораздо удобнее (для некоторых задач), дешевле и компактнее, чем графические от Winstar.

    Игорь пишет 02.10.2013 в 14:51 #

    Покупал 1100 как модуль, экран + железяка + динамик, в магазине «Профи», они там рублей по 40 были, уж с год назад. Сейчас 1202 даже дешевле продаются. И 3310 есть, и 2760, и 1110i. 3310 запускал на меге88, все пашет — статейка была на изиэлектрониксе, но он без подсветки, к нему только колхозить что-то. Есть и 1616, цветной, вот его было бы интересно поковырять. На изиэлектрониксе были статьи по подключению 1616 http://we.easyelectronics.ru/lcd_gfx/podklyuchenie-displeya-nokia-1616-na-primere-lpc1343.html , вот сайт автора этой статьи http://angel5a.narod.ru/lcd/lcdn1616_1.html , но к LPC1343, с использованием аппаратного SPI. Портировать это дело под софтовый SPI я как-то не осилил…

    С Winstar’ом я бы даже не стал сравнивать — нокиевские куда компактнее и на порядок дешевле. Winstar издалека рассматривать только, с такими-то размерами пикселя…

    Alex_EXE пишет 05.10.2013 в 00:09 #

    Такой то же есть наличии, надо будет им проверить.

    У винстара есть ещё один плюс — их легче доставать, если нужно в серию (в смысле, дисплеи от сотовых начинают заканчиваться, а дисплеи под серийное устройство должны быть и должны быть стандартизированы). Но это не имеет отношения к статье.

    Читать еще:  Как включить брелок pandora после замены батарейки

    Игорь пишет 05.10.2013 в 00:50 #

    Ну, под большую серию можно напрямую у китайцев заказать экран, с нужными параметрами. А нам-то куда под серию для кулацкого хозяйства. ? Так, для самоделок всяческих…

    Serenbkii пишет 18.06.2014 в 17:16 #

    Привет! А как выводить картинки?

    Alex_EXE пишет 18.06.2014 в 17:46 #

    Alex_EXE пишет 21.01.2015 в 18:53 #

    Если честно то я не особо могу понять смысл кода и из второго сообщения, пришлите мне код на мыло.

    Как вариант могу посоветовать перейти на CoCoox, она и бесплатная и кирилица нормально отображается + ещё свои плюшки есть. Только ставте предыдущею версию 1.7.7, 2 версия, как-то очень непонятно работает.
    Когда ещё начинал работать в Keil то кирилицу набирал вообще из Notepad++ в виндовой кодировке.

    Алекс пишет 22.01.2015 в 02:33 #

    Так ты и не поймешь))) во втором сообщении тоже чушь.
    Только начал с арм разбираться, среда была выбрана методом тыка. Кто ж знал. В Keil 4.74 кириллица отображается нормально. Только вот в кодировке UTF-8. А в либе декодирование из ASCII. На дисплее РРРР, ну тут один товарищ писал об этом. Исправляется даже таким чайником как я, за 20 минут, а при знании стандарта думаю все сократится до 20 секунд. В общем хотел помочь таким же разгильдяям как я сам.
    Ящик я указал естественно не свой, спам замучил, твой ящик я не нашел на сайте. Это сообщение с моим реальным ящиком. Пред идущие три сообщения можешь удалять. Если интересны те несколько строк, что я намалевал в твоей либе и ты замочишься что бы их кинуть в коменты, то пиши пришлю))

    Cyrill пишет 05.03.2015 в 16:18 #

    а по подробнее как победить кирилицу? собрал в кейле проэкт русские буквы С и Р

    Cyrill пишет 05.03.2015 в 17:43 #

    и еще как выводить например состояние шим от 0 до 100 процентов ?

    Alex_EXE пишет 10.03.2015 в 01:47 #

    В кейле русский шрифт отображаеться в юникоде. Нужно текст писать или в шестнадцатерички, или шрифты кодировать в юникоде (тогда размер алфавита вырастет в 2 раза и данная программа этого не умеет), или русский текст писать в другом редакторе, или вынести в другой файлы, который редактируеться в другом редакторе, а в основной код вставить через #defaine.
    В своё время кодировал в notepad++, а компилировал в Keil, теперь же перешел на CooCox, в нём таких проблем не наблюдал.

    Юрий пишет 17.07.2015 в 15:07 #

    у меня плата nucleo-f334, использовал keil 5 и cubeMX для портирования, после небольших изменений программа скомпилировалась, но на экран ничего не выводится (увеличение задержек не помогло), может дисплей виноват? На экране никакого движения, схема включения 1:1 (стабилитрон на 2,7в, резистор уменьшил до 150 Ом т.к. напряжение было 2,4в) .

    Вася пишет 05.10.2015 в 13:25 #

    Доброго времени суток!

    Подключил дисплей забрал вашу библиотеку увеличил задержки символы посыпались. Но вопрос в том что задом наперед((( в чем может быть заморочка. Подскажите плиз111

    Дмитрий пишет 17.03.2020 в 18:39 #

    Огромное спасибо за библиотеку! С помощью нее подключил китайский дисплей HX1230 к stm32F100 VL Discovery. Сначала сделал попытку реализовать подключение через аппаратный SPI. Но как и все, уперся в проблему отсутствия аппаратной поддержки формата кадра в 9 бит.
    Потом переконфигурировал библиотеку на свои GPIO и все заработало! Ура! С первого раза! Я не ожидал такого эффекта!Уже приготовился сидеть с осциллографом измерять временные задержки и курить даташит на дисплей. Огромно спасибо за сэкономленное время. Рекомендую!

    Nokia 3310 подключение к пк

    Компания Nokia пережила взлет, падение и небольшое возрождение, но все это время телефон Nokia 3310 сохранял репутацию надежного, прочного и удобного спутника человека. Именно поэтому компания HMD Global, заведующая финским брендом, решила переиздать классику, выпустив Nokia 3310 образца 2017 года. Мы собрали все отзывы, живые фотографии новинки и сравнили ее с оригиналом. Подключение дисплея Nokia 3310 к USB интерфейсу. В статье мы рассмотрим способ подключения дисплея от мобильного телефона Nokia 3310 к интерфейсу USB. Как подключить к компьютеру Nokia 3310? В этой модели телефона совмещено гнездо для зарядки и подключения к компьютеру через дата кабель. Nokia 3310 Не подключается к Wifi; При подключении USB кабеля компьютер не обнаруживает Nokia 3310, либо не определяется подключаемое устройство, либо. ЧТО ЕСЛИ,СДЕЛАТЬ СПИННЕР ИЗ NOKIA 3310 — Продолжительность: 2:35 ТенДен 152 просмотра. Мобильный телефон+ПК-2 Как подключить мобильник к компьютеру . как подключить nokia 3310 к компу?? как подключить nokia 3310 к компу?? как подключить nokia 3310 к компу?. Как подключить телефон к ПК? Компания HMD Global Oy обладает эксклюзивными правами на использование бренда Nokia для телефонов и планшетов. Подключение и использование LCD Nokia 3310 (5110) к AVR-микроконтроллеру. Это либо вывод данных на ПК, или на семи-сегментный индикатор. Как русифицировать Nokia 3310? И 3310 можно прокачать, если иметь кабель для подключения к компьютеру Подключение телефона NOKIA 6233 к компьютеру с помощью Bluetooth. Написание драйвера для закачки мелодий для сотового телефона Nokia 3310. 3310, как и многие другие модели Nokia, можно подключить к компьютеру через шину MBus, которая находится в виде открытых контактов под аккумулятором.

    Модель нокиа 3310 фото
    Nokia 3310 подключение к пк
    Nokia 3310 2000 года
    Nokia 3310 схема
    Nokia 3310 2017 красный
    Нокиа 3310 новая версия 2017 форум
    3310 нокиа 2017 купить челябинск

    Темы для Nokia 3310 (2017) скачать бесплатно. У нас Вы можете бесплатно скачать темы для телефона Nokia 3310 (2017), работающем на Series 30. 3310 (2017. Купить Nokia 3310 (2017) — цены в Украине и России. Характеристики Nokia 3310 (2017), отзывы о мобильном телефоне. Описание и фото. Клуб смартфонов и телефонов Nokia, Видео Nokia 3310 NEW 2017 / Телефоны Nokia, программы для смартфонов, темы для nokia, программы для Nokia, игры для Nokia, мелодии для nokia, картинки для nokia. Сравниваем новую Nokia 3310 2017 года и старую Nokia 3310. Обзор и репортаж с выставки Мобильный конгресс, Mobile World Congress MWC 2017. Nokia 3310 New 2017 — улучшение технологии? Обзор Nokia 3310 New. Марка телефонов Nokia за все время активного использования человечеством мобильных. Клип-кейс Ibox Crystal для Nokia 3310 (2017) (прозрачный). Наушники Canyon CNS-CEP01 (синий). Дата выпуска 2017 г, емкость 1200 mAh, технология экрана LCD Transmissive, кол-во цветов 65 тыс. цветов, размер экрана 240 x 320 px Темы для Nokia 3310. Если вы хотите купить кнопочный телефон Nokia 3310 (2017), то сначала внимательно ознакомтесь с характеристиками, посмотрите видеообзоры, которые для. Руководство пользователя Nokia 3310 (2017) на Оф. Я не знаю где именно там тема для файлов. Описание и характеристики нового мобильного телефона Nokia 3310 (2017). На нашем сайте вы сможете увидеть цены на телефон 3310 второго издания от разных магазинов, сравнить цену и при желании. Телефон новый, а название осталось прежним. И это не случайно, ведь производитель постарался сохранить все главные черты «старичка», но при этом вдохнуть в него новую жизнь. Это, действительно, возрождение классики в современной интерпретации в буквальном смысле слова. Компания сделала ставку на легенду и не прогадала, спрос на новый Nokia 3310 просто сумасшедший! Кого-то интересует свежий дизайн, кого-то характеристики, а кого-то обновленная змейка.

    Расходные материалы:

    Компоненты вместе со схемой сборки, используемой в этом проекте, упоминаются подробно для удобства последующей работы.

    1) Arduino Uno:

    Плата Arduino состоит из 8-16- или 32-битного микроконтроллера AVR Atmel с дополнительными компонентами, которые облегчают программирование и включение в другие схемы. Важным аспектом Arduino являются его разъемы, которые позволяют пользователям подключать плату ЦП к различным сменным дополнительным модулям, известным как экраны.

    2) Перемычки:

    Перемычки между мужчинами используются для построения цепи.

    3) Nokia LCD 5110:

    Nokia 5110 — это базовый графический ЖК-экран для множества приложений. Первоначально он был предназначен для экрана мобильного телефона. Этот монтируется на легко припаянной печатной плате.
    Он использует контроллер PCD8544, который используется в Nokia 3310 LCD. PCD8544 — это контроллер / драйвер CMOS LCD с низким энергопотреблением, предназначенный для графического отображения 48 строк и 84 столбцов. Все необходимые функции для дисплея представлены в одной микросхеме, включая генерацию на ЖК-дисплее питания и напряжения смещения, что приводит к минимуму внешних компонентов и низкому энергопотреблению. PCD8544 взаимодействует с микроконтроллерами через интерфейс последовательной шины.

    Читать еще:  ВАЗ 2106 стабилизатор поперечной устойчивости снятие установка

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

    • После оформления заказа Ваш заказ будет помещен в Ваш личный кабинет со статусом «Ожидает проверки «
    • Наши менеджеры проверят наличие на складе, и ставят выбранный Вами товар в резерв. При этом изменяют статус вашего заказа на «Оплачивается «. Рядом со статусом «Оплачивается » отобразится ссылка «Оплатить «, кликнув на которую Вы перейдете на страницу выбора способов оплаты сайта Robokassa.
    • После выбора способа и проведения оплаты заказа статус автоматически изменится на «Оплачен «. Далее в кратчайшие сроки товар будет вам отправлен выбранным в процессе формирования заказа способом доставки.

    Технические характеристики дисплея Nokia 5110

    Перед подключением дисплея и программированием Arduino давайте рассмотрим общую информацию о нем.

    Распиновка

    Для подключения и передачи данных на дисплее используются два параллельных ряда 8 коннекторов. На задней части дисплея нанесены обозначения каждого пина.

    Как уже было сказано, пины параллельно соединены между собой. Информация о назначении каждого коннектора приведена ниже.

    Питание

    Вы уже обратили внимание, что на LCD дисплее 5110 два коннектора для питания. Первый — самый важный — питание логики дисплея. В datasheet указано, что оно должно выбираться в диапазоне 2.7 — 3.3 В. В нормальном режиме работы дисплей будет потреблять от 6 до 7 мА.

    Второй коннектор питания предназначен для подсветки дисплея. Если вы снимете сам дисплей с платы (это делать не обязательно, можно просто посмотреть на рисунок ниже), вы увидите, что подсветка реализована очень просто : четыре белых светодиода, которые расположены по углам платы. Обратите внимание, что токоограничивающих резисторов нет.

    Так что с питанием надо быть аккуратнее. Можно использовать токоограничивающий резистор при подключении пина ‘LED’ или использовать максимальное напряжение питания 3.3 В. Не забывайте, что светодиоды могут поглощать большие токи! Без ограничения, они потянут около 100 мА при напряжении питания 3.3 В.

    Управляющий интерфейс

    В дисплее встроен контроллер: Philips PCD8544, который преобразовывает массивный параллельный интерфейс в более удобный серийный. PCD8544 управляется помощью синхронным серийным протоколом, который подобен SPI. Обратите внимание, что есть пины счетчика времени (SCLK) и ввода серийных данных (DN), а также активный-low выбор чипа (SCE).

    Выше рассмотренных серийных коннекторов установлен еще один коннектор – D/C, по которому поступает информация о том, могут ли быть отображены данные, которые передаются.

    Для перечня команд, ознакомьтесь с разделом “Instructions” из даташита PCD8544 (страница 11). Есть команды, которые очищают дисплей, инвертируют пиксели, отключают питание и т.п.

    Подключение дисплея Nokia 5110

    Дисплей монохромный, имеет разрешение 84×48 точек. Как правило, дисплеи Nokia 5110, предназначенные для таких как мы с вами энтузиастов, поставляются на плате в паре с контроллером PCD8544 и штыревым разъемом. У такого дисплейного модуля есть всего 8 ног:

    • RST — сброс (Reset);
    • CE — выбор устройства (Chip Select);
    • DC — выбор режима (Data/Command select);
    • DIn — данные (Data In);
    • Clk — тактирующий сигнал (Clock);
    • Vcc — питание 3 — 5 Вольт;
    • BL — подсветка;
    • Gnd — земля.

    Схема подключения к Ардуино:

    ЖК дисплей Nokia 5110RSTCEDCDInClkVccBLGnd
    Ардуино Уно76543+5V+5VGND

    Скетч и библиотека для работы с дисплеем

    Для работы с данным дисплеем существует множество библиотек, мы же будем использовать весьма простую и функциональную библиотеку , доступную по адресу http://www.rinkydinkelectronics.com/library.php?id=44. Данная библиотека позволяет работать с дисплеем с помощью 14 простых функций:

    ФункцияНазначение
    LCD5110(SCK, MOSI, DC, RST, CS)Объявление дисплея с указанием пинов подключения.
    InitLCD([contrast])Инициализация дисплея с опциональным указанием контрастности (0-127), по умолчанию используется значение 70.
    setContrast(contrast)Изменение контрастности (0-127).
    enableSleep()Переводит экран в спящий режим.
    disableSleep()Выводит экран из спящего режима.
    clrScr()Очищает экран.
    clrRow(row, [start], [end])Очищает выбраную строку (номер row), от позиции start до end (опционально).
    invert(true), invert(false)Включает и выключает инверсию содержимого LCD экрана.
    print(string, x, y)Выводит строку символов (string) с заданными координатами (x, y); вместо x-координаты можно использовать LEFT, CENTER и RIGHT; высота стандартного шрифта 8 точек, поэтому строки должны идти с интервалами через 8.
    printNumI(num, x, y, [length], [filler])Выводит целое число (num) на экран на заданной позиции (x, y); опционально: length – количество символов, резервируемых для числа; filler – символ для заполнения «пустот», если число меньше желаемой длины length (по умолчанию это пробел ” “).
    printNumF(num, dec, x, y, [divider], [length], [filler])Выводит число (num) с плавающей запятой; dec – число знаков после запятой; опционально: divider – знак десятичного разделителя, по умолчанию точка “.”, length и filler – по аналогии с предыдущей функцией.
    setFont(name)Выбирает шрифт; встроенные шрифты – SmallFont, MediumNumbers и BigNumbers.
    invertText(true), invertText(false)Инвертирует текст, выведенный с помощью функций print, printNumI и printNumF (вкл./выкл.).
    drawBitmap(x, y, data, sx, sy)Выводит картинку на экран по необходимым координатам (x, y); data – массив, содержащий картинку; sx и sy – ширина и высота рисунка.

    Рассмотрим работу с дисплеем с помощью данной библиотеки на примере простого скетча:

    После того как мы рассмотрели базовые функции библиотеки, остановимся более подробно на функции drawBitmap и рассмотрим особенности вывода изображений на экран.

    Для начала нам понадобится интересующее изображение в формате .bmp.

    Далее необходимо скачать программу Image Generate от Alex_EXE по адресу https://alex-exe.ru/programm/image-generate/. В окне программы устанавливаем необходимое разрешение нашего изображения на дисплее (должно быть меньше, чем 84 пикселя по горизонтали и 48 по вертикали), нажимаем «установить новый размер».

    Нажимаем «установить новый размер»

    После этого нажимаем «Картинка», «Открыть», выбираем наш файл, жмем «преобразовать».

    Жмем «преобразовать»

    Нажимаем «Применить»

    Теперь жмем на кнопку «Массив» и копируем появившийся массив в новый скетч.

    Теперь жмем на кнопку «Массив» и копируем появившийся массив в новый скетч

    LCD дисплей Nokia 5110 на плате 84×48 Arduino (11995)

    Есть вопросы? Напишите нам в чат, — кнопка в левом нижнем углом экрана.

    Описание

    Дополнительно

    Материал корпусаПластик + металл
    СовместимостьWindows
    Страна регистрации брендаКитай
    Страна-производитель товараКитай
    ТипАксессуары для Роботов

    Комментарии 0

    Пока не было комментариев.

    Информация для покупки

    Для покупки регистрация не обязательна! Если хотите сделать заказ, — просто добавьте нужные вам товары в корзину, укажите свои данные и нажмите кнопку «Оформить заказ». Мы свяжемся с вами в ближайшее время.

    Оплата
    — перевод на карту ПБ
    — онлайн без комиссии через Приват24 (система LiqPay)
    — безналичный расчет без НДС для юридических лиц
    — наличными или картой при доставке (только при заказе от 100 грн)
    — наличными в офисе

    Нашли дешевле? Напишите нам об этом в чат — кнопка в левом нижнем углу экрана. В сообщении укажите ссылку на активную страницу такого же товара в украинском интернет-магазине и мы пересмотрим цену.

    Доставка
    — Новая Почта
    — Укрпочта (только при предоплате)
    — Самовывоз (также при необходимости можем отправить на такси по Ивано-Франковску)

    Отправка товара происходит каждый рабочий день. Заказанный товар в большинстве случае выезжает в тот же день. Заказы самовывозом можно забрать в нашем магазине. После покупки позвоним вам и скажем, когда посылка с заказом будет готова к выдаче.

    Гарантия и возврат
    — возврат в течение 14 дней, если товар не подошел
    — гарантия до 6 месяцев на товары собственного изготовления

    голоса
    Рейтинг статьи
    Ссылка на основную публикацию
    ВсеИнструменты
    Adblock
    detector