Cov txheej txheem:

Flappy Bird ntawm ATtiny85 thiab OLED Display SSD1306: 6 Cov Kauj Ruam (nrog Duab)
Flappy Bird ntawm ATtiny85 thiab OLED Display SSD1306: 6 Cov Kauj Ruam (nrog Duab)

Video: Flappy Bird ntawm ATtiny85 thiab OLED Display SSD1306: 6 Cov Kauj Ruam (nrog Duab)

Video: Flappy Bird ntawm ATtiny85 thiab OLED Display SSD1306: 6 Cov Kauj Ruam (nrog Duab)
Video: How to make Flappy Bird in Unity (Complete Tutorial) ๐Ÿค๐Ÿ’จ 2024, Cuaj hlis
Anonim
Image
Image
Kho vajtse
Kho vajtse

Nyob Zoo Txhua Tus, Hnub no kuv yuav qhia koj qhov yooj yim flappy noog clone uas kuv tau tsim, thiab yuav ua li cas koj tuaj yeem mus ua qhov kev ua si zoo sib xws. Kuv yuav yeej ib txwm hla dhau kuv cov cai nrog koj thiab piav qhia nws ua haujlwm li cas txhua kauj ruam ntawm txoj kev. Qhov kev ua si no tau tsim los khiav ntawm ATtiny85 moos ntawm 1MHz, nrog I2C OLED zaub. Ntxiv mus!

Kauj ruam 1: Kho vajtse

Yog tias koj tsis txaus siab tiag tiag tsim kev sib tw rau kev ua si tab sis nkag siab txoj kev xav tom qab nws, koj tuaj yeem hla cov kauj ruam no.

Kuv qhov kev ua si xav tau ob lub khawm, ATtiny85, I2C OLED 128x64px npo, thiab qee qhov peev txheej. Kuv Cov Ntawv Qhia Ua Lag Luam/Game Console: ATtiny85 thiab OLED Screen qhia koj yuav tsim lub rooj tsavxwm uas muaj txhua yam koj xav tau ntawm nws! Yog tias koj tsis txaus siab ua kuv lub rooj tsavxwm, tawm ntawm koj daim ntawv tais thiab kuv yuav qhia koj qhov tshwj xeeb. Koj tuaj yeem siv ib qho kev hloov pauv ntawm ATtiny85. Kuv pom zoo OLED cov lus zoo li qhov no.

  1. Hlau ib sab ntawm ob lub pob nyem rau tus pin 2 thiab 3 ntawm koj li ATtiny85. Ntawm cov xov hlau no, tseem ntxiv 10k ohm resistor txuas nrog hauv av (rub tawm tus tiv thaiv).
  2. Hlau lwm sab ntawm cov laub khawm no rau qhov hluav taws xob. Thaum lub pob tsis raug nias, tus lej tus pin yuav qis. Thaum nws raug nias, tus lej tus pin yuav siab.
  3. Txuas tus pin 7 rau SCL tus pin ntawm koj cov zaub, thiab tus pin 5 rau SDA tus pin ntawm koj cov zaub. Hlau lub hwj huam khawm (VCC thiab GND) ntawm cov zaub kom haum.
  4. Thaum kawg, txuas tus pin 4 ntawm ATtiny rau hauv av thiab tus pin 8 rau qhov hluav taws xob.

Kauj ruam 2: Software

Lub Software!
Lub Software!

Txuas ntawm no yog daim nplaub tshev nrog txhua cov ntaub ntawv koj xav tau los ua qhov game. Ob ntawm cov ntaub ntawv, FlappyBird.ino thiab WallFunctions.h, tau tawm tswv yim zoo heev rau koj kev txaus siab nyeem ntawv. Koj tuaj yeem tso FlappyBird.ino kos duab rau koj ATtiny85 (ntawm 1MHz), thiab ua si tam sim ntawd! Yog tias kawm txoj kev xav tom qab qhov kev ua si nyiam koj, lossis koj xav ua koj tus kheej kev ua si, tom qab ntawv nyeem!

Tseem muaj qee qhov teeb meem nrog kuv qhov kev ua si. I2C tsis yog txoj hauv kev zoo tshaj plaws los xa cov ntaub ntawv los ntawm txhua txoj kev. Raws li cov ntawv tshaj tawm no, cov zaub tsuas tuaj yeem lees txais cov ntaub ntawv ntawm kwv yees li 100KHz, yog li txawm tias peb tsoo ATtiny moos ceev mus rau 8MHz I2C channel tseem yuav yog qhov khoob. Cov zaub tuaj yeem tso tawm txog 10fps siab tshaj. Qhov sib cais ntau dua cov duab yuav tsum tau kos, qeeb dua tag nrho cov txheej txheem. Yog li, kuv qhov kev ua si yog qhov yooj yim heev li koj tsis tuaj yeem tau txais phab ntsa kom txav nrawm heev hla lub vijtsam! Hauv qab no yog qee qhov kev cov nyom rau koj yog tias koj xav tias koj tab tom ua txoj haujlwm:

  • Txhawm rau ua kom nyuaj dua, saib seb koj puas tuaj yeem tau txais qhov sib nrug nruab nrab ntawm phab ntsa ua 2 tsis yog 4. Nws yuav tsum tsis txhob nyuaj ib zaug thaum koj nkag siab tias kuv qhov program ua haujlwm zoo li cas:). Thov tshaj tawm hauv cov lus yog tias koj tuaj yeem ua haujlwm tau!
  • Lwm qhov uas kuv qhov kev ua si tsis muaj yog cov qhab nia thiab txoj hauv kev los tso saib cov qhab nia thiab txuag nws. Saib yog koj tuaj yeem siv ib qho!
  • Thaum kawg, ntau dua li kom cov phab ntsa txav ib kem ntawm ib lub sijhawm, sim ua kom txhua lub phab ntsa txav ib pixel nyob rau ib lub sijhawm kom txav tau zoo dua.

Kauj Ruam 3: Flappy Bird ATtiny85: Theory

Flappy Bird ATtiny85: Theory
Flappy Bird ATtiny85: Theory

Txawm hais tias cov zaub peb tab tom siv muaj 64 pixels ntawm qhov siab los siv rau kev ua si, nws tsuas yog ua tau los tso cov ntsiab lus hauv ntu ntawm 8 pixels. Yog li, tsuas muaj 8 qhov ua tau y-ua haujlwm. Txhawm rau ua kom yooj yim dua, hauv software kuv faib tag nrho lub vijtsam hauv qhov no, ua kab sib chaws ntawm 16 qhov thaiv los ntawm 8 ntu, qhov twg txhua qhov thaiv yog 8x8 pixels. Txhawm rau sau txhua qhov thaiv, txhua tus sprite hauv qhov kev ua si yog 8x8 pixels. Qhov no ua rau txhua yam ntau yooj yim rau kev tswj hwm. Yog tias koj saib cov duab saum toj no, koj tuaj yeem pom tias kuv faib li cas ntawm lub vijtsam. Txhua phab ntsa yog tsim los ntawm 6 ntu, nrog lub qhov 2 qhov siab hauv qhov siab, ua rau tag nrho qhov siab ntawm txhua phab ntsa 8 thaiv.

Hauv txoj haujlwm, txhua phab ntsa raug sawv cev ua tus qauv, hu ua Wall. Txhua phab ntsa qauv muaj ob yam khoom - qhov chaw thiab kem. 'holePosition' yog tus lej 0-6, vim tsuas muaj 7 txoj haujlwm nyob hauv phab ntsa ntawm 8 qhov thaiv rau qhov 2 qhov siab. 'kem' yog tus lej 0-15, raws li muaj 16 kab ntawm cov thaiv tau ntawm lub vijtsam.

Pom zoo: