Mündəricat:

Düyməni istifadə edərək sayğac - Tinker Cad: 3 addım
Düyməni istifadə edərək sayğac - Tinker Cad: 3 addım

Video: Düyməni istifadə edərək sayğac - Tinker Cad: 3 addım

Video: Düyməni istifadə edərək sayğac - Tinker Cad: 3 addım
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Noyabr
Anonim
Image
Image
Tələb olunan komponentlər
Tələb olunan komponentlər

Bir düyməni işlədikdən sonra, tez -tez düymənin neçə dəfə basıldığına əsaslanaraq bəzi hərəkətlər etmək istəyirsiniz. Bunu etmək üçün düymənin vəziyyəti nə vaxt dəyişdiyini və bu vəziyyətin neçə dəfə baş verdiyini hesablamalısınız. Buna vəziyyət dəyişikliyi algılama və ya kənar algılama deyilir. Bu təlimatda vəziyyət dəyişikliyini necə yoxlayacağımızı öyrənirik, müvafiq məlumatları Serial Monitor -a göndəririk və bir LED -i yandırmaq və söndürmək üçün dörd vəziyyət dəyişikliyini sayırıq.

Addım 1: Lazım olan komponentlər:

Tələb olunan komponentlər
Tələb olunan komponentlər
Tələb olunan komponentlər
Tələb olunan komponentlər
Tələb olunan komponentlər
Tələb olunan komponentlər

1. Arduino UNO

2. Çörək lövhəsi

3. Düymə

4. Rezistor

5. Jumper telləri

Addım 2: Dövrə Şeması:

Image
Image

Lövhəyə üç tel bağlayın. Birincisi, düymənin bir ayağından aşağıya çəkilən bir rezistordan (burada 10k ohm) yerə keçir. İkincisi, düymənin müvafiq ayağından 5 voltlu təchizata keçir. Üçüncüsü, düymənin vəziyyətini oxuyan rəqəmsal G/Ç pininə (burada pin 2) bağlanır.

Düymə açıldıqda (sıxılmadıqda) düymənin iki ayağı arasında heç bir əlaqə yoxdur, buna görə də pin yerə (açılan müqavimət vasitəsi ilə) bağlıdır və LOW oxuduq. Düymə bağlandıqda (basıldıqda), iki ayağı arasında bir əlaqə qurur, pimi gərginliyə bağlayır, beləliklə YÜKSEK oxuyuruq. (Pin hələ də yerə bağlıdır, amma rezistor cərəyan axınına müqavimət göstərir, buna görə də ən az müqavimətin yolu +5V -dir.) Rəqəmsal G/Ç pinini hər şeydən ayırsanız, LED nizamsız yanıb -sönə bilər. Bunun səbəbi, girişin "üzən" olmasıdır - yəni nə gərginliyə, nə də yerə bağlanmır. Az və ya çox təsadüfi olaraq YÜKSƏK və ya DÜŞÜK qaytaracaq. Bu səbəbdən dövrədə aşağıya çəkilən bir rezistora ehtiyacınız var.

Addım 3: Kod:

Daha maraqlı layihələr üçün mənimlə əlaqə saxlayın: Youtube:

Facebook səhifəsi:

İnstagram:

int düyməsi = 2;

int a, i = 0; void setup () {Serial.begin (9600); pinMode (düymə, GİRİŞ); } void loop () {a = digitalRead (düymə); əgər (a == 1) {i = i+1; Serial.print ("Sayıcı ="); Serial.println (i); } başqa {i = 0; }}

Tövsiyə: