- Потребан материјал
- Кружни дијаграм
- 128 * 64 графички ЛЦД
- Претварање слике у Хек код:
- Ардуино код и радно објашњење
Постоји много врста ЛЦД-а који се користе у електронским пројектима. Већ смо користили 16Кс2 ЛЦД у многим нашим пројектима, а користили смо и ТФТ ЛЦД са Ардуином. Наш читав пројекат повезан са ЛЦД-ом 16Кс2 можете пронаћи пратећи ову везу, укључујући повезивање са 8051, АВР, Ардуино и многим другима.
СТ9720 Графички ЛЦД је потпуно другачија од обичних ЛЦД екрана. Обични ЛЦД може штампати само једноставни текст или бројеве унутар фиксне величине. Али на графичким ЛЦД екранима имамо 128 * 64 што је једнако 8192 тачке или 8192/8 = 1024 пиксела, тако да осим карактера, на овом ГЛЦД можемо приказати било коју графичку слику.
Већ смо повезали ГЛЦД са 8051, данас ћемо повезати графички ЛЦД са Ардуином за приказивање текста и слика на њему.
Потребан материјал
- Ардуино УНО
- 128 * 64 графички ЛЦД СТ9720
- Потенциометар-10к
- Повезивање жица
- Бреадбоард
Кружни дијаграм
128 * 64 графички ЛЦД
Овај графички ЛЦД има малу потрошњу енергије и такође је погодан за преносни уређај са батеријским напајањем. Има широк опсег радног напона од 2,2 до 5,5 в, подржава и серијску и 8/4-битну паралелну комуникацију, а испоручује се са СТ7290 ЛЦД контролером / управљачким програмом. Режим комуникације интерфејса може се пребацити између паралелног и серијског помоћу ПСБ ПИН-а 15. Овај графички ЛЦД има функцију аутоматског укључивања ресета и може се лако контролисати помоћу МЦУ-а као што су 8051, АВР, АРМ, Ардуино и Распберри Пи.
Детаљне информације о графичком ЛЦД-у СТ7290 128 * 64 можете прегледати у техничком листу
Пин Цонфигуратион
Пин Но. |
Пин Наме |
Опис |
1 |
Гнд |
Приземни терминал |
2 |
Вцц |
Улазни напон напајања (2.7в до 5.5в) |
3 |
Во |
ЛЦД контраст |
4 |
РС |
Регистер Селецт РС = 0: Регистар упутстава РС = 1: Регистар података |
5 |
Р / В |
Контрола читања / писања |
6 |
Е. |
Омогући |
7,8,9,10,11,12,13,14 |
ДБ0, ДБ1, ДБ2, ДБ3, ДБ4, ДБ5, ДБ6, ДБ7 |
Дата Пинс (користе се у паралелном 8 / 4битном режиму комуникације) |
15 |
ПСБ |
Избор интерфејса: Ниска (0) за режим серијске комуникације Висока (1) за 8/4-битни режим паралелне магистрале. |
16 |
НЦ |
Није повезан |
17 |
РСТ |
Ресетуј пин |
18 |
Воут |
Излаз удвостручача ЛЦД напона. ГЛАС ≦ 7В. |
19 |
БЛА |
Позитивно напајање позадинског осветљења |
20 |
БЛК |
Позадинско осветљење Негативно напајање |
Апликације
- Индустријски уређај
- Уграђени системи
- Сигурност
- Медицински
- Ручна опрема
Претварање слике у Хек код:
Да бисмо приказали било коју слику на графичком ЛЦД-у, потребан нам је ХЕКС код те слике, па је овде неколико корака за претварање слике у ХЕКС код. Пре тога морате бити сигурни да величина слике не би требало да прелази 128 * 64.
1. корак: Смањите величину нормалне слике на 128 * 64 или мање, што можете учинити помоћу било ког софтвера за уређивање слика, попут МС боје.
Као што је приказано на горњој слици, постављамо ширину и висину слике на 128 * 64.
Корак 2: Затим треба да сачувате слику у формату „име_имбе .бмп “.
Изаберите формат приказан на горњој слици и сачувајте датотеку за даљи поступак.
Корак 3: Након што га сачувате у „.бмп“ формат, требате претворити слику у хексадецимални код за штампање. За ово користим софтвер под називом ГИМП 2, који Бмп датотеку претвара у хексадецимални код.
Као што је приказано на горњој слици, отворили смо датотеку формата „.бмп“ у софтверу ГИМП 2.
Корак-4: Након преузимања софтвера, отворите БМП формату датотеку слике коју желите да одштампате, а затим сачувати као томе у " .кбм " (Кс битмап) формату. Након што га сачувате, отворите ту датотеку помоћу Нотепад-а и добићете Хек код слике.
Као што је приказано на доњој слици, одаберите опцију Извоз да бисте датотеку сачували у кбм формату:
Изаберите формат приказан на доњој слици и извезите датотеку слике.
Након извоза датотеке, добићете датотеку у “.кбм” формату. Отворите кбм датотеку помоћу Нотепад- а и добићете ХЕКС код као што је приказано на доњој слици.
Ардуино код и радно објашњење
Да бисмо повезали графички ЛЦД са Ардуином, прво морамо да дефинишемо библиотеку која се користи за графички ЛЦД. Ардуино нема ову библиотеку, морате је преузети и инсталирати са ове везе. Тада можете укључити библиотеку као доле:
#инцлуде "У8глиб.х"
Овде „ у8г (10) “ дефинише везу РС (регистрационог избора) пина графичког ЛЦД-а са 10. пином Ардуино УНО. РС пин се користи као 'цхип цхип' и 'Регистер Селецт' када се користи у серијском и паралелном режиму. Дакле, користимо серијски режим и РС пин постављен на Хигх (1) за омогућени чип и Лов (0) за онемогућени чип.
У8ГЛИБ_СТ7920_128Кс64_4Кс у8г (10);
Сада, за штампање слике морамо да поставимо Хек код слике у доњи код. Можете да одштампате било коју другу слику, само треба да налепите хек код слике.
цонст уинт8_т роок_битмап У8Г_ПРОГМЕМ = {Овде залепите Хек код слике };
Проверите пуни Ардуино код на крају овог чланка.
Следећа функција се користи за штампање слике, наредба која се користи за штампање је „у8г.дравКСБМП (к, и, ширина слике, висина слике)“ . Где су Кс и И почетни положај слике на ЛЦД-у, а такође морамо да напишемо величину слике која не би требало да прелази 128 * 64 и у завршном аргументу позвали смо функцију у коју смо поставили ХЕКС код слике.
воид слика (воид) {у8г.дравКСБМП (0, 0, 128, 64, роок_битмап); }
Направили смо две функције под називом „цртање“ и „даље“, у којима се код за штампање садржаја записује помоћу наредбе „у8г.дравСтр (к, и,„ абцд “)“. Овде су к и и положај на ЛЦД екрану где ће се садржај штампати, а „ абцд “ је садржај који се штампа.
воид драв (воид) {у8г.сетФонт (у8г_фонт_унифонт); у8г.дравСтр (07, 35, "ДИГЕСТ ЦИРЦУИТ"); } воид нект (воид) {у8г.сетФонт (у8г_фонт_унифонт); у8г.дравСтр (0, 15, „Интерфацинг“); у8г.дравСтр (0, 35, "Графички ЛЦД"); у8г.дравСтр (0, 55, „са Ардуином“); }
функција цлеарЛЦД () направљена је за брисање ЛЦД-а тако што само даје нулу вредност функцији.
воид цлеарЛЦД () {у8г.фирстПаге (); уради {} вхиле (у8г.нектПаге ()); }
Подешавање пиксела, боје и интензитета помоћу доњег кода
воид сетуп (воид) {иф (у8г.гетМоде () == У8Г_МОДЕ_Р3Г3Б2) {у8г.сетЦолорИндек (255); // бело} елсе иф (у8г.гетМоде () == У8Г_МОДЕ_ГРАИ2БИТ) {у8г.сетЦолорИндек (3); // максималан интензитет} елсе иф (у8г.гетМоде () == У8Г_МОДЕ_БВ) {у8г.сетЦолорИндек (1); // пиксел на} елсе иф (у8г.гетМоде () == У8Г_МОДЕ_ХИЦОЛОР) {у8г.сетХиЦолорБиРГБ (255,255,255); }}
Празнина петља наставља да одштампате текст и слику после датог одлагања. Прво смо одштампали „Цирцуит Дигест“ помоћу функције цртања и након 2 сек. због кашњења смо очистили екран помоћу функције цлеарЛЦД, а затим исписали „ Интерфацинг Грапхицал ЛЦД усинг Ардуино “ користећи следећу функцију. Затим смо слику одштампали помоћу функције пицтуре () која ће остати на екрану 3 секунде. То ће се наставити све док се напајање не укључи.
петља воид (воид) {у8г.фирстПаге (); до {драв (); } вхиле (у8г.нектПаге ()); кашњење (2000); цлеарЛЦД (); у8г.фирстПаге (); уради {нект (); } вхиле (у8г.нектПаге ()); кашњење (2000); цлеарЛЦД (); у8г.фирстПаге (); до {пицтуре (); } вхиле (у8г.нектПаге ()); кашњење (3000); цлеарЛЦД (); кашњење (50); }
Након програмирања Ардуина помоћу датог кода, повежите графички ЛЦД према схеми кола са Ардуином и испоручите Ардуино помоћу адаптера или УСБ-а. Садржај и слика добићете на графичком ЛЦД екрану, као што је приказано у доњем видео запису.
Такође проверите да ли је Нокиа 5110 Грапхицал ЛЦД повезан са Ардуином,