Cov txheej txheem:
Video: Flappy Bird ntawm ATtiny85 thiab OLED Display SSD1306: 6 Cov Kauj Ruam (nrog Duab)
2024 Tus sau: John Day | [email protected]. Kawg hloov kho: 2024-01-30 09:27
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.
- 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).
- 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.
- 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.
- Thaum kawg, txuas tus pin 4 ntawm ATtiny rau hauv av thiab tus pin 8 rau qhov hluav taws xob.
Kauj ruam 2: 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
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:
Cov duab ntawm SSD1306 I2C OLED 128x64 Zaub Nrog CircuitPython Siv Itsybitsy M4 Express: 13 Kauj Ruam (nrog Duab)
Cov duab ntawm SSD1306 I2C OLED 128x64 Zaub Nrog CircuitPython Siv Itsybitsy M4 Express: SSD1306 OLED zaub yog qhov me me (0.96 "), pheej yig, muaj dav, I2C, duab ib leeg nrog 128x64 pixels, uas yooj yim cuam tshuam (tsuas yog 4 xov hlau) rau microprocessor kev txhim kho cov laug cam xws li Raspberry Pi, Arduino lossis
Cov Duab Duab Duab thiab Cov Duab 1: 4 Cov Kauj Ruam (nrog Duab)
Cov Duab Duab Cubes thiab Cov Duab 1: Thaum sim nrog qee cov ntoo ntoo thiab cov duab los qhia, kuv pom ob peb txoj hauv kev los ua cov voos thiab lwm yam duab los ntawm cov khoom siv yooj yim. Los ntawm kev muab cov no los ua Cov Ntawv Qhia, Kuv vam tias yuav txhawb nqa kev ua si thiab kev kawm. Kev hloov pauv ntawm qhov kev qhia no
Cov cuab yeej cuab tam - Ceramic hauv Cov Ntsiab Lus ntawm Cov Txheej Txheem Digital thiab Analog 2015: 3 Cov Kauj Ruam (nrog Duab)
Cov cuab yeej cuab tam - Ceramic hauv Cov Ntsiab Lus ntawm Digital thiab Analog Cov Txheej Txheem 2015: Txog tam sim no, cov khoom siv hlau yog cov khoom siv tes ua uas tsis muaj kev cuam tshuam digital. Vim li no, nws zoo siab heev los ua phooj ywg nrog cov cuab yeej tshiab. Lub hauv paus pib yog daim ntawv qub thiab CNC Styrocutter.DESIGNBOOM
Kub thiab Vaum Zaub thiab Sau Cov Ntaub Ntawv Nrog Arduino thiab Ua: 13 Kauj Ruam (nrog Duab)
Kub thiab Vaum Zaub thiab Sau Cov Ntaub Ntawv Nrog Arduino thiab Ua: Intro: Qhov no yog Txoj Haujlwm uas siv Arduino board, Sensor (DHT11), lub khoos phis tawj Windows thiab Kev Ua Haujlwm (rub tawm dawb) program los tso saib Kub, Cov ntaub ntawv vaum hauv digital thiab bar kab ntawv, tso tawm lub sijhawm thiab hnub tim thiab suav lub sijhawm suav
Yuav Ua Li Cas Thiaj Li Sib Koom Cov Yees Duab thiab Cov Ntaub Ntawv Network Los Ntawm Ethernet Cable: 6 Cov Kauj Ruam (nrog Duab)
Yuav Ua Li Cas Thiaj Li Ua Ke Cov Yees Duab thiab Network Cov Ntaub Ntawv Los ntawm Ethernet Cable: Kuv xav tau los khiav Video thiab Suab mus rau lwm qhov ntawm kuv lub tsev. Teeb meem yog, Kuv tsis muaj AV cable ntau, tsis yog lub sijhawm thiab nyiaj txiag los teeb tsa zoo. Txawm li cas los xij kuv tau muaj Cat 5 Ethernet Cable ntau nyob ib puag ncig. Nov yog qhov kuv tuaj nrog