İçindekiler:

Arduino İle Elde Taşınabilir PCB (Kablosuz Olma Seçeneğiyle!): 3 Adım
Arduino İle Elde Taşınabilir PCB (Kablosuz Olma Seçeneğiyle!): 3 Adım

Video: Arduino İle Elde Taşınabilir PCB (Kablosuz Olma Seçeneğiyle!): 3 Adım

Video: Arduino İle Elde Taşınabilir PCB (Kablosuz Olma Seçeneğiyle!): 3 Adım
Video: Alarm Devresi Manual Çizim 2024, Temmuz
Anonim
Arduino İle Elde Taşınabilir PCB (Kablosuz Olma Seçeneğiyle!)
Arduino İle Elde Taşınabilir PCB (Kablosuz Olma Seçeneğiyle!)
Arduino İle Elde Taşınabilir PCB (Kablosuz Olma Seçeneğiyle!)
Arduino İle Elde Taşınabilir PCB (Kablosuz Olma Seçeneğiyle!)

28.1.2019 Güncellemesi Şu anda bu el cihazının bir sonraki sürümü üzerinde çalışıyorum. Projeyi YouTube kanalımdan veya Twitter hesabımdan takip edebilirsiniz.

Uyarı! PCB düzeninde bir hata buldum. Sol ve yukarı butonlar sadece analog pinlere bağlıdır. Bunu, iki girişe iki çekme direnci ekleyerek düzelttim. Bu mükemmel bir çözüm değil ama işe yarıyor.

ATmega328P-AU mikrodenetleyicisine (Arduino Nano'dakiyle aynı), SSD1306 OLED ekrana ve bazı düğmelere dayanan bir el cihazı için bir PCB tasarladım. Ayrıca çok oyunculu oyunlar için NRF24L01+ radyo modülünü ekleme seçeneği de ekledim. Bu el cihazını kablosuz denetleyici olarak da kullanabilirsiniz. Daha önce kablosuz denetleyiciler yaptım ve hatta onlar hakkında bir Talimatım var. Tek ihtiyacınız olan bir Arduino Leonardo veya Pro Micro olacaktır.

Elde taşınır cihaz tamamen açık kaynaktır. PCB tasarımının yanı sıra tüm kaynak kodunun kullanımı ücretsizdir. Ayrıca konsol için açık kaynaklı karo tabanlı bir oyun motoru kodlamaya başladım. Şu anda fizik motoru dışında her şey çalışıyor, yüksek ivmelerle ilgili bazı sorunlar var. Bunun nedeni, fizik motorunun çizim işleviyle aynı hızda kare kare çalışmasıdır. Fizik motorunun mikro adımlama (çarpışma olup olmadığını kontrol ederken bir pikseli hareket ettirme) olarak adlandırılması gerekir, ancak yine de üzerinde çalışmam gerekiyor.

Resimden de görebileceğiniz gibi, henüz SMD parçalarını almadım. Şu anda kodu bir prototiple geliştiriyorum.

Profesyonel bir PCB almak istemiyorum. Bunu hala kurabilir miyim?

Tabii ki. Bu konsolun noktalı bakır ile prototipleme PCB'sine nasıl kurulacağına dair bir eğitim hazırladım. Projeyi burada bulabilirsiniz:

Adım 1: Tüm Parçaları Alma

Tüm Parçaları Almak
Tüm Parçaları Almak

Öncelikle tüm parçalara ihtiyacınız var. PCB'leri JLCPCB'den veya Gerber dosyalarını kullanan başka bir siteden sipariş edebilirsiniz. Gerber dosyaları, üretici için PCB'yi tanımlamak için kullanılır. Onlar sadece tasarlanmış PCB'nin her detayını içeren. ZIP dosyalarıdır.

İşte PCB'lerin bağlantısı:

Çalışması için satın almanız gereken bileşenlerin bir listesi:

  • ATmega328P (TQFP-32)
  • 8 adet 6 x 6 x 6 mm buton
  • 16 MHz kristal osilatör
  • 2 adet 22 pF 0603 boyutlu kondansatör
  • SPI-arayüzlü SSD1306 ekran. (128 x 64, tek renkli)
  • İki 0603 10 kΩ direnç

İsteğe bağlı bileşenlerin bir listesi:

  • NRF24L01+
  • AMSD1117-3.3 (NRF24L01+ için 3, 3 V regülatör)
  • 1206 680 nF kapasitör (NRF24L01+ düzgün çalışması için sabit bir voltaja ihtiyaç duyar.)
  • 2 adet 1206 led (bir kaç ışık yakmak isterseniz)
  • Ledler için 2 adet 0603 direnç

2. Adım: Panoyu Birleştirin

Henüz herhangi bir PCB oluşturmadığım için bunu açıklamak biraz zor olacak. Parçaların nereye gittiğine dair hiçbir fikrim yok ama umarım yakında gelirler.

Genellikle lehimlemede olduğu gibi, bir tür duman çıkarıcı kullanın ve eritken veya lehime dokunduktan sonra ellerinizi yıkayın. Ve havya ile dikkatli olun. 350 santigrat derece civarındayken dokunursanız ciddi yanıklara neden olur. Ancak havyadan yaralanırsanız, yanan yeri soğutmak için soğuk su kullanın

SMD parçalarını hiç lehimlemediyseniz, YouTube'dan bazı eğitimleri izlemenizi şiddetle tavsiye ederim. Temel kural, lehimi bir pede uygulamak, çipi yerine koymak ve pimi lehimlemektir. O zaman sadece karşı tarafı yapın ve daha fazla iğne varsa onları yapın. Lehimleme işlemine yardımcı olması için akı da kullanabilirsiniz.

Mikrodenetleyiciyi lehimleyebilmek için ayrıca lehim fitiline de ihtiyacınız olacak. Pimleri lehimle akıtın ve fazlalığı çıkarmak için lehim fitili kullanın.

Parçaları doğru şekilde lehimlediğinizden emin olun. Genellikle mikrodenetleyicilerde ilk pini gösteren bir nokta bulunur. Genellikle PCB'lerde yönlendirme ile rehberlik edecek bir nokta bulunur.

SMD parçalar için genellikle önce küçük parçaları lehimlemek istersiniz. Başlıkları önce lehimlerseniz, muhtemelen onlara havya ile vuracak ve bazı kötü gazlar çıkaracaksınız. Tecrübelerime dayanarak bu diziyi tavsiye edebilirim. Bu listeyi takip etmek zorunda değilsiniz, ancak sağduyu ile yapılmıştır:

  1. kapasitörler
  2. Ledler için ledler ve dirençler (opsiyonel) [önce dirençleri lehimlemelisiniz]
  3. Regülatör ve mikrodenetleyici (MCU'yu doğru yerleştirdiğinizden emin olun! Nokta, PCB üzerindeki [beyaz nokta] işaretiyle aynı yöne bakmalıdır.)
  4. Kristal
  5. Düğmeler
  6. Başlıklar (NRF24L01+'ın başlığı tam parmağınızın dayanacağı yerdir, bu yüzden biraz esneklik sağlamak için bazı kablolar kullanmanızı öneririm.)
  7. Pil için bazı teller. Ana güç VCC ve GND ile işaretlenmiştir. VCC 3, 6-6 volt civarında olmalıdır. Bu voltaj doğrudan mikrodenetleyiciye gider, bu nedenle üzerinden çok fazla voltaj vermediğinizden emin olun.

3. Adım: Yazılım

Image
Image

Yıllar boyunca bu tür bir platform için birkaç oyun yaptım. Eski çoklu oyun kodunu buradan bulabilirsiniz (mantar_mcp_continued_v10_converted adlı koddur):

github.com/Teneppa/handheld_open_source

Açık kaynak motoru burada bulunabilir (Birden çok garip dosya olması için Visual Studio'yu kodlamak için kullandım):https://github.com/Teneppa/openTileEngine

Önerilen: