Talaan ng mga Nilalaman:

Ang Handb ng PCB Sa Arduino (Na may isang Pagpipilian upang Pumunta sa Wireless!): 3 Mga Hakbang
Ang Handb ng PCB Sa Arduino (Na may isang Pagpipilian upang Pumunta sa Wireless!): 3 Mga Hakbang

Video: Ang Handb ng PCB Sa Arduino (Na may isang Pagpipilian upang Pumunta sa Wireless!): 3 Mga Hakbang

Video: Ang Handb ng PCB Sa Arduino (Na may isang Pagpipilian upang Pumunta sa Wireless!): 3 Mga Hakbang
Video: МАСТЕР-КЛАСС по Arduino | Полный семинар по программированию за 90 минут! 2024, Nobyembre
Anonim
Ang Handb ng PCB Sa Arduino (Na may Isang Pagpipilian upang Pumunta sa Wireless!)
Ang Handb ng PCB Sa Arduino (Na may Isang Pagpipilian upang Pumunta sa Wireless!)
Ang Handb ng PCB Sa Arduino (Na may Isang Pagpipilian upang Pumunta sa Wireless!)
Ang Handb ng PCB Sa Arduino (Na may Isang Pagpipilian upang Pumunta sa Wireless!)

Update 28.1.2019Kasalukuyan akong nagtatrabaho sa susunod na bersyon ng handheld na ito. Maaari mong sundin ang proyekto sa aking YouTube channel o Twitter.

Babala! Natagpuan ko ang isang pagkakamali sa layout ng PCB. Ang kaliwa at pataas na mga pindutan ay konektado sa mga analog na pin lamang. Inayos ko iyon sa pamamagitan ng pagdaragdag ng dalawang pull-resistors sa dalawang input. Hindi iyon ang perpektong solusyon ngunit gumagana ito.

Dinisenyo ko ang isang PCB para sa isang handheld na nakabatay sa ATmega328P-AU microcontroller (kapareho sa Arduino Nano), display ng SSD1306 OLED at ilang mga pindutan. Nagdagdag din ako ng isang pagpipilian upang idagdag ang NRF24L01 + module ng radyo para sa mga multiplayer na laro. Maaari mo ring gamitin ang handhand na ito bilang isang wireless controller. Gumawa ako ng mga wireless Controller bago at kahit na may isang Instructionable tungkol sa mga ito. Ang kailangan mo lang ay isang Arduino Leonardo o Pro Micro.

Ang handheld ay ganap na bukas na mapagkukunan. Ang lahat ng source code ay libre gamitin pati na rin ang disenyo ng PCB. Sinimulan ko rin ang pag-coding ng isang bukas na mapagkukunang engine engine na batay sa tile para sa console. Sa sandaling ang lahat ay gumagana maliban sa physics engine ay may ilang mga isyu na may mataas na acceleration. Iyon ay dahil lamang sa ang physics engine ay tumatakbo frame sa pamamagitan ng frame sa parehong bilis ng pagguhit function. Ang engine ng physics ay dapat na tinawag na microstepping (paglipat ng isang pixel sa oras na pag-check kung mayroong isang banggaan), ngunit kailangan ko pa ring magtrabaho dito.

Tulad ng nakikita mo mula sa larawan, hindi ko pa natatanggap ang mga bahagi ng SMD. Kasalukuyan kong binubuo ang code sa isang prototype.

Ayokong makakuha ng isang propesyonal na PCB. Maaari ko pa bang itayo ito?

Syempre. Gumawa na ako ng isang tutorial sa kung paano bumuo ng console na ito sa isang prototyping PCB na may tuldok na tanso. Maaari mong makita ang proyekto dito:

Hakbang 1: Pagkuha ng Lahat ng Mga Bahagi

Pagkuha ng Lahat ng Mga Bahagi
Pagkuha ng Lahat ng Mga Bahagi

Una kailangan mo ang lahat ng mga bahagi. Maaari kang mag-order ng mga PCB mula sa JLCPCB o ilang iba pang site na gumagamit ng mga Gerber file. Ginagamit ang mga Gerber file upang ilarawan ang PCB para sa tagagawa. Ang mga ito ay. ZIP file lamang na naglalaman ng bawat detalye ng nakadisenyo na PCB.

Narito ang link para sa mga PCB:

Narito ang isang listahan ng mga bahagi na kailangan mong bilhin upang maisagawa ito:

  • ATmega328P (TQFP-32)
  • 8 pcs 6 x 6 x 6 mm na mga pindutan
  • 16 MHz crystal oscillator
  • 2 mga PC ng 22 pF 0603 laki ng kapasitor
  • Ipakita ang SSD1306 na may interface na SPI. (128 x 64, monochrome)
  • Dalawang 0603 10 kΩ resistors

Narito ang isang listahan ng mga opsyonal na bahagi:

  • NRF24L01 +
  • AMSD1117-3.3 (3, 3 V regulator para sa NRF24L01 +)
  • 1206 680 nF capacitor (NRF24L01 + kailangan ng isang matatag na boltahe upang gumana nang tama.)
  • 2 pcs 1206 led (kung nais mong i-flash ang ilang mga ilaw)
  • 2 mga PC ng 0603 resistors para sa mga leds

Hakbang 2: Magtipon ng Lupon

Ito ay medyo mahirap ilarawan dahil hindi pa ako nakakagawa ng anumang mga PCB. Wala akong bakas kung saan nagpunta ang mga bahagi, ngunit inaasahan kong makarating sila sa lalong madaling panahon.

Tulad ng karaniwang sa paghihinang, gumamit ng ilang uri ng fume extractor at hugasan ang iyong mga kamay pagkatapos hawakan ang pagkilos ng bagay o panghinang. At mag-ingat sa bakal na bakal. Gagawa ito ng matinding pagkasunog kung mahawakan mo ito habang nasa 350 degree Celsius. Kung ikaw ay nakakakuha ng pinsala mula sa soldering iron, gumamit ng malamig na tubig upang palamigin ang nasunog na lugar

Kung hindi ka pa nag-solder ng mga bahagi ng SMD, inirerekumenda kong panoorin ang ilang mga tutorial mula sa YouTube. Ang pangunahing panuntunan ay upang ilapat ang solder sa isang pad, ilagay ang maliit na tilad at ilagay ang pin. Pagkatapos gawin lamang ang kabaligtaran at kung maraming mga pin gawin ang mga ito. Maaari mo ring gamitin ang pagkilos ng bagay upang makatulong sa proseso ng paghihinang.

Kakailanganin mo rin ang solder wick upang makapaghinang ng microcontroller. Daloy lamang ang mga pin gamit ang panghinang at gumamit ng wick ng solder upang mailabas ang labis.

Siguraduhin na maghinang ka sa mga bahagi ng tamang paraan. Karaniwan ang mga microcontroller ay may isang tuldok upang ipahiwatig ang unang pin. Karaniwan ang mga PCB ay mayroon ding isang tuldok upang gabayan sa oryentasyon.

Para sa mga bahagi ng SMD karaniwang gusto mo munang maghinang ng maliliit na bahagi. Kung maghinang ka muna ng mga header, marahil ay tatamaan mo sila ng panghinang na bakal at palabasin ang ilang mga masamang gas. Maaari kong inirerekumenda ang pagkakasunud-sunod na ito mula sa karanasan. Hindi mo kailangang sundin ang listahang ito, ngunit ginawa ito ng sentido komun:

  1. Mga capacitor
  2. Mga LED at resistor para sa mga leds (opsyonal) [unang dapat mong maghinang ng mga resistor]
  3. Regulator at microcontroller (Siguraduhing inilagay mo ang MCU sa tamang paraan! Ang tuldok ay dapat harapin sa parehong paraan tulad ng marka [puting tuldok] sa PCB.)
  4. Crystal
  5. Mga Pindutan
  6. Mga Header (Ang header ng NRF24L01 + ay kung saan magpahinga ang iyong daliri, kaya inirerekumenda kong gumamit ng ilang mga wire upang payagan ang ilang kakayahang umangkop para dito.)
  7. Ang ilang mga wires para sa baterya. Ang pangunahing lakas ay minarkahan ng VCC at GND. Ang VCC ay dapat na nasa paligid ng 3, 6-6 volts. Ang boltahe na iyon ay dumidiretso sa microcontroller, kaya tiyaking hindi ka masyadong naglalagay ng boltahe dito.

Hakbang 3: Ang Software

Image
Image

Gumawa ako ng ilang mga laro para sa ganitong uri ng platform sa mga nakaraang taon. Mahahanap mo ang lumang multi-game code mula dito (Ito ang pinangalanang mushroom_mcp_continued_v10_converted):

github.com/Teneppa/handheld_open_source

Ang open source engine ay matatagpuan dito (Ginamit ko ang Visual Studio upang i-code ito upang maraming mga kakatwang mga file):

Inirerekumendang: