Raspberry Pi е ARM архитектура базирана на процесор платка, предназначена за електронни инженери и любители. PI е една от най-надеждните платформи за разработване на проекти в момента. С по-висока скорост на процесора и 1 GB RAM, PI може да се използва за много високопрофилни проекти като Обработка на изображения и Интернет на нещата.
За да направите някой от високопрофилните проекти, трябва да разберете основните функции на PI. В тези уроци ще разгледаме всички основни функционалности на Raspberry Pi. Във всеки урок ще обсъдим една от функциите на PI. До края на тази серия с уроци за Raspberry Pi ще можете сами да правите проекти с висок профил. Преминете през уроци по-долу:
- Първи стъпки с Raspberry Pi
- Конфигурация на Raspberry Pi
- LED мигащ
- Интерфейс на бутон Raspberry Pi
- Raspberry Pi PWM поколение
- Управление на DC мотор с помощта на Raspberry Pi
- Управление на стъпков двигател с Raspberry Pi
- Взаимодействие с Shift регистър с Raspberry Pi
В този урок ще свържем капацитивен тъчпад към Raspberry Pi. Капацитивният тъчпад има 8 клавиша от 1 до 8. Тези клавиши не са точно клавиши, те са чувствителни на допир подложки, поставени на печатната платка. Когато докоснем една от подложките, подложките изпитват промяната на капацитета на повърхността си. Тази промяна се улавя от управляващия блок и контролния блок, като отговор издърпва съответния щифт високо на изходната страна.
Ще прикачим този капацитивен сензорен модул на тъчпада към Raspberry Pi, за да го използваме като входно устройство за PI.
Ще обсъдим малко за Raspberry Pi GPIO Pins, преди да продължим по-нататък.
GPIO щифтове:
Както е показано на горната фигура, има 40 изходни щифта за PI. Но когато погледнете втората фигура по-долу, можете да видите, че не всички 40 извода могат да бъдат програмирани за наше използване. Това са само 26 GPIO пина, които могат да бъдат програмирани. Тези щифтове преминават от GPIO2 към GPIO27.
Тези 26 GPIO щифта могат да бъдат програмирани според нуждите. Някои от тези щифтове изпълняват и някои специални функции, за това ще обсъдим по-късно. Със специалния GPIO настрана, остават ни 17 GPIO (светло зелен цвят).
Всеки от тези 17 GPIO щифта може да достави максимум 15 mA ток. И сумата на токовете от всички GPIO не може да надвишава 50mA. Така че можем да изтеглим максимум 3 mA средно от всеки от тези GPIO щифтове. Така че не бива да се подправяте с тези неща, освен ако не знаете какво правите.
Сега друго важно нещо тук е, че PI логическият контрол е от + 3.3v, така че не можете да дадете повече от + 3.3V логика на GPIO пина на PI. Ако дадете + 5V на който и да е GPIO пин на PI, платката се поврежда. Затова трябва да захранваме капацитивния тъчпад с + 3.3V, за да получим правилни логически изходи за PI.
Необходими компоненти:
Тук използваме Raspberry Pi 2 Model B с Raspbian Jessie OS. Всички основни хардуерни и софтуерни изисквания са обсъдени преди това, можете да ги потърсите във въведението на Raspberry Pi, различно от това, от което се нуждаем:
- Свързващи щифтове
- Капацитивен тъчпад
Електрическа схема:
Връзките, които се извършват за капацитивен интерфейс на тъчпада, са показани в схемата по-горе.
Обяснение на работата и програмирането:
След като всичко е свързано според схемата, можем да включим PI, за да напишем програмата в PYHTON.
Ще говорим за няколко команди, които ще използваме в програмата PYHTON, Ще импортираме GPIO файл от библиотеката, функцията по-долу ни позволява да програмираме GPIO пинове на PI. Преименуваме също „GPIO“ на „IO“, така че в програмата, когато искаме да се позовем на GPIO щифтове, ще използваме думата „IO“.
импортирайте RPi.GPIO като IO
Понякога, когато GPIO щифтовете, които се опитваме да използваме, може да изпълняват някои други функции. В този случай ще получим предупреждения, докато изпълняваме програмата. Командата по-долу казва на PI да игнорира предупрежденията и да продължи с програмата.
IO.setwarnings (False)
Можем да отнесем GPIO пиновете на PI, или чрез пинов номер на борда, или чрез номера на тяхната функция. Подобно на „ПИН 29“ на платката е „GPIO5“. Така че ние казваме тук, или ще представим щифта тук с '29' или '5'.
IO.setmode (IO.BCM)
Задаваме 8 пина като входни щифтове. Ще открием 8 ключови изхода от капацитивен тъчпад.
IO.setup (21, IO.IN) IO.setup (20, IO.IN) IO.setup (16, IO.IN) IO.setup (12, IO.IN) IO.setup (25, IO.IN) IO.setup (24, IO.IN) IO.setup (23, IO.IN) IO.setup (18, IO.IN)
В случай, че условието в скобите е вярно, изразите вътре в цикъла ще бъдат изпълнени веднъж. Така че, ако GPIO щифт 21 отиде високо, тогава операторите вътре в контура IF ще бъдат изпълнени веднъж. Ако GPIO щифт 21 не отиде високо, тогава операторите вътре в контура IF няма да бъдат изпълнени.
if (IO.input (21) == True):
Командата отдолу се използва като цикъл завинаги, с тази команда операторите вътре в този цикъл ще се изпълняват непрекъснато.
Докато 1:
След като напишем програмата по-долу в PYTHON и я изпълним, сме готови за работа. Когато подложката се докосне, модулът издърпва съответния щифт и този спусък се открива от PI. След откриването PI отпечатва съответния клавиш на екрана.
Следователно имаме свързан капацитивен тъчпад към PI.