ПредишенСледващото

Поръчайте дисплей тук. Дисплеят е монтиран PCD8544 контролер захранващото напрежение може да бъде в диапазона 2.7 ... 3.3 V, текущото потребление на 240 ... 320 mA. Модулът има връзки за:

  1. RST - изчисти терминал дисплей контролер
  2. CE - данните за резолюция изход
  3. DC - избор на начина на предаване, командата или данни
  4. DIN - SPI интерфейс за въвеждане на данни
  5. CLK - часовник изход на SPI интерфейс
  6. VCC - дисплей изходна мощност
  7. LIGHT - оттегляне на управление на осветлението за включване трябва да се прилага логиката ниска
  8. GND - общ олово (отрицателен полюс доставка)

Предаването на данни се осъществява чрез стандартен интерфейс SPI тактова честота до 4 MHz. По време на сесията за данни, СЕ-линията, трябва да инсталирате на ниско ниво логика, позволявайки по този начин на предаване. Когато командата на дисплея се предава, DC трябва да "дръпне" линия до земята (влезте. 0), най-високо ниво логика на DC линии може да предава данни, които пряко ще показват.

Когато на дисплея е включено, че е наложително да се извърши процедура за нулиране в рамките на 30 милисекунди, след като захранването, ред RST за издаване на отрицателен импулс, минималната ширина на импулса (ниско ниво логика) е на 100 НЧ. Влезте. 0 на линия RST може да присъства за захранване.

Следващата таблица обобщава управляващата команда за показване:

След процедурата за нулиране, дисплей контролера е в състояние на OFF, всички сегменти са погасени, съответно, че е необходимо да се извърши инициализация чрез изпращане на байта следните дисплей:

След инициализация, дисплеят е готов за работа, но това е необходимо да се извърши още една операция, след нулирането и инициализиране сегменти статус не са определени, и на дисплея ще се покаже на боклука трябва да бъдат почистени, като посочва всички колони стойност 0x00.
Следното изображение показва електрическата схема на дисплея на Nokia 5110 за микроконтролер PIC16F628A:

Дисплей Nokia 5110 - връзка към микроконтролера, програмиране MCU снимка

Основната част от кода на програмата е показано по-долу (за пълния код е достъпен за изтегляне в края на статията):

__CONFIG H'3F18; микроконтролер конфигурация

errorlevel -302; не показва съобщения с грешка 302 Обява

Sec тех 0020h; помощни регистри профил

номер тех 0023h; регистрирате съхраняване на ASCII код символ

scetbit тех 0024h; брои регистрирате брой битове

perem тех 0025h; спомагателен регистър прехвърляне байт на SPI

температура тех 0026h; спомагателни брой регистър

tmp_tab тех 0027h; маса под регистрационен номер съхранение

# Определят res_lcd PORTB, 0; наименоване на линии IO

#define CS PORTB, 1, за използване с LCD дисплей Nokia 5110

# Определят dat_com PORTB, 2;

# Определят sdata PORTB, 3;

Този код показва 6 линии, последователно, с пауза от една секунда: "Radiolaba.ru", Тест код * LCD *, Nokia 5110, контролер, PIC16F628A.

Всеки символ е с големина от 5 х 7 пиксела, който се състои от 5 байта. Контролерът на дисплея не е изграден характер генератор, така че байта за векторизиране на характер, включени в програмния код под формата на таблици с данни. Всичко се поддържа от дисплея 162 герои, това е специални знаци, цифри, латински и символи на кирилица, те са разделени в 4 таблици с данни, като една таблица може да побере само 256 байта данни.

Подпрограма характер генератор (viv_symb) на кода на ASCII характер въз основа на извлечения байта от съответната таблица, и ги показва на дисплея. На първо място, таблица с данни се определя, в която символите са байта, а след това на ASCII символи кода на определена стойност се изважда за по-нататъшно не излиза извън границите на масата, когато изчислената прехода. Получената стойност се умножава по 5, е необходимо да се изложи на първия байт на характера, когато изчислената прехода, тъй като всеки един от героите заема 5 байта, посочени в таблицата. Освен това продукцията последователно останалите 4 байта.

В подпрограма viv_symb допълнително поставена в празен колона (0x00 байт) за разделяне на знака на екрана, т.е. една линия на дисплея се поберат 84/6 = 14 символи. Битови символи за рисуване заемат голяма част от паметта на програмирането на микроконтролер: 162 * 5 = 810 думи, или 40.5% от паметта.

За да се покаже символът на измерението на ъгъл и температурата, за да viv_symb подпрограмата трябва да премине на стойност от 176 (ASCII код характер).

В края на тази статия можете да изтеглите кода на програмата за извеждане на двойно размера на шрифта 9 × 14. При използване на такъв шрифт дисплей линия поберат 3 до 8 символа. Програмата показва серия от 3 линии, с пауза от 1 секунда: + PIC16 +, Nokia, 5110.

посочени като не всички от героите в този код: 0-9, ГЛАВНИ латинските букви A-Z, на точка, разстояние, тире, плюс, както и символ на измерението на ъгъл и температурата. Тези знаци заемат 41 * 18 = 738 байта, или 37% от паметта на програмата.

Освен героите, дисплей може да извежда графика с разрешаваща способност 48 х 84 пиксела, и дори анимирани клипове. Една картина ще заема 504 байта, така че трябва да се използва външна памет EEPROM или SD карта за съхранение на голям брой изображения.

Дисплей Nokia 5110 - връзка към микроконтролера, програмиране MCU снимка
Дисплей Nokia 5110 - връзка към микроконтролера, програмиране MCU снимка

Подкрепете проекта - споделете линка, благодаря!