Handheld Pong & Invaders op de goedkope (Arduino compatibel) (10 / 13 stap)

Stap 10: Programming - de schets-functies


De schets zelf is aangesloten op deze stap. Het is vrij licht heeft gereageerd, maar de variabele en functie namen moeten worden vrij spreekt voor zich en ik denk dat het heeft vrij rechttoe-rechtaan dus gerust zo nodig aan te passen. Gelieve Houd in gedachten dat ik alleen maar strekt zich uit van rond 20-30 minuten op een moment op mijn pendelen naar het schrijven van sketches, dus het is waarschijnlijk niet het meest elegante of systematische stukje code. Het werkt vrij goed, maar gebruik het op eigen risico!

In het algemeen, de belangrijkste functies van de code als volgt:

VOID Setup:

Dit gewoon initieert het LCD-scherm en stelt de pinMode voor wissels en kruisingen enz. Het zou een "Hallo" geluid afspelen als een is ingesteld, wordt weergegeven van de huidige accuspanning en kort de achtergrondverlichting test. Het leest de hoge scores, helderheid van de achtergrondverlichting en het geluidsvolume vanaf EEPROM en de EEPROM vooruitgangsbalk als deze chip niet is gebruikt voor het spel voor.

void loop:

Elke functie van de console heeft een "gameType". Het gaat hierbij om het hoofdmenu en het instellingenmenu. De hoofdlus stuurt ons gewoon aan de juiste subroutine. Bij terugkeer van een subroutine moeten we de juiste gameType (bijvoorbeeld gameType = 0 voor hoofdmenu).

VOID pong():

Dit leest de positie van de speler 1 vleermuis en de handmatige of automatische positie van speler 2 bat. Vervolgens controleert de positie van de bal, controleert hoe lang het spel is gespeeld (het verhogen van de snelheid elke 30s) en het scherm bijwerkt. De variabele frameDelay bevat de periode in ms tussen frames en na het bijwerken van het scherm, het wacht op die periode verlopen voordat u opnieuw begint.

VOID invaders ():

Vergelijkbaar met het spel Pong, dit cycli ronde het lezen van de positie van de vleermuis (speler), controleren van de status van de schoten en bommen, leven, controleren of het spel versnellen moet, verplaatsen de aliens en bijwerken van het scherm bijwerken. De aliens één pixel over tegelijk verplaatsen, maar ze animatie alleen elke 4 pixels zodat ze gewoon niet vervagen en beter lijken op het originele spel. Zoals beschreven in de laatste stap, worden de aliens aangehouden en weergegeven als tekens, net als de score en het vrije leven. De vleermuis en de UFO worden getekend met lijnen. De UFO past in de ruimte van 3 pixels boven de bovenste rij van vreemdelingen, die we opgedaan door het definiëren van een heel klein lettertype voor de score.

VOID checkBatt():

Dit controleert de accuspanning en vraagt de gebruiker uitschakelen en laden als de spanning zakt tot onder 3.6V.

Gerelateerde Artikelen

Tacuino: een goedkope, Modulair, Arduino-compatibele onderwijsplatform

Tacuino: een goedkope, Modulair, Arduino-compatibele onderwijsplatform

Voor mijn klassen van soft-circuit, hebben wij een voorgeprogrammeerde Attiny85 circuit () of de duurdere Arduino-compatibele Lilypad USBgebruikt. Ik wilde iets tussen die twee uitersten die zouden zijn:Gemakkelijk op te bouwen door beginnersLage kos
LED Dawn / Sunrise Alarm Clock, nachtlampje & veiligheid Light - Arduino compatibele

LED Dawn / Sunrise Alarm Clock, nachtlampje & veiligheid Light - Arduino compatibele

zoals de nachten geleidelijk verlengd in het najaar van 2011, ik ontdekte de geneugten van Arduino en dacht dat het zou een geweldige manier om iets dat ik voor een lange tijd wilde - een zachte manier om op een winter's ochtend wakker te worden.  He
Arduino compatibel badkuip controller

Arduino compatibel badkuip controller

Laten we beginnen met een waarschuwing: dit project regelt water. Elektriciteit en water echt niet mengen en er is een reëel gevaar voor elektrocutie en/of dood als je niet voorzichtig bent. Bouwen van dit project op uw eigen risico, en ik zal niet a
Perfboard Hackduino ($8 Arduino-compatibele circuit)

Perfboard Hackduino ($8 Arduino-compatibele circuit)

Nooit meer zal u moeten ontmantelen van een voltooide project enkel naar het hergebruik van een Arduino board!Deze tutorial doorloopt de stappen betrokken bij het fabriceren van uw eigen Arduino-compatibele circuit met behulp van slechts ~$8 delen (d
Hoe maak je het gemakkelijkste Breadboard Arduino-compatibele Sanguino-Equivalent... OOIT! & Hoe schetsen rechtstreeks uploaden naar het!!

Hoe maak je het gemakkelijkste Breadboard Arduino-compatibele Sanguino-Equivalent... OOIT! & Hoe schetsen rechtstreeks uploaden naar het!!

Oke dus de titel inderdaad een beetje een mondvol lol is!Ive geweest hoeft te prutsen met een verlangen naar meer Input/Output pinnen dan de Arduino UNO en tegenwoordig de UNO gebruikt een Atmega328microcontroller, & zijn beperkt tot slechts ongeveer
Goedkope Arduino Bot

Goedkope Arduino Bot

Arduino obstakel ontwijkt is nu populair in de DIY veld. Ik maakte een met behulp van goedkope beschikbare onderdelen.Hoop dat het u zal vermaken.Dingen die je moet:1. elke goedkope Arduino UNO R3 (kloon)2. Adafruit Motor Shield v13.A paar DC motor e
Maak uw eigen aangepaste Arduino compatibel

Maak uw eigen aangepaste Arduino compatibel

ik hou van Ardunio. Ik hou van de dingen die mensen maken met hen en ik ben dol op het maken van mijn eigen. Afgelopen augustus publiceerde ik een Instructable op hoe te om uw eigen postzegel formaat Arduino compatibel. Dit Instructable zal u tonen h
Hoe maak je een Arduino compatibele Bluetooth 4.0-Module

Hoe maak je een Arduino compatibele Bluetooth 4.0-Module

UPDATE: Laat maken Robots, mijn huis digitale hackerspace, werd gekocht door RobotShop. Ik wil niet ingaan, maar de nieuwe eigenaren verboden mezelf en de meeste van de ervaren leden. Dat gezegd, allermeest naar de verbinding er gebroken zal worden.
Goedkope Arduino WiFi schild met ESP8266

Goedkope Arduino WiFi schild met ESP8266

In mijn vorige Instructable heb ik beschreven hoe de ESP-01 module aansluit op een breadboard.Dit is slechts de eerste stap om een goedkope Arduino WiFi schild de ESP8266-module gebruiken. U kunt het met enkele meer elektronische componenten en de Wi
#5 Arduino compatibele Real Time klok Modules (DS1307 & DS3231)

#5 Arduino compatibele Real Time klok Modules (DS1307 & DS3231)

Een module van de Real Time Clock (RTC) is dat een RTC is een RTC. Toch? Verkeerd!Terwijl deze twee veel voorkomende, Arduino-compatibele RTCs erg lijken, en zijn aangesloten via de I2C (uitgesproken oog kwadraat Zie of Eye Eye) communicatie bus ze p
Hoe te DIY klauw kraan Arduino-compatibele Robot?

Hoe te DIY klauw kraan Arduino-compatibele Robot?

Hallo, jongens! De kraan Makeblock klauw Arduino-compatibele Robot heeft vandaag afgerond. Haar structurenen functies zijn vergelijkbaar als deze kraan machines die gemeenschappelijke te zien in de markt.Voor meer informatie zie website Makeblock hie
Gebruik RFduino om te voeren Arduino compatibel schetsen en communiceren met uw iPhone met behulp van Bluetooth 4.0 Low Energy.

Gebruik RFduino om te voeren Arduino compatibel schetsen en communiceren met uw iPhone met behulp van Bluetooth 4.0 Low Energy.

Munt-en kleinbedrijf Arduino compatibele open-source micro-computer die communiceert met uw iPhone met behulp van Bluetooth 4.0 Low Energy draadloosDe RFduino is een zelfstandige board, net als de Arduino UNO. Daarnaast beschikt de RFduino over een k
Snel en gemakkelijk Arduino compatibel H-brug Shield

Snel en gemakkelijk Arduino compatibel H-brug Shield

In dit instructable ik zal in detail te beschrijven hoe ik ging over het maken van een snel en gemakkelijk, Arduino compatibel, H-brug schild. Maar eerst, een korte intro in wat kreeg me gemotiveerd om het te maken.Een paar jaar geleden, begon ik mee
YourDuino: HandBat - Handheld ultrasone Radar met behulp van Arduino

YourDuino: HandBat - Handheld ultrasone Radar met behulp van Arduino

HandBat is een handheld van ultrasone Radar die stuurt pulsen van echografie en luistert naar de Echos, als een vleermuis. Het is bedoeld voor gebruik door de slechtziende mensen of navigatie in het donker.Handbat is gehuisvest in een goedkope ($3.97