Mündəricat:

Vizit kartı/oyun konsolu: ATtiny85 və OLED ekranı: 5 addım (şəkillərlə)
Vizit kartı/oyun konsolu: ATtiny85 və OLED ekranı: 5 addım (şəkillərlə)

Video: Vizit kartı/oyun konsolu: ATtiny85 və OLED ekranı: 5 addım (şəkillərlə)

Video: Vizit kartı/oyun konsolu: ATtiny85 və OLED ekranı: 5 addım (şəkillərlə)
Video: Elektronik Kartvizit Yapımı 2024, Noyabr
Anonim
Image
Image
Qutular
Qutular

Hər kəsə salam

Bu gün sizə öz iş kartınızı/oyun konsolunuzu/arxa işıqlı I2C OLED ekranı və ATtiny85 Mikroprosessoru olan təsəvvür etdiyiniz hər şeyi necə qura biləcəyinizi göstərəcəyəm. Bu Təlimat kitabında hazırladığım bir PCB -nin əslində necə işlədiyini, necə qura biləcəyinizi və bu funksionallıqla nələr edə biləcəyinizi sizə xəbər verəcəyəm. Bir ATtiny85 -ə bağlanmış bir I2C ekranınız varsa, bu göstərişlər, şəkilləri nümayiş etdirmək istəsəniz və ya menyular, oyun və daha çox etmək istəsəniz hələ də kömək edə bilər.

Yəqin ki, bu şeyin əslində nə olduğunu düşünürsünüz. Batareyası, ekranı, düymələri, açma/söndürmə açarı və işləmə vahidi olan sadə bir çap lövhəsidir. Kiçik bir Gameboy olaraq düşünün ki, müxtəlif şeylər etmək üçün asanlıqla proqramlaşdıra bilərsiniz. İrəli!

Addım 1: Cəsarətlər

Qutular
Qutular
Qutular
Qutular

Hələ etməmisinizsə, Circuit.io -da bir hesab yaratmağınızı çox tövsiyə edirəm. Bu, dizaynımı ehtiyaclarınıza uyğunlaşdırmağa imkan verəcəkdir.

Bu addımda əslində bu çaplı lövhələrdən (PCB) birini necə əlinizə ala biləcəyinizi izah edəcəyəm. PCB -ni elektron sxemlər və PCB -lər yaratmaq üçün istifadə edə biləcəyiniz böyük bir onlayn vasitə olan circuits.io -da hazırladım. Dizaynı burada görə bilərsiniz:

PCB almaqla maraqlanırsınızsa, bu linkdən istifadə edərək OSH Park -dan istədiyiniz qədər sifariş verə bilərsiniz:

Lövhələri almaq üçün bir az vaxt lazımdır (1-3 həftə), amma mənə inanın. Buna dəyər! Öz çoxfunksiyalı kartınızı yaratmaq üçün aşağıdakı hissələrə ehtiyacınız olacaq:

  • ATIC85 SOIC-8 paketində. Bu, hər şeyi idarə edən layihəmizin beyinləridir.
  • I2C 128x64 piksel OLED Ekranı:
  • 2 22k ohm müqavimət. Bunlar düymələr üçün çəkmə rezistorlarıdır.
  • Səth Montajlı CR2032 Tutucu:
  • CR2032 Sikkə Hüceyrə Batareyası. Bu kiçik batareya dövrə kifayət qədər uzun müddət enerji verə bilər.
  • 3 pinli sürüşmə açarı. Bu güc açarıdır!
  • Qadın başlıqları. ATtiny85 -i dövrə içərisində proqramlaşdırmaq üçün bunları istifadə edə bilərsiniz!
  • 6 mm düymələr:
  • Çap olunmuş bir elektron kart (yuxarıdakı linkdən istifadə edərək sifariş edə bilərsiniz

Alətlər:

  • Lehimləmə dəmiri (incə ucu ilə)
  • Lehim
  • Qurğuşun qayçı

ATtiny85 proqramlaşdırmaq üçün:

  • 6 Kişidən kişiyə keçid telləri
  • 10 ədəd mikro farad kondansatör
  • Arduino Uno və ya digər ATmega əsaslı mikro nəzarətçi

Addım 2: PCB -nin yığılması

PCB -nin yığılması
PCB -nin yığılması
PCB -nin yığılması
PCB -nin yığılması

Bu həqiqətən olduqca asandır. Etməyiniz lazım olan şey, bütün komponentləri lövhədə göstərildiyi kimi müvafiq yerlərə lehimləməkdir. Bu OLED ekranlardan bəziləri fərqli ölçülərdə olur, buna görə sizinki lövhə üçün çox böyükdürsə, yuxarıdakı şəkildəki kimi yuxarıdan asın və digər tərəfdəki başlıqların üstündən bükün və onları çuxurlara lehimləyin getməli idilər. Çaşqınsınızsa ikinci görüntüyə baxın.

Bir neçə faydalı məsləhət:

  • ATtiny üzərindəki kiçik nöqtənin sürüşmə keçidinə yaxın olması üçün yönləndirilməsi lazımdır, əks halda sancaqlar yanlış qaydada olacaq.
  • Batareya tutucusunun istiqaməti vacibdir. Tutulan ucu həkk olunmuş üstü alt yastıqda olmalıdır (bir rezistora doğru işarə olunur).
  • Açarların, düymələrin, başlıqların və rezistorların istiqamətləndirilməsinin əhəmiyyəti yoxdur

Hər hansı bir sualınız olarsa, xahiş edirəm mənə [info] coniferapps.com ünvanından e -poçt göndərin

Addım 3: Proqramlaşdırma Zamanı

ATtiny/ekran kombinasiyamı aşağıdakı Təlimatlandırıcıdan istifadə edərək aldım: https://www.instructables.com/id/ATTiny85-connects-to-I2C-OLED-display-Great-Things/. Əslində AndyB2 -nin öz eskizlərimdə dəyişdirdiyi kitabxanadan da istifadə edirəm.

ATtiny -ni proqramlaşdırmağın yolu Arduino Uno -dan keçir. Aşağıdakı Təlimat bunu necə edəcəyinizi göstərir: https://www.instructables.com/id/Program-an-ATtiny-with-Arduino/. Daha əvvəl fərq etməmisinizsə, bütün lazımi sancaqlar PCB-də arxa tərəfdəki pin nömrələri ilə köməkçi bir şəkildə qırılır.

Əsas bir nümunə ilə başlamaq istəyirsinizsə, yuxarıda göstərilən eskizi kartınıza yükləyin. Bunu etməzdən əvvəl güc açarının sağa köçürüldüyünə əmin olun. Batareyaya və Uno -ya eyni anda gərginlik vermək istəmirsiniz! Bu qovluqda bir dəstə fayl var. Növbəti addımda bu barədə daha çox danışacağam, amma oradakı başlıq sənədlərinin əksəriyyəti monoxromatik bitmap şəkillərinin onaltılı təsvirləridir.. Bmp faylları bayaq qeyd etdiyim şəkillərdir - gördüyünüz kimi qara və ağdır və tam olaraq 128x64 piksel. Bunlar mikrokontrolörə yüklənməyib, amma istinad üçün əlavə edəcəyimi düşündüm.

Addım 4: Proqramın özü haqqında

Əvvəlki addımda yüklədiyiniz eskiz, bir menyu necə tətbiq edə biləcəyinizə dair çox sadə bir nümunədir. Sol və sağ düymələrin hər birini tıkladığınız zaman proqramdakı sayğacı dəyişir. ATtiny bu sayğacın vəziyyətini yoxlayan bir funksiya çağırılır və sayğacın nömrəsinə əsaslanaraq ATtiny ekranda hazırda seçilmiş menyu seçiminin şəklini çəkir. Fərqli seçilmiş menyu hüceyrələrinin hər biri öz şəklidir. Üst düyməyə basıldığı təqdirdə, ATtiny sayğacın vəziyyətini yoxlayaraq hansı detal ekranının göstəriləcəyini təyin edir. Bu detal ekranlar göstərilərkən ATtiny hər hansı bir düyməyə basıldığını yoxlayır. Bir düyməyə basmağı algıladıqdan sonra, menyuları çəkən funksiya yenidən çağırılır və menyunun cari vəziyyəti ekranda çəkilir və bizi yenidən menyuya aparır. Proqramlaşdırma işinə yeni başlamısınızsa, bir az qorxunc səslənir, amma mən sizə söz verirəm ki, koda baxanda daha məntiqli olacaq.

Detal ekranlarının hər biri də öz obrazıdır.

Əgər fərq etməmisinizsə, sürpriz seçimi heç nə etmir. Növbəti addımda buna çatacağıq:).

Addım 5: Yaradıcılığınızı fərdiləşdirin

İndi nə etdiyimi gördünüzsə, kartı öz məlumatlarınızla fərdiləşdirməyin vaxtı gəldi. Daxil etdiyim kitabxananın ekranda mətn çəkmək funksiyası var, amma çox daha yaxşı görünməyə meylli olduğu üçün ciddi şəkildə görüntüyə əsaslanan bir həll ilə getməyi məsləhət görürəm. Əvvəlcə proqramın bu hissəsinə fotoşəkillər əlavə etmək niyyətindəyəm, ancaq öz təlimatlandırıcılığını təmin etmək üçün kifayət qədər uzun müddətdir. Bura baxa bilərsiniz:

İndi fotoşəkilləri necə əlavə edəcəyinizi bildiyinizə görə, kartda edə biləcəyiniz bir çox şey var. Menyularımdan və kömək ekranımdan istifadə edə və öz əlaqə məlumatlarınızı əlavə edə bilərsiniz. Hətta "sürpriz" seçimi üçün kiçik bir oyun da edə bilərsiniz. Düymələrdən istifadə edərək çox kiçik 10x10 ölçülü bir ekranı hərəkət etdirmək və başqa bir sprite ilə toqquşub -vuruşmadığını yoxlamaq olduqca sadə olardı. Eyni konsepsiyadan istifadə edərək uçan bir quş klonu edə bilərsiniz! Bir şey edirsinizsə, şərhlərdə bunun bir şəkil/video/faylını göndərin!

Qeyd etməyi unutduğum daha bir kiçik məqam. Yaddaşa gəldikdə, ATtiny85 -də çox şey yoxdur. Proqramlar üçün təxminən 8 kb. 5 şəkil və OLED ekran kitabxanası ilə hazırkı eskizim bu 8kb -dan təxminən 7 -ni tutur. Etdiyiniz hər hansı bir oyun bu nisbətən kiçik bir marjın içinə sığmalı olacaq, buna görə əyləncəli bir problem olacaq:).

Mənə qulaq asdığınıza görə təşəkkür edirəm və hər hansı bir sualınız varsa, mənə [info] coniferapps.com ünvanından e -poçt göndərməkdən çəkinməyin ([ilə] @ilə əvəz edin). Zəhmət olmasa Autodesk Circuits yarışmasında mənə səs verin! İnşallah tezliklə göstərmək üçün öz vizit kartınız/oyununuz olacaq!

Tövsiyə: