Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Əvvəlki dərsdə, RGB halqa neo pikselini istifadə edərək potansiometr göstəricisi etdim. bunu "Potentio Göstəricisi RGB Neopixel İstifadə edir" məqaləsində görə bilərsiniz.
Və bu gün MAX7219 led metrik displeydən istifadə edərək potensialator göstəricisini göstərəcəyəm.
Bunu etmək üçün aşağıdakı adımları edin.
Addım 1: Tələb olunan komponentlər
Tələb olunan komponentlər:
- Arduino nano
- Potensialiometr
- Max7219 Led Matrix Ekranı
- Jumper Tel
- Layihə lövhəsi
- USB mini
- noutbuk
Tələb olunan kitabxana
LedControl
Addım 2: Sxem
Komponentləri yığmaq üçün yuxarıdakı sxematik rəsmə baxın, aşağıdakı məlumatları da görə bilərsiniz:
Arduino - Led və potensial
+5V ==> VCC və 3. Potensial
GND ==> GND & 1. Potensial
D6 ==> DataIn
D7 ==> CLK
D8 ==> CS / Yükləmə
Addım 3: Proqramlaşdırma
Uyğunlaşmaq üçün aşağıdakı kodu istifadə edin:
#"LedControl.h" daxil edin
/*
İndi işləmək üçün bir LedControl lazımdır. ***** Bu pin nömrələri, ehtimal ki, aparatınızla işləməyəcək ***** pin 6, DataIn pin 7 -yə, CLK pin 8 -ə, LOAD -a bağlıdır. Yalnız bir MAX72XX -ə sahibik. */
LedControl lc = LedControl (6, 7, 8, 1);
imzasız uzun gecikmə müddəti = 100;
boş quraşdırma () {
lc.shutdown (0, yanlış); lc.setIntensity (0, 8); lc.clearDisplay (0); } void loop () {int val = analogRead (A0); val = xəritə (val, 0, 1023, 0, 8);
əgər (dəyər == 1)
{
lc.setRow (0, 0, B10000000);
}
əgər (dəyər == 2)
{lc.setRow (0, 0, B10000000); lc.setRow (0, 1, B10000000); } əgər (dəyər == 3) {
lc.setRow (0, 0, B10000000);
lc.setRow (0, 1, B10000000); lc.setRow (0, 2, B10000000); } əgər (val == 4) {
lc.setRow (0, 0, B10000000);
lc.setRow (0, 1, B10000000); lc.setRow (0, 2, B10000000); lc.setRow (0, 3, B10000000); } əgər (dəyər == 5) {
lc.setRow (0, 0, B10000000);
lc.setRow (0, 1, B10000000); lc.setRow (0, 2, B10000000); lc.setRow (0, 3, B10000000); lc.setRow (0, 4, B10000000); } əgər (val == 6) {lc.setRow (0, 0, B10000000); lc.setRow (0, 1, B10000000); lc.setRow (0, 2, B10000000); lc.setRow (0, 3, B10000000); lc.setRow (0, 4, B10000000); lc.setRow (0, 5, B10000000); } əgər (val == 7) {lc.setRow (0, 0, B10000000); lc.setRow (0, 1, B10000000); lc.setRow (0, 2, B10000000); lc.setRow (0, 3, B10000000); lc.setRow (0, 4, B10000000); lc.setRow (0, 5, B10000000); lc.setRow (0, 6, B10000000); } əgər (val == 8) {lc.setRow (0, 0, B10000000); lc.setRow (0, 1, B10000000); lc.setRow (0, 2, B10000000); lc.setRow (0, 3, B10000000); lc.setRow (0, 4, B10000000); lc.setRow (0, 5, B10000000); lc.setRow (0, 6, B10000000); lc.setRow (0, 7, B10000000); } lc.clearDisplay (0); }
Addım 4: Nəticə
Proqramlaşdırıldıqdan sonra nəticələr belə olacaq.
Potentio sağa döndərilsə, canlı LEDlər getdikcə dönüş sayını izləyəcək.
Qazan sola çevrilsə, fırlanma gücündən sonra canlı LED getdikcə azalacaq.