Изглежда, че може да е по-лесно от свързването на бутон? Въпреки това и тук има подводни камъни. Нека да разберем.
Необходимо е
- - Arduino;
- - бутон за такт;
- - резистор 10 kOhm;
- - дъска за хляб;
- - свързващи проводници.
Инструкции
Етап 1
Бутоните са различни, но всички те изпълняват една и съща функция - те физически свързват (или обратно, прекъсват) проводниците заедно, за да осигурят електрически контакт. В най-простия случай това е свързването на два проводника; има бутони, които свързват повече проводници.
Някои бутони, след натискане, оставят проводниците свързани (бутони за заключване), други веднага отварят веригата след освобождаване (без заключване).
Също така бутоните са разделени на нормално отворени и нормално затворени. Първият, когато се натисне, затворете веригата, а вторият отворен.
Сега видът бутони, които се наричат „тактови бутони“, намери широко приложение. Баровете не са от думата "такт", а по-скоро от думата "тактилен", т.к. натискането се усеща добре с пръсти. Това са бутони, които при натискане затварят електрическата верига и когато се освободят, се отварят.
Стъпка 2
Бутонът е много просто и полезно изобретение, което служи за по-добро взаимодействие между човека и технологията. Но, както всичко в природата, той не е съвършен. Това се проявява във факта, че когато натиснете бутона и когато го пуснете, се получава т.нар. "bounce" ("отскачане" на английски). Това е многократно превключване на състоянието на бутона за кратък период от време (от порядъка на няколко милисекунди), преди да приеме стабилно състояние. Това нежелано явление възниква в момента на превключване на бутона поради еластичността на материалите на бутона или поради микро искри, възникващи от електрически контакт.
Можете да видите скачането на контактите със собствените си очи, използвайки Arduino, което ще направим малко по-късно.
Стъпка 3
За да свържете нормално отворен бутон на часовника към Arduino, можете да направите най-простия начин: свържете единия свободен проводник на бутона към захранването или земята, а другия към цифровия щифт на Arduino. Но най-общо казано, това е погрешно. Факт е, че в моментите, когато бутонът не е затворен, на цифровия изход на Arduino ще се появят електромагнитни смущения и поради това са възможни фалшиви аларми.
За да се избегне улавяне, цифровият щифт обикновено се свързва чрез достатъчно голям резистор (10 kΩ), или към земята, или към захранването. В първия случай това се нарича „изтегляща резисторна верига“, във втория - „изтегляща резисторна верига“. Нека да разгледаме всеки от тях.
Стъпка 4
Първо свързваме бутона с Arduino с помощта на изтегляща верига на резистора. За да направите това, свържете единия контакт на бутона към земята, а другия към цифровия изход 2. Цифровият изход 2 също е свързан чрез резистор 10 kOhm към захранването +5 V.
Стъпка 5
Нека напишем тази скица за обработка на кликвания върху бутони и я качим в Arduino.
Вграденият светодиод на щифт 13 вече свети постоянно, докато не се натисне бутонът. Когато натиснем бутона, той става LOW и светодиодът изгасва.
Стъпка 6
Сега нека сглобим падащата верига на резистора. Свържете единия контакт на бутона към захранването +5 V, другия към цифровия изход 2. Свържете цифровия изход 2 чрез 10 kΩ резистор към земята.
Няма да променяме скицата.
Стъпка 7
Сега светодиодът е изключен, докато не се натисне бутонът.