Распберри Пи је плоча заснована на АРМ архитектури заснована за електронске инжењере и хобисте. ПИ је сада једна од најповерљивијих платформи за развој пројеката. Са већом брзином процесора и 1 ГБ РАМ-а, ПИ се може користити за многе пројекте високог профила попут обраде слика и ИоТ.
За извођење било ког од пројеката високог профила треба разумети основне функције ПИ-а. У овим упутствима ћемо покрити све основне функционалности Распберри Пи- а. У сваком упутству разговараћемо о једној од функција ПИ-а. До краја ове уџбеничке серије Распберри Пи моћи ћете сами да радите пројекте високог профила. Прођите кроз водиче у наставку:
- Први кораци са Распберри Пи
- Конфигурација Распберри Пи
- ЛЕД Блинки
- Дугме Интерфаце
- Генерација ПВМ-а
- Управљање једносмерним мотором
- Управљање корачним мотором
- Повезивање Схифт регистра
- Водич за АДЦ за Распберри Пи
- Управљање серво мотором
- Капацитивна додирна табла
У овом упутству ћемо контролисати ЛЦД екран од 16к2 користећи Распберри Пи. Повезаћемо ЛЦД са ГПИО (Генерал Пурпосе Инпут Оутпут) пиновима ПИ за приказ знакова на њему. Написаћемо програм у ПИТХОН-у за слање одговарајућих наредби на ЛЦД преко ГПИО-а и приказивање потребних знакова на његовом екрану. Овај екран ће вам добро доћи за приказ вредности сензора, статуса прекида и такође за приказ времена.
На тржишту постоје различите врсте ЛЦД-а. Графички ЛЦД је сложенији од 16к2 ЛЦД-а. Дакле, ту је ЛЦД екран од 16к2, чак можете да користите ЛЦД од 16к1 ако желите. ЛЦД 16к2 има укупно 32 знака, 16 у првом реду и још 16 у другом реду. ЈХД162 је ЛЦД ЛЦД са 16к2 ЛЦД модула. Већ смо повезали 16к2 ЛЦД са 8051, АВР, Ардуино итд. Све наше 16к2 ЛЦД пројекте повезане можете пронаћи пратећи ову везу.
Разговараћемо мало о ПИ ГПИО пре него што наставимо даље.
У Распберри Пи 2 постоји 40 излазних пинова за ГПИО. Али од 40, може се програмирати само 26 ГПИО пинова (ГПИО2 до ГПИО27). Неки од ових клинова обављају неке посебне функције. Ако оставимо по страни посебан ГПИО, преостаје нам 17 ГПИО.
На плочи се налазе пинови за излазну снагу + 5В (пин 2 или 4) и + 3.3В (пин 1 или 17), они служе за повезивање других модула и сензора. Напајаћемо ЛЦД 16 * 2 преко + 5В шине. На ЛЦД можемо послати контролни сигнал од + 3,3 в, али за рад ЛЦД-а морамо га напајати са + 5 В. ЛЦД неће радити са + 3.3В.
Да бисте сазнали више о ГПИО пиновима и њиховим тренутним излазима, прођите кроз: ЛЕД трепће са Распберри Пи
Компоненте потребне:
Овде користимо Распберри Пи 2 Модел Б са Распбиан Јессие ОС. Сви основни хардверски и софтверски захтеви су претходно разматрани, можете их потражити у Уводу о Распберри Пи, осим онога што нам је потребно:
- Прикључне игле
- 16 * 2 ЛЦД модул
- Отпор 1КΩ (2 комада)
- Пот 10К
- Кондензатор од 1000µФ
- Бреадбоард
Објашњење кола и рада:
Као што је приказано на дијаграму кола, повезали смо Распберри Пи са ЛЦД дисплејем повезивањем 10 ГПИО пинова ПИ на контролне и преносне податке 16 * 2 ЛЦД-а. Користили смо ГПИО пин 21, 20, 16, 12, 25, 24, 23 и 18 као бајт и креирали функцију „ПОРТ“ за слање података на ЛЦД. Овде је ГПИО 21 ЛСБ (најмање значајан бит), а ГПИО18 је МСБ (најзначајнији бит).
ЛЦД модул 16к2 има 16 пинова, које се могу поделити у пет категорија, игле за напајање, контрастне игле, контролне игле, пинови за податке и пинови са позадинским осветљењем. Ево кратког описа о њима:
Категорија |
Пин НО. |
Пин Наме |
Функција |
Повер Пинс |
1 |
ВСС |
Гроунд пин, повезан са Гроунд |
2 |
ВДД или Вцц |
Напон Пин + 5В |
|
Цонтраст Пин |
3 |
В0 или ВЕЕ |
Подешавање контраста, повезано на Вцц преко променљивог отпорника. |
Цонтрол Пинс |
4 |
РС |
Регистрирај Изаберите пин, РС = 0 Цомманд моде, РС = 1 Режим података |
5 |
РВ |
Читање / писање чиоде, РВ = 0 режим писања, РВ = 1 режим читања |
|
6 |
Е. |
Омогући, пулс од високог до ниског нивоа треба да омогући ЛЦД |
|
Дата Пинс |
7-14 |
Д0-Д7 |
Прибадаче за податке, чува податке за приказ на ЛЦД-у или упутства за наредбе |
Игле са позадинским осветљењем |
15 |
ЛЕД + или А. |
За напајање позадинског осветљења + 5В |
16 |
ЛЕД- или К. |
Позадинско осветљење Гроунд |
Топло препоручујемо да само прођете кроз овај чланак да бисте разумели како ЛЦД ради са његовим Пинс и Хек командама.
Укратко ћемо разговарати о процесу слања података на ЛЦД:
1. Е је постављено високо (омогућавање модула), а РС је постављено ниско (говори ЛЦД да дајемо команду)
2. Давање вредности 0к01 на порт података као наредба за брисање екрана.
3. Е је постављено високо (омогућавање модула), а РС високо (говори ЛЦД да дајемо податке)
4. Треба доказати доказивање АСЦИИ кода за знакове.
5. Е је постављено на ниско (говори ЛЦД да смо завршили са слањем података)
6. Једном када овај Е пин падне, ЛЦД обрађује примљене податке и приказује одговарајући резултат. Дакле, овај пин је постављен на високу вредност пре слања података и срушен на земљу након слања података.
Као што смо рекли, слаћемо ликове једног за другим. У ликови су дати на ЛЦД од АСЦИИ кодова (амерички стандард код за размену информација). Табела АСЦИИ кодова је приказана у наставку. На пример, да бисмо приказали знак „@“, морамо послати хексадецимални код „40“. Ако дамо вредност 0к73 на ЛЦД екрану, приказаће се „с“. Овако ћемо послати одговарајуће кодове на ЛЦД да прикажу низ „ ЦИРЦУИТДИГЕСТ “.
Објашњење програмирања:
Једном када је све повезано према схеми кола, можемо УКЉУЧИТИ ПИ да напишемо програм у ПИХТОН-у.
Разговараћемо о неколико наредби које ћемо користити у програму ПИХТОН, Увешћемо ГПИО датотеку из библиотеке, доња функција омогућава нам програмирање ГПИО пинова ПИ. Такође смо преименовали „ГПИО“ у „ИО“, па ћемо у програму кад год желимо да се упутимо на ГПИО пинове користити реч „ИО“.
увоз РПи.ГПИО као ИО
Понекад, када ГПИО пинови, које покушавамо да користимо, можда раде неке друге функције. У том случају добићемо упозорења током извршавања програма. Испод наредба говори ПИ-у да занемари упозорења и настави са програмом.
ИО.сетварнингс (Фалсе)
ГПИО пинове ПИ можемо упутити било бројем пина на плочи или бројем њихове функције. Као и „ПИН 29“ на плочи је „ГПИО5“. Дакле, овде кажемо или ћемо овде представљати пин са '29' или '5'.
ИО.сетмоде (ИО.БЦМ)
Постављамо 10 ГПИО пинова као излазне пинове, за Дата и Цонтрол пинове ЛЦД-а.
ИО.сетуп (6, ИО.ОУТ) ИО.сетуп (22, ИО.ОУТ) ИО.сетуп (21, ИО.ОУТ) ИО.сетуп (20, ИО.ОУТ) ИО.сетуп (16, ИО.ОУТ) ИО.сетуп (12, ИО.ОУТ) ИО.сетуп (25, ИО.ОУТ) ИО.сетуп (24, ИО.ОУТ) ИО.сетуп (23, ИО.ОУТ) ИО.сетуп (18, ИО.ОУТ)
док се наредба 1: користи као петља заувек, с овом наредбом ће се изрази унутар ове петље континуирано извршавати.
Све остале функције и наредбе су објашњене у доњем одељку „Код“ уз помоћ „Коментари“.
Након писања програма и његовог извршавања, Распберри Пи шаље ЛЦД знакове један по један, а ЛЦД приказује знакове на екрану.