İçindekiler:

500 Oyunlu Ardubaby Mini Oyun Konsolu: 10 Adım
500 Oyunlu Ardubaby Mini Oyun Konsolu: 10 Adım

Video: 500 Oyunlu Ardubaby Mini Oyun Konsolu: 10 Adım

Video: 500 Oyunlu Ardubaby Mini Oyun Konsolu: 10 Adım
Video: Mario Bile Oynatan Arduino Tabanlı Game Boy 2024, Temmuz
Anonim
Ardubaby 500 Oyunlu Mini Oyun Konsolu
Ardubaby 500 Oyunlu Mini Oyun Konsolu
Ardubaby 500 Oyunlu Mini Oyun Konsolu
Ardubaby 500 Oyunlu Mini Oyun Konsolu

Yaratıcıya teşekkür ederiz (Kevin Bates), Arduboy çok başarılı bir 8 bit oyun konsolu. Arduboy'un topluluk forumunda özgürce paylaşan hobici tarafından yazılmış binlerce oyun vardı, böylece daha fazla insan kodlamayı öğrenebiliyordu.

Donanım tasarımı da açık kaynaklıdır ve benim gibi üreticilerin kendi donanım sürümlerini tasarlamalarına ve işlevini geliştirmek için yazılım yardımcı programları geliştirmelerine olanak tanır. Flash-Cart devresini, Arduino IDE için ev yapımı paketi ve yolda bilgisayar olmadan oynamak için 16Mbyte'lık bir seri flash bellekte 500 oyun depolayabilen Flash cart'ı yönetmek için python yardımcı programlarını tasarlayan MR. Blinky'ye teşekkür ederiz.

Arduboy'un topluluk forumundaki tartışma konularını inceleyerek, birkaç ev yapımı Arduboy oluşturmak için neye ihtiyacım olduğunu öğrendim. Yeni başlayanlar için bu kolay olmayabilir. Bu yüzden öğrendiklerimi uçtan uca tek bir videoda ve bu yazılı talimatta paylaşmak istiyorum. Umarım bu, kendi kitlerini oluşturmak için cevaplar arayan, ancak nasıl soracağını bilmeyen veya bu soruları sormak için doğru kanalı bulamayanlara yardımcı olacaktır.

Benim Arduboy versiyonum kredi kartının sadece 1/4'ü kadar küçük (3,5 cm x 5,0 cm0) ama biraz kalın (alt kapak dahil 2 cm), ancak ihtiyacınız olan tüm özelliklere sahip: 0,9 OLED, kulaklık jakı, ses kontrolü, RGB LED.

ve en önemlisi, üst devre kartını (düğme şapkasını) değiştirerek oyun konsolu düğmelerinizi farklı düğmelerle değiştirmenize olanak tanıyan genişletme bağlantı noktası.

Daha sonra sessiz düğmeleri, joystick benzeri düğmeleri ve hatta potansiyometre gibi analog denetleyicileri kullanabilirsiniz.

Ayrıca küçük bir hava istasyonu oluşturmak için nem ve sıcaklık sensörü ekleyebilir veya bir mesafe ölçer oluşturmak için süper sonik sensörler ekleyebilirsiniz.

Ayrıca, 500'e kadar Arduboy oyununu veya yardımcı programı depolamak için ek 16M baytlık seri flash belleğe sahiptir. MR. Blinky tarafından tasarlanan bootloader'ı (Cathy3K) kullanarak, yoldaki 500 oyundan herhangi birini çağırabilir ve bunu saniyeler içinde ATmega32U4 çipine (Arduboy'un mikro denetleyicisi) kendiliğinden flashlayarak oynamaya başlayabilirsiniz. bilgisayarınıza veya telefonunuza bağlanma.

Adım 1: Tüm Parçaları Alın

Tüm Parçaları Alın
Tüm Parçaları Alın

Parçaların çoğu amazon.com, aliexpress.com veya taobao.com üzerinden çevrimiçi olarak satın alınabilir. Bunlardan bazıları kullanılmayan Arduino kartlarından toplanabilir.

Tüm bunları taobao.com'dan satın almak ve Hong Kong'a göndermek bana 12 USD'den (nakliye hariç) daha ucuza mal oldu.

Arduino Pro Mikro

OLED 64x128 SSD1306 SPI 0.96"

Winbond W25Q128 16Mbyte bellek yongası

3.7V 280 MaH Lipo pil USB LiPO pil şarj modülü (4.2V)

Ses kontrolü için 3,5 mm kulaklık jakı 10K mini VR (B103)

Potansiyometre veya döner kontrolör için 10K mini VR (B103) (isteğe bağlı)

mini Piezo hoparlör

3k, 3x 1K direnç

3'ü 1 arada RGB LED Yedi

5x5mm Sessiz Düğme

Güç anahtarı için 9x4mm sürgülü anahtar

iki adet 5x8cm çift taraflı perf tahtası

bir adet 5x8cm tek taraflı mükemmel tahta

1x13 pin dişi başlık

1x13 pin erkek başlık

1x7 pin dişi başlık

Arka kapak için 1x7 pin erkek başlık 3.5x5cm Akrilik levha

bütçenize dahil edilecek nakliye maliyeti

Adım 2: Ana Kartı Yapın

Ana Kurulu Yap
Ana Kurulu Yap
Ana Kurulu Yap
Ana Kurulu Yap
Ana Kurulu Yap
Ana Kurulu Yap

1. Anakart için çerçeve oluşturun.

a. 8cm x 5cm perf tahtalarını alın. 3.5cm x 5cm daha küçük perf tahtaları yapmak için bir makas (veya testere) kullanarak kesin. Bu hala 18 sıra ve 13 sütun iğne deliğine sahip olmalıdır. Arka kapak olarak kullanmak için bir Akrilik levhadan 3.5cm x 5cm'lik bir parça kesin.

B. Düğme şapkası ve genişletme için 13 pimli dişi başlığı alttaki son sıraya lehimleyin. C. 7 pimli OLED için üstteki ilk sıraya 7 pimli bir dişi başlık lehimleyin.

NS. Sıfırlama düğmesi için sessiz bir düğme lehimleyin. e. Güç anahtarı için sürgülü bir anahtarı lehimleyin. F. Kulaklık için 3,5 mm stereo kulaklık jakını lehimleyin. G. 3 pimli 10K mini Değişken direnç yapıştırın.

2. 4.2V LIPO akü şarj cihazı ve 3.3V regülatör devresini yapınız.

a. Harici bir 3.3V regülatörden güç sağlayabilmemiz için Pro-Micro kartındaki 5 pinli 5V regülatörün lehimini sökün.

B. LIPO pil şarj modülünü, 3.4 mm pil jakının hemen yanındaki ana karta sığacak şekilde kesin. Kesimi, USB konektörünün devrenin geri kalanıyla buluştuğu noktada yapmanız gerekecektir. Bu hala çok büyükse, biraz daha kırpmanız gerekebilir. Benim durumumda, daha fazla düzeltmeme izin vermek için dirençlerden birini yeniden yerleştirmem ve yeniden lehimlemem gerekiyor.

C. Alanı azaltmak ve ayrıca kısa devreyi önlemek için 3,3V regülatörün (AMS1117-3.3) üstündeki tırnağı kesin. Ardından tpin 1'i negatif çıkışa ve pin 3'ü LIPO pil şarj modülünün pozitif çıkışına lehimleyin. Gürültüyü ayırmak ve azaltmak için Pin 1 ve Pin 2 arasına 0.1 uF kapasitör lehimleyin. Mümkünse alanı azaltmak için küçük bir SMD tipi kapasitör kullanın.

NS. Pro mikro kartın RAW pininden 0,3 mm lamine (yalıtımlı) bir kabloyu pil şarj modülünün pozitif 5V girişine bağlayın. Pro mikro kartın GND pininden bir kabloyu pil şarj modülünün negatif girişine bağlayın. 3.3V regülatörün orta piminden (pim 2) bir kablo bağlayın. LIPO pilin negatif ve pozitif terminallerini sırasıyla pil şarj cihazının negatif ve pozitif çıkışına bağlayın.

NS. Bilgisayarınızdan gelen USB kablosunu Pro-Micro Board'a bağlayın. RAW pimi, USB kablosundan LIPO pili şarj etmek için düzenlenecek olan LIPO pil şarj modülüne 5V sağlamalıdır. Şarj LED'i yanmalıdır. 3.3V regülatör, Pro-Micro Board'u çalıştırmak için 4.2V çıkışını 3.3V'a çevirmelidir. Pro-Micro kartındaki LED yanmalıdır.

e. Arduino IDE'yi başlatın ve Pro Micro'nun USB bağlantı noktasının bilgisayarınız tarafından tanınıp tanınmadığını kontrol etmek için bağlantı noktası adını kontrol etmek için Araçlar -> Bağlantı Noktaları'na tıklayın. MAC OSX'imde “/dev/cu.usbmodem14201 (Arduino Leonardo)” görünüyor. Araçlar-Panolar'a tıklayın ve “Arduino Leonardo”yu seçin. Ardından örnek çizimi “Blink” yükleyin. Ardından, Pro Micro'ya yükleme yapıp yapamayacağınızı kontrol etmek için yüklemeyi test edin. Herhangi bir sorun varsa, kablolamayı ve lehimlemeyi tekrar kontrol edin.

3. Seri flaş ek kartını yapın. a. Flash bellek yongasını ve D11, D12, D14'ün ekstra koparma pimlerini barındırmak için ek kart olarak kullanılmak üzere 7 pim delikli x 4 pim delikli daha küçük bir tek taraflı mükemmel kartı kesin. B. Kartın son 2. sırasındaki lehim pedlerini ikiye bölün. Bu, yüzeye monte bir cihaz olan seri flash bellek modülünü pinler arasında dar bir mesafe ile ortadaki iki pin lehim pedinin iki yarısı üzerinde duracak ve kısa devre olmayacak şekilde monte etmek için kullanılacaktır. C. Winbond W25Q128 bellek yongasını mükemmel karta lehimleyin. İki pinin temas etmediğinden emin olun.

4. D11, D12, D13 pinleri için ATMega32U4 çipinden ek çıkışları lehimleyin. a. İnce bir lehim ucu ve bir büyüteç kullanarak, D11, D12, D13 pinlerini koparmak için üç adet 0,5 mm lamine (yalıtımlı) teli ATMega32U4 çipinin pinlerine lehimleyin. ATMega32U4'ün pin düzenine bakın. Bu projenin en zor kısmıdır. Bunu her lehimlemem gerektiğinde yarım saat harcadım. Mikro denetleyicinin diğer pinlerini kazayla kısa devre yapmamaya çok dikkat etmeniz gerekirken, yine de uzun süre dayanacak sağlam bir bağlantı yapmanız gerekir. Bu tür küçük lehimleme işlerini nasıl yapacağınızı ve lehim sökme iplerini kullanarak kazara dökülen lehimleri nasıl kurtaracağınızı öğrenmek için youtube videolarını izleyin. Yeterince becerikli değilseniz sıcak hava tabancası/üfleyici tavsiye etmem. Mesafe ve güç iyi kontrol edilmezse, ATMega32U4 yongasının lehimlerini kolayca bozabilir veya diğer bileşenleri eritebilir ve tüm karta geri dönüşü olmayan noktaya kadar zarar verebilir.

B. üç telin diğer uçlarını seri flaş ek kartının son sırasındaki ortadaki 3 lehim pedine lehimleyin.

5. Seri flaş ek kartını Pro Micro çipine monte edin. a. Pro Micro kartının üstündeki ilk pin sırasında 0,5 mm telleri lehimleyin, yani TX ve RAW.

B. 0,5 mm'lik kabloları (örneğin transistörlerin bacaklarından gelenler) Pro Micro çipinin arkasındaki son dört sıra pime lehimleyin. yani D6, D7, D8, D9 ve SCLK, MISO, MOSI ve A10. Tel yukarıdan aşağıya doğru çıkıntı yapmalıdır, böylece onu ek kartta lehimlemek için kullanabiliriz ve bunu alttaki ana karta bağlayabiliriz. C. Pro Micro'nun son pin sıralarını yardımcı kartın pinlerine bağlayarak seri flaş ek kartını Pro micro'ya lehimleyin.

6. LIPO Batarya şarj kartını ana karta monte edin. a. LIPO Pil şarj kartının 4 köşesine 0,5 mm kablo lehimleyin (örn. 3V regülatörün orta piminin bulunduğu noktada bir delik açın. 0,3 mm lamine teli orta pime (3,3V çıkış) lehimleyin. b. Pil şarj kartının 4 ayağını 3,5 mm kulaklık jakının hemen yanındaki ana karta lehimleyin. Alanı azaltmak için, şarj panosu ana kartı karşılamak üzere aşağı bastırılmalıdır.

7. Pro mikro kartı ana kartın altına monte edin ve Pro Micro'nun son 4 satırındaki ve ilk satırındaki tüm pinleri ana karta lehimleyin. Diğer pinleri lehimlemeye gerek yok, daha sonra gerektiğinde lamine teller ile bağlanacaklar. Bu, daha kolay modifikasyona ve gerekirse Pro Micro'nun yanması durumunda değiştirilmesine izin vermek içindir.

8. Lehimlemenin geri kalanını yapın.

Pro Micro kartının pinlerini çeşitli bileşenlere ve başlıklara bağlayın. Tüm lehimleme bağlantıları çift taraflı perf levhanın alt tarafında yapılacaktır. Tüm lehimleme tamamlandıktan sonra bağlantıyı test edin.

9. Ana kartın altını aynı boyuttaki Akrilik levha ile kaplayın.

Adım 3: Düğme Şapkasını Yapın

1. Düğme şapka için çerçeve oluşturun

a. 8cm x 5cm perf tahtalarını alın. 3.5cm x 5cm daha küçük perf tahtaları yapmak için bir makas (veya testere) kullanarak kesin. Bu hala 18 sıra ve 13 sütun iğne deliğine sahip olmalıdır. OLED camının arkadan dışarı çıkmasına izin verecek kadar büyük, 2,8 x 2,2 cm pencereli bir pencere kesin. Bunu yapmak için elmas kesme diski kullandım. Alet o kadar keskin ve güçlüdür ki dikkatli olmazsanız parmaklarınızı kaybedebilirsiniz. Kesimi üstten ikinci sıradaki pim deliklerine ve alttan 9. sıradaki pim deliklerine yerleştirebilirsiniz. ve her iki taraftan pim deliklerinin 2. sütununda.

B. Perf kartının son satırında 13 pimli bir erkek başlığı lehimleyin.

C. D-PAD için mükemmel panodaki yerleşim düğmeleri (yön düğmeleri, yukarı, aşağı, sol, sağ) ve A düğmesi ve B düğmesi. Ardından bunları mükemmel tahtanın ön tarafına lehimleyin.

NS. Mükemmel kartın alt tarafında, tüm düğmelerin bir tarafını erkek başlığın topraklama pimine (pim 2) bağlayın.

e. Her düğmenin ikinci pimini, o düğme için erkek başlıktaki karşılık gelen pime bağlayın.

F. Bir potansiyometre döner veya kadran denetleyicisi için bir düğme şapkası yapıyorsanız, D-PAD yön düğmeleri yerine 3 pimli 10K Değişken Direnç takacaksınız. Değişken direncin parça numarasının “B” ile başladığını kontrol edin (örn. “B103” Maks. 10K anlamına gelir), “A” ile değil. "A", dönüş açısının direncin LOG'u ile orantılı olduğu anlamına gelir. B, dönüş açısının dirençle orantılı olduğu anlamına gelir. Döner oyun kumandası için B tipi VR'lere ihtiyacımız var Potansiyometrenin bir tarafını (GND pimi) GND'ye (düğme şapka başlığının 2. pimi) bağlayın. Potansiyometrenin diğer tarafını VCC'ye bağlayın (düğme başlığı başlığının 3. pimi). Potansiyometrenin orta pimini, oyunun hangi pimle kodlandığına bağlı olarak Pro Micro kartının seçilen Analog - dijital pimine (A0, A1, A2, A3'ten biri) bağlayın. Kontrol düzgün değilse (atlar), devredeki gürültüden ayırmak için GND pimi ile potansiyometrenin orta pimi arasına 100pf'lik bir kapasitör bağlayabilirsiniz.

Adım 4: Arduino IDE'yi Kurun

Arduino'da yeniyseniz, kullandığınız işletim sistemi için Arduino IDE'yi indirmek için https://www.arduino.cc adresine gidin, örneğin Windows 10 veya Mac OSX veya Linux.

Sonra kurun.

Adım 5: USBasp Kablosunu Yapın

USBasp Kablosunu Yapın
USBasp Kablosunu Yapın

Herhangi bir Arduino kartına ikili kodlar/oyunlar yüklemekten farklı olarak, önyükleyiciyi programlamak USB portu üzerinden yapılamaz.

Özel önyükleyiciyi (Cathy3K) Atmega32U4 yongasına yakmak için bir USBasp programcısı edinmeniz gerekir. Ancak, oluşturmamız 3.3V'da çalışıyor, USBasp programlayıcısını 3.3V'da çalışacak şekilde daha fazla değiştirmemiz gerekiyor.

USBasp programlayıcınızı jumper ayarları aracılığıyla hem 3.3V hem de 5V'da çalışacak şekilde değiştirmek için aşağıdaki talimat verilebilir projeye bakın.

www.instructables.com/id/Modify-a-5V-USBasp-Arduino-Bootloader-Programmer-t/

Ardından pin düzenini ve videoyu izleyerek USBasp'ı ArduBaby'ye program kablosu haline getirin. USBasp ile birlikte gelen orijinal USBasp kablosunun her biri 10 pinli iki konektörü vardır. Bu kabloyu ortadan ikiye kesip bir ucuna 6 pin erkek header bağlarken diğer ucunu USBasp kartına bağlanan diğer ucunu 10pin'de tutacağız.

Bu diğer uç, USBasp'den gelen GND, VCC, MOSI, MISO, SCK, Reset pinlerini, Ardubaby'deki dişi başlığın ilk altı pinine bağlanan erkek başlık aracılığıyla ATmega32U4'ün karşılık gelen pinlerine bağlayacaktır.

Programı yapmak veya önyükleyiciyi ATmega32U4'e yakmak için düğme kapağını çıkaracak ve bu 6 pinli USBasp kablosunu takacaksınız.

Yanlış bağlantı yapılmaması için kablo başlığında hangi pinin 1 pin olduğunu açıkça işaretlediğinizden emin olun. Ardubaby düğme şapka başlıklarının pin düzenini tasarlarken pinleri, pin 1'i pin 13 ile değiştirseniz bile zarar görmemesi için -ve güç kaynağı yanlışlıkla +ve güç kaynağı ile buluşmayacak şekilde düzenlemeye çalıştım. Ancak, asla bilemezsiniz, yanlış yönde bağlanırsanız kitinize hala zarar verebilecek başka şeyler olabilir.

Lehim ucunu kullanarak başlıkta işaretlemek için küçük bir delik yakacağım.

6. Adım: Önyükleyiciyi Yak

MR. Blinky, ev yapımı Arduboy için Arduboy-ev yapımı paketini yarattı.

Paketinde, orijinal Arduboy'un farklı sürümleriyle ve ev yapımı olanlarla çalışan Arduboy'un kart sürücülerini ve kitaplığını içerir.

1. Ev yapımı Arduboy için MR. Blinky'nin GitHub klasörüne göz atın. https://github.com/MrBlinky/Arduboy-homemade-package 2. Arduino IDE'nizi ev yapımı paketle yapılandırmak için GitHub'daki talimatları izleyin. 3. Önce Arduboy ev yapımı paketi için “Ek yönetim kurulu yöneticisi”nin url'sini kopyalayın.

4. Arduino IDE'yi başlatın. Arduino üst menüsünden Tercihler'e tıklayın. Bu metni “Ek Pano Yöneticisi URL'leri”ne yapıştırın Not: Bu alanda zaten başka bir metniniz varsa, bu ek metni başa ekleyin, ardından bir “,” ekleyin ve diğer metni olduğu gibi bırakın. 5. Arduino IDE'den çıkın ve yukarıdaki değişikliğin yürürlüğe girmesi için IDE'yi yeniden başlatın. 6. Araçlar -> Pano: -> Pano Yöneticisi'ne tıklayın. Aramak için ev yapımı girin. Mr. Blinky'nin Arduboy ev yapımı paketini kurmak için seçin. Ardından en son sürümü almak için güncellemeyi tıklayın. Paket Arduino'ya eklenecek. 7. Şimdi Araçlar-> Pano'yu seçin: “Ev yapımı Arduboy. ve Homemade Arduboy için aşağıdaki parametreleri seçin” Temel olarak: “SparkFun Pro Micro 5V - Standart kablolama” Çekirdek: “Arduboy Optimize edilmiş çekirdek” Önyükleyici: “Cathy3K” Programlayıcı: USBasp 8. Ardubaby'yi kapatın ve düğme kapağını çıkarın. 9. USBasp üzerindeki jumper'ı 3.3V'a ayarlayın. Tamamen 3.3V'da çalışan değiştirilmiş bir USBasp kullandığınızdan emin olun. 10. USBasp'yi bilgisayarınızın USB bağlantı noktasına bağlayın. Özel USBasp - ArduBaby kablosunu USBasp'a ve diğer ucunu Ardubaby'nin düğme şapka başlığına bağlayın, pin 1'i pin 1'e hizalayın. Ardubaby'nin sadece ilk 6 pini bootloader yazma için kullanılır.

11. Ardubaby'niz şimdi USBasp tarafından sağlanan 3.3V güç ile açılmalıdır. 12. ArduBaby'nin sıfırlama düğmesine bir kez basın. 13. Arduino IDE'deki Araçlar->Panolar->Önyükleyiciyi Yaz düğmesine tıklayın. 14. Önyükleyici yazma işleminin başarılı olup olmadığını görmek için mesajı kontrol edin. 15. Değilse, kabloyu kontrol edin ve pinleri doğru yönde bağladığınızdan ve pin 1 ile pin 1'i hizaladığınızdan emin olun. Bazen, önyükleme menüsü zaman aşımına uğrarsa Ardubaby bir önceki oyunu oynamaya başlar. Yani Ardubaby'yi flash bekleme moduna almak için reset butonuna bastıktan hemen sonra Burn bootloader butonuna hızlı bir şekilde tıklamanız gerekiyor. 16. Her şey yolundaysa, ArduBaby yeniden başlatılacak ve açılış menüsünü veya ArduBaby'ye yüklediğiniz önceki oyunu göreceksiniz.

7. Adım: Tek Oyunları Derleyin ve Arduboy'a Yükleyin

Arduboy için oyunlar aşağıdaki kaynaklardan indirilebilir:

Oyunlar için Arduboy topluluk forumu:

GitHub'da "Arduboy games" https://github.com/topics/arduboy-game üzerinde arama yapın veya google'da "GitHub arduboy games" araması yapın.

Başkaları tarafından paylaşılan oyun koleksiyonları. Örneğin. Erwin'in Arduboy koleksiyonları

arduboy.ried.cl/

Arabanızla Arduino'ya yüklediğiniz oyunun kaynak kodunu indirip Arduboy'a yükleyebilirsiniz. Bunun nasıl yapıldığına ilişkin videoya bakın.

veya yalnızca onaltılık dosya (derlenmiş ikili dosya, ancak Onaltılık sayı olarak sunulur, ikili dosya yerine bir metin dosyasına yazdırılır).

Kaynak kodu için Arduino IDE içindeki kaynak kodunu açmanız yeterlidir.

Kaynak kodu ör. picovaders.ino aynı ada sahip bir klasörde saklanmalıdır, ör. picovaders

Gerekli Arduboy2 kitaplıkları, Arduboy ev yapımı paketi için yönetim kurulu yöneticisini yüklediğimiz önceki adımda zaten kurulmuş olmalıdır.

Arduboy'u bilgisayarınızın USB portuna bağlamanız yeterlidir.

Açın, ardından oyunu oynamak için kodu derlemek ve Arduboy'a yüklemek için Arduino IDE'deki Yükle düğmesine tıklayın.

8. Adım: Tek Hex Dosyalarını Yükleyin

Hex dosyası, Arduino programınızın (eskiz) derlenmesini oluşturan ikili kodları içeren bir metin dosyasıdır, ancak 0-9, A-F iki basamaklı onaltılık sayılar kullanılarak bir metin dosyası biçiminde temsil edilir.

Bu hex dosyasını farklı şekillerde alabilirsiniz.

1. Yukarıda anlattığımız farklı kaynaklardan hex dosyaları indirebiliriz:

community.arduboy.com/c/games Erwin'in Arduboy Oyun Koleksiyonları

GitHub.com'da veya google.com'da "Arduboy oyunları" için arama yapın

Bu hex dosyalarını.hex uzantılı dosyalara kaydedin.

2. Alternatif olarak, kendi hex dosyanızı oluşturabilirsiniz.

Arduino IDE'de Sketch > Export Compiled Binary'yi seçin. Çiziminiz derlenecek, ardından derlenmiş.hex dosyasının bir kopyası çiziminizin dizinine gönderilecektir. Onaltılı dosyayı görmek için çizim klasörüne gidin veya IDE'de Çizim > Çizim Klasörünü Göster'i seçin. MR. Blinky'nin ev yapımı paketini kurduysanız,.hex dosyasının iki versiyonu oluşturulacaktır. Örneğin, picovaders.ino sketh'ini derlerseniz, aşağıdaki iki.hex dosyası oluşturulacaktır.

picovaders.ino-arduboy-promicro-ssd1306.hex picovaders.ino with_bootloader-arduboy-promicro-ssd1306.hex

İlk dosyayı kullanacağız: picovaders.ino-arduboy-promicro-ssd1306.hex

3. Arduboy'a hex dosyası yüklemek için bir yükleyici kullanmanız gerekir. İnternette çok var. Kullanımı basit olduğu için MR. Blinky'nin yükleyicisini kullanmayı seviyorum.

github.com/MrBlinky/Arduboy-Python-Utilities adresine göz atın ve MR. Blinky'nin Arduboy Python yardımcı programlarını yüklemek için oradaki talimatları izleyin. Eğer kurulu bir python'unuz yoksa, önce python'u ve gerekli python modüllerini kurmak için talimatları izlemeniz gerekir.

4. Arduboy'u bilgisayarınızın USB bağlantı noktasına bağlayın. Arduboy'u açın.

5. Kabuk programını işletim sisteminizde başlatın, örn. hex dosyasını Arduboy'a yüklemek için aşağıdaki komutları yazmak için Mac OSX'teki terminal uygulaması veya pencerelerdeki komut istemi. Örnek olarak önceki çizim picovaders.ino'yu alıyoruz.

python uploader.py picovaders.ino-arduboy-promicro-ssd1306.hex

6. Oyun yüklendikten sonra Arduboy sıfırlanacak ve oyunu başlatacaktır.

9. Adım: Seri Flash'a Oyunlar Yazın

1. Konsolide oyun dosyasını seri flash'a yazmak için MR. Blinky'nin Arduboy Python Utilities'ini tekrar kullanmanız gerekir. Önceki adımı izlerseniz, bunu zaten yüklemiş olmalısınız.

Aksi takdirde, https://github.com/MrBlinky/Arduboy-Python-Utilities adresine gidin ve MR. Blinky'nin Arduboy Python yardımcı programlarını yüklemek için oradaki talimatları izleyin. Eğer kurulu bir python'unuz yoksa, önce python'u ve gerekli python modüllerini kurmak için talimatları izlemeniz gerekir.

2. Konsolide oyun görüntü dosyası için 500'e kadar oyun tutacak bir dizin dosyası oluşturun.

Arduboy'un seri flaşında saklamak istediğiniz tüm oyunlar için birleştirilmiş oyun görüntü dosyaları oluşturmak için Use the flashcart-builder.py betiğini kullanacağız. Bir 16MB Seri flaş, 500'e kadar oyun tutabilir. Bu komut dosyası, bir dizin dosyasından (.csv) ve her oyun için aşağıdaki 2 dosyadan ikili bir flash görüntü oluşturur: a..hex dosyaları, derlenmiş Arduboy oyunlarının ikili görüntülerinin onaltılık kodlarını içeren metin dosyasıdır. Örneğin sözdizimi için example-flashcart\flashcart-index.csv dosyasına bakın. Klonla veya İndir'i tıklatırsanız bu dosya pakete dahildir. B.-p.webp

Youtube videosu ayrıca bu.csv dizin dosyasının doğru yere nasıl yerleştirileceğini de açıklar. Unutulmaması gereken bir şey, MR. Blinky'nin GitHub'ından alınan örnekler.csv dosyası Windows PC'de kullanılır, yol adlarında ters eğik çizgi "\" kullanılır. Bir liunx sistemi veya MAC OSX kullanıyorsanız, onu "/" olarak değiştirmeniz gerekir.

Hızlı bir başlangıç yapmak için 63 oyunluk paketimi https://github.com/cheungbx/ArduBaby 63games.zip adresinden indirebilirsiniz.

Bu paket, seçtiğim 63 oyunun hex dosyalarını ve-p.webp

games.csv'ye daha fazla oyun ekleyebilir ve seri flash'a yazılmak üzere kendi konsolide oyun ikili görüntü dosyanızı oluşturabilirsiniz. 16M seri flaşa maksimum 500 oyun koyabilirsiniz.

GitHub'dan indirebileceğiniz games.csv ile.csv dosyasını nasıl yapacağınızı anlatacağım.

.csv dosyası excel kullanılarak açılabilmesine rağmen. Dosyayı açmak için excel KULLANMAYIN. Dosyayı bozar. Lütfen yalnızca düz metin düzenleyici kullanın. Windows'ta not defteri kullanabilirsiniz. MAC'de textEdit'i kullandım ve "Biçimlendir" -> "Düz Metin Yap" ı tıklayın.

.csv dosyasının ilk satırı, görmezden gelebileceğiniz başlıktır. Liste;Açıklama;Başlık ekranı;Hex dosyası

İkinci satır, önyükleyici manu ekranı için grafik görüntü dosyasını -p.webp

Oyunlar üçüncü satırdan başlayarak yapılandırılır. Oyunlar, kategori adı verilen önyükleyici menüsünde gruplar halinde düzenlenir. Bu satır, o grup için oyun listesinin grup başlığıdır, ör. Aksiyon oyunu. Ayrıca oyun grubu için grafik görüntü dosyasına da işaret eder. Baştaki "1" grup numarası 1'i gösterir. Bu grubu takip eden tüm oyunlar bu numara ile başlar. 1;Aksiyon Oyunları;kategori-ekranları\Action.png;;;

Sonra o gruptaki her oyun için bir satır eklersiniz. 1 numaralı grupla başlayarak, oyunun adı ve ekranın anlık görüntüsü için grafik dosyasının yolu ve hex dosyasının yolu. Hepsi ";" ile ayrılır. Bir tane daha ekle ";" kaydetme dosyası için parametreyi atlamak için. 1;1943;Arcade/Nineteen43.png;Arcade/Nineteen43.hex;; 1;2048;Arcade/2048.png;Arcade/2048.hex;;

İlk oyun grubunu bitirdikten sonra ikinci oyun grubunu ekleyebilirsiniz ve bu şekilde devam edebilirsiniz. Örneğin.

9;Demo ve Test;demos/demotest.png;;; 9;Sıcak tereyağı;demolar/HotButter_AB.png;demos/HotButter_AB.hex;; 9;Flashcart testi;demos/flashcart-test/flashcart-test-title.png;demos/flashcart-test/flashcart-test.hex;demos/flashcart-test/badapple-frames.bin;

Son satır parametrede bir çizgi film olan save dosyasına sahiptir.

3. Birleştirilmiş oyun görüntü dosyasını oluşturmak için, games.csv'nin oyun dizin dosyanız olduğu komutu yazın.

python flashcart-builder.py games.csv

Bu, games-image.bin adlı bir dosya oluşturacaktır.

4. Birleştirilmiş oyun görüntü dosyasını Arduboy'a yazın.

Konsolide oyun görüntü dosyasını Arduboy'un seri flash belleğine yazmak için MR. Blinky'nin flashcart-writer.py betiğini kullanıyoruz.

Örnek games-image.bin dosyamı kullanıyorsanız bu komutu yazabilirsiniz.

python flashcart-writer.py oyunlar-image.bin

Standart yapıda SSD1306 OLED yerine bir SSD1309 OLED ekran kullanıyorsanız, ekran sürücüsünü anında yamalayabilirsiniz. SSD1309 yamasını yüklenen görüntüye otomatik olarak uygulamak için flashcart-writer.py dosyasının bir kopyasını oluşturun ve flashcart-writer-1309.py olarak yeniden adlandırın. Sonra yazın

python flashcart-yazar-1309.py oyunlar-image.bin

Adım 10: Seri Flash'tan Oyun Oynayın

Seri flaştan oyun oynamak için Arduboy'u açın.

Zaten yüklü bir oyununuz varsa, oyun otomatik olarak başlayacaktır. Önyükleyici menüsüne gitmek için Ardubaby'nin üst kısmındaki sıfırlama düğmesine bir kez basın.

Önyükleyici menüsü görüntülenecektir. RGB LED sırayla yanacaktır.

Bunun yerine görüntülenen bir USB bağlantı noktasına benzeyen bir simge görürseniz, bu, seri flash bellek yonganızın çalışmadığı anlamına gelir. Lütfen kablolamayı kontrol edin.

12 saniye içinde herhangi bir tuşa basmazsanız, ATMega32U4'ün dahili flash belleğinde kayıtlı olan oyun çalışacaktır.

Bir oyundan önyükleyici menüsüne geri dönmek için Sıfırla düğmesine bir kez basmanız yeterlidir.

Farklı oyun kategorileri (grupları) arasında gezinmek için sol veya sağ tuşa basabilirsiniz. Bir kategori (grup) içindeki oyunlar arasında gezinmek için aşağı veya yukarı düğmesine basın. Oyunu seri flash bellekten ATMega32U4'ün dahili Flash belleğine kopyalamak için "B" düğmesine basın. Oyun bir saniye içinde başlayacak.

Artık yolda oynayabileceğiniz minik bir oyun konsolunuz var.

500 oyun ile 16M Seri flash'ınızı toplamanız ve yüklemeniz için size meydan okuyorum. Bunu henüz seri flaşı doldurmak için yapan birini görmedim. Bunu yapabilirseniz, o konsolide oyun dosyasını bizimle paylaşın.

Önerilen: