2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
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:
1. Arduino UNO
2. Çörək lövhəsi
3. Düymə
4. Rezistor
5. Jumper telləri
Addım 2: Dövrə Şeması:
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; }}