Mündəricat:
- Addım 1: Bu Layihə üçün Nə Lazımdır
- Addım 2: Dövrə
- Addım 3: Dövrün Breadboard versiyası
- Addım 4: Şriftin Yüklənməsi
- Addım 5: Əlavə Sürücülər əlavə edin
- Addım 6: Cihazları Qurun
- Addım 7: Xarakterləri müəyyənləşdirin və üfüqi və şaquli xətlər çəkin
- Addım 8: Qutular, Bloklar və Eğimli Xətlər
- Addım 9: Dərəcə Simvolu, Anqnment, Çubuq Qrafiki və Dairə
- Addım 10: Zibil Toplama, Başlıqlar və Çevrələr
- Addım 11: Lines Demo
- Addım 12: Əsas Döngə: Çubuq Qrafiki və Müəyyən Edilmiş Xarakterlər
Video: Itsybitsy M4 Express istifadə edərək CircuitPython ilə SSD1306 I2C OLED 128x64 Ekranındakı qrafik: 13 addım (şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
SSD1306 OLED displeyi kiçik (0.96 ), ucuz, geniş yayılmış, I2C, Raspberry Pi, Arduino və ya Adafruit Itsybitsy M4 kimi mikroprosessor inkişaf lövhələrinə asanlıqla bağlanan (yalnız 4 telli) 128x64 pikselli monoxrom qrafik ekrandır. Express, CircuitPlayground Express və ya digər CircuitPython cihazları. Sürücüləri internetdən yükləmək olar.
Arduinos üçün qrafik rutinlər bir müddətdir mövcuddur, lakin digər inkişaf sistemlərində yoxdur.
Əsas cihaz sürücüləri istifadəçilərə imkan verir:
- Ekranı qara və ya ağa təmizləyin. oled.fill (c)
- Oled.text ("Mətn", x, y, c) müəyyən bir (x, y) mövqeyində ekrana bir mətn sətri yazın.
- Oled.pixel (x, y, c) müəyyən bir (x, y) mövqeyində bir nöqtə çəkin.
- Ekrana bir şəkil faylı yükləyin. (Bu layihədə istifadə olunmur)
- Oled.show () ekranını yeniləyin
Bu Təlimat, sadə prosedurlarla necə çəkiləcəyini interaktiv şəkildə göstərəcək:
- xətlər
- dairələr
- içi boş qutular
- möhkəm bloklar
- əvvəlcədən təyin edilmiş simvollar
Metodları nümayiş etdirmək üçün Adafruit Itsybitsy M4 Express istifadə edəcəyəm, ancaq Pythondakı kod digər inkişaf sistemlərinə asanlıqla köçürülə bilər.
Bu nümayiş üçün Itsybitsy M4 -ü seçdim, çünki ucuz, güclü, proqramlaşdırmaq asandır, analoq və rəqəmsal Giriş/Çıxış daxildir, çoxlu yaddaşa malikdir, İnternetdə sənədləri və yardım forumlarını asanlıqla yerləşdirir, əvvəlcə qurmaq çox asandır. və kodlaşdırmağı yeni öyrənənlər üçün ideal Python versiyası olan CircuitPython -u dəstəkləyir.
Itsybitsy və SSD1306 qurduqdan sonra bu çox sadə bir çörək taxtası quruluşudur. Yazı yoxdur, bütün faylları yükləyə bilərsiniz.
Bu ucuz və asan bir layihədir, lakin bəzi aralıq/qabaqcıl fikirlər təqdim edir. Ümid edirəm sınayacaqsınız. Bu kiçik ekrandan çox təsirləndim.
Addım 1: Bu Layihə üçün Nə Lazımdır
Avadanlıq:
- SSD1306 I2C mono ekran 128x64 piksel
- Itsybitsy M4 Express
- microUSB -dən USB kabelinə - lövhəni proqramlaşdırmaq üçün
- Çörək lövhəsi
- 1 10K Ohm potansiyometr
- 1 düymə açarı
- birləşdirən tel - müxtəlif rənglər kömək edə bilər
- Kompüter (kodu yazmaq və yükləmək üçün) - çox köhnə bir dizüstü kompüter edəcək.
Proqram təminatı:
Mu redaktoru - kod yazmaq və skriptini Itsybitsy -yə yükləmək üçün
Itsybitsy-nin qurulması burada izah olunur:
CircuitPython -un son versiyası:
CircuitPython kitabxanaları:
Mu Redaktor:
Addım 2: Dövrə
Bu qurmaq üçün çox sadə bir sxemdir. Növbəti səhifə işləri asanlaşdırmaq üçün rəngli tellərlə bitmiş çörək taxtasını göstərir.
Addım 3: Dövrün Breadboard versiyası
Çörək taxtasının yuxarı və aşağı hissələrində elektrik rayları var. Qırmızı tel ilə +ve relsləri birləşdirin. Qara tel ilə birlikdə relsləri birləşdirin.
Itsybitsy'nin 3V pinini aşağı +ve rayına - qırmızı telə qoşulun. (Sütun 12)
Itsybitsy -nin G (GND) pinini üst -üst dəmir yolu - qara telə qoşulun. (Sütun 12)
33 və 34 -cü sütunlarda, SSD1306 VCC və GND sancaqlarını üst elektrik raylarına qoşun.
Çəhrayı bir tel ilə SCL sancaqlarını birləşdirin.
Boz bir tel ilə SDA pinlərini birləşdirin.
Qırmızı və qara tellərlə potansiyometrenin xarici sancaqlarını yuxarı elektrik raylarına, yaşıl tellə isə İtybitsy üzərindəki A5 -ə bağlayın.
Düymə açarının bir tərəfini bənövşəyi bir tel ilə 2 pininə, qara tellə digər tərəfini GND rayına bağlayın.
Addım 4: Şriftin Yüklənməsi
Şrift faylını yükləyin və CIRCUITPY sürücüsünə sürükləyin. (Bu, Itybitsydir.)
Lib qovluğuna iki dəfə vurun və artıq yüklədiyiniz sürücülərin siyahısına baxın.
Addım 5: Əlavə Sürücülər əlavə edin
Lib qovluğunda aşağıdakılara ehtiyacınız olacaq:
- simpleio.mpy
- adafruit_bus_device
- adafruit_framebuf.mpy
- adafruit_ssd1306.mpy
Əgər onlar yoxdursa, mövcud son versiyadan qovluğa sürükləyin.
İndi skript yükləməyə hazırsınız.
Mu redaktoruna yükləndikdən sonra main.py adı ilə Itsybitsy -də saxlaya bilərsiniz.
Proqram xətlərin, dairələrin, dinamik çubuq qrafikinin və müəyyən edilmiş simvolların nümayişindən ibarətdir. Qazanı yavaşca çevirin və ekranı idarə etmək üçün düyməni basıb saxlayın.
Növbəti səhifələr proqramın necə işlədiyi haqqında daha çox məlumat verir.
Addım 6: Cihazları Qurun
Bu birinci hissədə bütün kitabxanalar yüklənir və SSD1306, potensiometr və düymə açarı düzgün sancaqlar üzərində qurulur.
Addım 7: Xarakterləri müəyyənləşdirin və üfüqi və şaquli xətlər çəkin
Bu bölmə əvvəlcədən təyin edilmiş simvolları qurur. Genişliyi 5 nöqtə və hündürlüyü 8 nöqtədir. Tərifdəki hər bir nöqtə ekranda 4 nöqtə çəkir ki, daha yaxşı görünsünlər.
Üfüqi və şaquli xətlər bir döngə ilə çəkmək asandır. Yalnız sonunda əlavə nöqtəyə ehtiyacınız olduğunu xatırlamalısınız. (0, 7) -dən (5, 7) -ə qədər olan bir xətt 6 nöqtəyə ehtiyac duyacaq: x, 0, 1, 2, 3, 4 və 5 -ə bərabərdir.
Əsas nöqtə əmri oled.pixel (x, y, color) - 0 qara, 1 ağdır.
Mənşəyi (0, 0) ekranın sol üst hissəsində, 0 - 127 piksel üfüqi (soldan sağa) və 0 - 63 şaquli (yuxarıdan aşağıya).
Addım 8: Qutular, Bloklar və Eğimli Xətlər
Qutular üfüqi və şaquli xətlərdən tikilmişdir.
Bloklar çoxlu üfüqi xətlərdən tikilmişdir.
Eğimli xətlər üçün əvvəlcə koordinatların ən çox sola verildiyini yoxlayırıq. Əks təqdirdə onları dəyişdiririk, çünki xətt soldan sağa çəkiləcək.
Sonra yamacı hesablayırıq və hər bir x dəyəri üçün y dəyərini təyin etmək üçün istifadə edirik.
Ekran (t) proseduru, yenilənmiş ekranı görünən edir və qısa bir gecikmə, t saniyə gözləyir.
Addım 9: Dərəcə Simvolu, Anqnment, Çubuq Qrafiki və Dairə
Dərəcə simvolu 4 pikseldən yaradılır.
Align () rutini, sabit dəyərlər içərisində qısa dəyərləri sağa hizalamaq üçün nömrənin önünə əlavə boşluqlar əlavə edir.
Qrafik (v) rutini, seçilmiş faizi verən üfüqi bir çubuq qrafiki çəkir. Dəyər, sağ tərəfdə 100 (Ton və ya Üst) təmsil etmək üçün 'T' istifadə edərək yazılır.
Çevrələr bəzi triqonometriya tələb edir, buna görə də skriptin əvvəlində riyaziyyat kitabxanasını idxal etməliyik. Bir radius 90 dərəcə döndüyü üçün mərkəzdən x və y ofsetlərini hesablamaq üçün sin, cos və radian istifadə edirik. Ofsetlərin hər hesablanması üçün dörd kvadrantın hər birində ballar çəkilir.
Addım 10: Zibil Toplama, Başlıqlar və Çevrələr
Bu təlimatlar, ekranı qara və ağa təmizləməyi, ekrana mətn yazmağı və yer boşaltmaq üçün gc () 'zibil toplama' rutinindən istifadə etməyi nümayiş etdirir. Dəyər, daha böyük bir skript üçün çox yer olduğunu göstərir.
Proqram daha sonra ortaq mərkəzi olan və hərəkət edən mərkəzləri olan dairələr çəkir. Tələb olunan hesablama miqdarını nəzərə alaraq olduqca tez bir iş.
Satır demosu üçün başlıq sonradan yazılır.
Addım 11: Lines Demo
Bu rutin həqiqətən line () rutininə məşq edir. Radial xətlər, ekranın dörd küncünün hər birindən fərqli boşluqlarla nümunələr meydana gətirir.
Addım 12: Əsas Döngə: Çubuq Qrafiki və Müəyyən Edilmiş Xarakterlər
Bu proqramın əsas döngəsidir. Potensiometrdən alınan dəyərlər göstərilən dəyərləri dəyişdirir və çubuq qrafikinin uzunluğunu dəyişir.
Düyməni basıb saxlasanız, müəyyən edilmiş simvollar 1/0 və True/False kimi dəyişdirilir. Bu loop olduqca yavaş işləyir, çünki əvvəlcədən təyin edilmiş simvolların çəkilməsi yavaş bir prosesdir. Bəzilərini şərh edərək işləri sürətləndirə bilərsiniz.
Bu demonu sadə saxlamaq üçün heç bir temperatur sensoru yoxdur, buna görə də '?' 190 sətrində bir dəyər əvəzinə göstərilir.
Tövsiyə:
Arduino UNO istifadə edərək pilotsuz təyyarə necə etmək olar - Mikrokontrolördən istifadə edərək bir Quadcopter hazırlayın: 8 addım (şəkillərlə)
Arduino UNO istifadə edərək pilotsuz təyyarə necə etmək olar | Mikrokontrolördən istifadə edərək Quadcopter hazırlayın: Giriş Youtube Kanalımı Ziyarət Edin Drone almaq üçün çox bahalı bir gadget (məhsul) təşkil edir. Bu yazıda necə ucuz satacağımı müzakirə edəcəyəm? Ucuz qiymətə öz əlinizlə bunu necə edə bilərsiniz … Yaxşı Hindistanda bütün materiallar (mühərriklər, ESClər
I2C / IIC LCD Ekran - Arduino ilə SPI -IIC Modulundan istifadə edərək I2C LCD Ekranına SPI LCD istifadə edin: 5 addım
I2C / IIC LCD Ekran | Arduino ilə SPI -dən IIC Modulundan istifadə edərək I2C LCD Ekranına SPI LCD -dən istifadə edin: Salam uşaqlar normal SPI LCD 1602 -yə qoşulmaq üçün çoxlu tellər olduğundan arduino ilə əlaqə qurmaq çox çətindir, ancaq bazarda bunu edə biləcək bir modul var. SPI ekranını IIC ekrana çevirin, buna görə yalnız 4 tel bağlamalısınız
Neopixel Ws2812 M5stick-C ilə Göy qurşağı LED Glow - Arduino IDE -dən istifadə edərək M5stack M5stick C -dən istifadə edərək Neopixel Ws2812 -də Göy qurşağının Çalışması: 5 addım
Neopixel Ws2812 M5stick-C ilə Göy qurşağı LED Glow | Arduino IDE istifadə edərək M5stack M5stick C istifadə edərək Neopixel Ws2812 üzərində Göy qurşağı çalıştırın: Salam uşaqlar bu təlimatlarda Arduino IDE ilə m5stack m5stick-C inkişaf lövhəsi ilə neopixel ws2812 LED və ya led şerit və ya led matris və ya led üzük istifadə etməyi öyrənəcəyik. onunla bir göy qurşağı nümunəsi
HT12D HT12E istifadə edərək RF 433MHZ Radio İdarəetmə - 433mhz ilə HT12E və HT12D istifadə edərək Rf Uzaqdan İdarəetmə edilməsi: 5 addım
HT12D HT12E istifadə edərək RF 433MHZ Radio İdarəetmə | HT12E və HT12D -dən 433mhz istifadə edərək Rf Uzaqdan İdarəetmə edilməsi: Bu təlimatda sizə HT12E kodlu 433mhz ötürücü qəbuledici modulu istifadə edərək RADIO uzaqdan idarə etməyi göstərəcəyəm. HT12D kod deşifratoru IC. Bu təlimatda çox ucuz komponentləri istifadə edərək məlumat göndərə və ala bilərsiniz: HT
Itsybitsy M4 Express 1 ilə CircuitPython: Quraşdırma: 9 addım
Itsybitsy M4 Express 1 ilə CircuitPython: Quraşdırma: Kodlaşdırmada yenisiniz? Yalnız Scratch istifadə olunur və LEDlər, açarlar, displeylər və sensorlar ilə Fiziki hesablamaya asan giriş imkanı verən mətn dilinə keçmək istəyirsiniz? O zaman bu sizin üçün ola bilər. Bu saytda bir çox Təlimatların olduğunu gördüm