"ButtonMasherz" (Arduino projekt)



detta spel kan skrivas och laddas upp till en Arduino Leonardo (och troligen andra Arduino styrelser) så det kan spelas mellan två spelare. Målet med spelet är att trycka din knapp 50 gånger innan den andra spelaren kan. Koden finns nedan och följ bilderna instruktioner för ledningar med bakbord.

#include "pitches.h"
int Pin = 1;
int otherPin = 12;
int ledone = 2;
int ledtwo = 3;
int ledthree = 4;
int ledfour = 5;
int ledfive = 6;
int ledsix = 7.
int ledseven = 8;
int ledeight = 9;
int lednine = 10;
int ledten = 11;
int x = 1;
int y = 1;
int val;
int buttonState;
int valt;
int buttonStatet;
int buttonPresses = 0;
int otherbuttonPresses = 0;
int sensorReading = analogRead(A0);

int melodi [] = {
NOTE_A4, NOTE_B4, NOTE_C5, NOTE_A4, NOTE_DS5};
int noteDurations [] = {
1,4,2,2,1}.
Ogiltiga inställningar () {
för (int thisNote = 0; thisNote < 5; thisNote ++) {
int noteDuration = 1000/noteDurations [thisNote];
tonen (0, melodi [thisNote], noteDuration);
Delay(noteDuration+30);
}

pinMode (Pin, indata);
pinMode (otherPin, ingång);
pinMode (ledone, produktionen);
pinMode (ledtwo, produktionen);
pinMode (ledthree, produktionen);
pinMode (ledfour, produktionen);
pinMode (ledfive, produktionen);
pinMode (ledsix, produktionen);
pinMode (ledseven, produktionen);
pinMode (ledeight, produktionen);
pinMode (lednine, produktionen);
pinMode (ledten, produktionen);
Serial.BEGIN(9600);
buttonState = digitalRead(Pin);
buttonStatet = digitalRead(otherPin);
för (int ledfive = 6, ledsix = 7; ledfive > = 1, ledsix < = 11; ledfive = ledfive-1, ledsix = ledsix + 1) {
pinMode (ledfive, produktionen);
digitalWrite (ledfive, hög);
digitalWrite (ledsix, hög);
Delay(500);
digitalWrite (ledfive, låg);
digitalWrite (ledsix, låg);
}

}

Ogiltig loop)
{
Val = digitalRead(Pin);
valt = digitalRead(otherPin);

om (val! = buttonState)
{
om (val == hög) {
buttonPresses ++;
}
}
buttonState = val;
om (valt! = buttonStatet) {
om (valt == hög) {
otherbuttonPresses ++;
}
}
buttonStatet = valt;

om (buttonPresses == 10)
{

digitalWrite (ledone, hög);
Serial.println ("en spelare flammande!");
tonen (0, NOTE_A4, 200);

}
om (buttonPresses == 20)
{
digitalWrite (ledone, hög);
digitalWrite (ledtwo, hög);
Serial.println ("en spelare kommer heta!");
tonen (0, NOTE_B4, 200);
}

om (buttonPresses == 30)
{
digitalWrite (ledone, hög);
digitalWrite (ledtwo, hög);
digitalWrite (ledthree, hög);
Serial.println ("spelaren en blir nära!");
tonen (0, NOTE_C5, 200);

}
om (buttonPresses == 40)
{
digitalWrite (ledone, hög);
digitalWrite (ledtwo, hög);
digitalWrite (ledthree, hög);
digitalWrite (ledfour, hög);
Serial.println ("en spelare är nästan där!");
tonen (0, NOTE_D5, 200);
}
om (buttonPresses == 50)
{
digitalWrite (ledone, hög);
digitalWrite (ledtwo, hög);
digitalWrite (ledthree, hög);
digitalWrite (ledfour, hög);
digitalWrite (ledfive, hög);
om (y == 1)
{
int melodi [] = {
NOTE_E5, NOTE_E5, NOTE_E5, NOTE_E5, NOTE_F5, NOTE_D5, NOTE_F5, NOTE_E5,};
int noteDurations [] = {
4,8,8,8,6,6,6,1.5,};
för (int thisNote = 0; thisNote < 8; thisNote ++) {
int noteDuration = 1000/noteDurations [thisNote];
tonen (0, melodi [thisNote], noteDuration);
Delay(noteDuration+50);}
y = 2;
}
Serial.println ("spelare vinner!");
Serial.println ("lägga upp skiss att spela igen!");
digitalWrite (ledsix, låg);
digitalWrite (ledseven, låg);
digitalWrite (ledeight, låg);
digitalWrite (lednine, låg);
digitalWrite (ledten, låg);
otherbuttonPresses = 0;

}
om (otherbuttonPresses == 10)
{
digitalWrite (ledten, hög);
Serial.println ("två spelare flammande!");
tonen (0, NOTE_A5, 200);

}
om (otherbuttonPresses == 20)
{
digitalWrite (ledten, hög);
digitalWrite (lednine, hög);
Serial.println ("två spelare kommer heta!");
tonen (0, NOTE_B5, 200);
}

om (otherbuttonPresses == 30)
{
digitalWrite (ledten, hög);
digitalWrite (lednine, hög);
digitalWrite (ledeight, hög);
Serial.println ("spelaren två är att komma nära!");
tonen (0, NOTE_C6, 200);
}
om (otherbuttonPresses == 40)
{
digitalWrite (ledten, hög);
digitalWrite (lednine, hög);
digitalWrite (ledeight, hög);
digitalWrite (ledseven, hög);
Serial.println ("två spelare är nästan där!");
tonen (0, NOTE_D6, 200);
}
om (otherbuttonPresses == 50)
{
digitalWrite (ledten, hög);
digitalWrite (lednine, hög);
digitalWrite (ledeight, hög);
digitalWrite (ledseven, hög);
digitalWrite (ledsix, hög);
om (x == 1)
{
int melodi [] = {
NOTE_E6, NOTE_E6, NOTE_E6, NOTE_E6, NOTE_F6, NOTE_D6, NOTE_F6, NOTE_E6,};
int noteDurations [] = {
4,8,8,8,6,6,6,1.5,};
för (int thisNote = 0; thisNote < 8; thisNote ++) {
int noteDuration = 1000/noteDurations [thisNote];
tonen (0, melodi [thisNote], noteDuration);
Delay(noteDuration+50);}
x = 2;
}
Serial.println ("spelare två vinner!");
Serial.println ("lägga upp skiss att spela igen!");
digitalWrite (ledone, låg);
digitalWrite (ledtwo, låg);
digitalWrite (ledthree, låg);
digitalWrite (ledfour, låg);
digitalWrite (ledfive, låg);
buttonPresses = 0;

}

}

Här är fliken pitches.h eftersom du behöver det för det här programmet att köras.

/*************************************************
* Offentliga konstanter
*************************************************/

/*************************************************
* Offentliga konstanter
*************************************************/

#define NOTE_B0 31
#define NOTE_C1 33
#define NOTE_CS1 35
#define NOTE_D1 37
#define NOTE_DS1 39
#define NOTE_E1 41
#define NOTE_F1 44
#define NOTE_FS1 46
#define NOTE_G1 49
#define NOTE_GS1 52
#define NOTE_A1 55
#define NOTE_AS1 58
#define NOTE_B1 62
#define NOTE_C2 65
#define NOTE_CS2 69
#define NOTE_D2 73
#define NOTE_DS2 78
#define NOTE_E2 82
#define NOTE_F2 87
#define NOTE_FS2 93
#define NOTE_G2 98
#define NOTE_GS2 104
#define NOTE_A2 110
#define NOTE_AS2 117
#define NOTE_B2 123
#define NOTE_C3 131
#define NOTE_CS3 139
#define NOTE_D3 147
#define NOTE_DS3 156
#define NOTE_E3 165
#define NOTE_F3 175
#define NOTE_FS3 185
#define NOTE_G3 196
#define NOTE_GS3 208
#define NOTE_A3 220
#define NOTE_AS3 233
#define NOTE_B3 247
#define NOTE_C4 262
#define NOTE_CS4 277
#define NOTE_D4 294
#define NOTE_DS4 311
#define NOTE_E4 330
#define NOTE_F4 349
#define NOTE_FS4 370
#define NOTE_G4 392
#define NOTE_GS4 415
#define NOTE_A4 440
#define NOTE_AS4 466
#define NOTE_B4 494
#define NOTE_C5 523
#define NOTE_CS5 554
#define NOTE_D5 587
#define NOTE_DS5 622
#define NOTE_E5 659
#define NOTE_F5 698
#define NOTE_FS5 740
#define NOTE_G5 784
#define NOTE_GS5 831
#define NOTE_A5 880
#define NOTE_AS5 932
#define NOTE_B5 988
#define NOTE_C6 1047
#define NOTE_CS6 1109
#define NOTE_D6 1175
#define NOTE_DS6 1245
#define NOTE_E6 1319
#define NOTE_F6 1397
#define NOTE_FS6 1480
#define NOTE_G6 1568
#define NOTE_GS6 1661
#define NOTE_A6 1760
#define NOTE_AS6 1865
#define NOTE_B6 1976
#define NOTE_C7 2093
#define NOTE_CS7 2217
#define NOTE_D7 2349
#define NOTE_DS7 2489
#define NOTE_E7 2637
#define NOTE_F7 2794
#define NOTE_FS7 2960
#define NOTE_G7 3136
#define NOTE_GS7 3322
#define NOTE_A7 3520
#define NOTE_AS7 3729
#define NOTE_B7 3951
#define NOTE_C8 4186
#define NOTE_CS8 4435
#define NOTE_D8 4699
#define NOTE_DS8 4978

Relaterade Ämnen

Arduino projekt ombord

The Arduino projekt ombord är i grunden en styrelse att transer din ATMEGA168/328 till när du har slutfört projektet och inte längre behöver använda Arduino som en utveckling. Helt enkelt överföra programmerade chippet från Arduino styrelsen till Ard...

Lägga till Bluetooth 4.0 till din Arduino projekt [IoT] - kontrolleras av Smartphone

Vi är grupp av internet saker entusiaster som älskar hacka ihop olika enheter. Kolla in vårt nuvarande projekt på vår hemsida och ta en titt på denna guide i ett annat format på vår blogg.Steg 1: IntroduktionArduino är en cool plattform eftersom du e...

Styra en arduino projekt genom en anpassningsbar android / Iphone app med Blynk och Wemos D1: 2016 SUPER NOOB VÄNLIGT sätt

Syftet med detta instructable är att lära dig att skapa wifi-anslutna arduino projekterar det enklaste och snabbaste möjliga sätt. Om du vill göra en arduino projekt som du kan styra från din smartphone och som bara kostade 4 eurs i hårdvara, då proj...

#MyoCraft: gest-aktivera din Arduino projekt med en Myo armbindel

Du kan bygga en hel del coola saker med en Arduino. Vore det inte skönt att kunna styra den med en snärt med handleden?Låt mig visa dig hur du lägger till trådlösa gest kontroll en Arduino projekt med hjälp av en Myo armband. Vi gör detta via MyoDuni...

Gör din Arduino projekt trådlöst i minuter, med den trådlösa uppfinnare skydda

uppfinnare skölden använder en trådlös röret, vilket är en särskild trådlös RF-modul som tillåter dig att enkelt och tillförlitligt sätt, skicka och ta emot felfri trådlösa data mellan två eller flera Arduino styrelser.Det är Long Range – avstånd upp...

Lägga till Ethernet till någon Arduino projekt för mindre än 10$

så du har ett snyggt Arduino projekt pågår. Vore det inte skönt att lägga till Internet-anslutning och gör det på de billiga också? Detta Instructable visar dig hur du lägger till Internet-anslutning i form av ett Ethernet-gränssnitt för några dollar...

Arduino projekt i 5 minuter

I följande Instructable visar vi dig hur du kan göra din nästa Arduino projekt på bara 5 minuter.Det är enkelt, lätt och roligt.Njut! :)Steg 1: Plan it!1. gå till Circuito.io2. Välj komponenter i skärmdumpen, lägga till en beskrivning och din e-posta...

Halm kabel/tråd Management ärm för 3d-skrivare och Arduino projekt

Detta är en instructable för hur man gör en billig kabel management ärm med hjälp av ett strå. Det är ett bra sätt att återanvända vissa oönskade skräp och städa upp din kablar samtidigt.Jag byggde nyligen en låg budget I3 Prusa 3D-skrivare genom att...

Arduino projekt: Gyro/Accelerometer MPU-6050 och Adafruit Motor Driver sköld

Hej är killar, om du planerar att använda MPU 6050 Gyro/Accelerometer modul eller L329D adafruit moter driver sköld med Arduino för ditt nästa projekt då du på rätt plats, eftersom i artikeln jag delar en video med dig som börjar lära dig från grundl...

Hjälp med min arduino projekt. (2, 7 segment med piezo summern och relä)

Hej, jag behöver lite hjälp med min arduino projekt.Jag har 2, 7 segment visar vilka nedräkning från 20 till noll sv sedan piezo Summer beebs ett tag.Min fråga är:Jag vill ha ett relä påslagen för 20 sekunder samtidigt med 7 segment nedräkningen.så o...

Magiska ljus (kapacitans Sensor, första Arduino projekt)

detta var min allra första arduino projekt. Dess stora för nybörjare. Tona färgen eller lamporna min flytta händerna nära det. Det bleknar från en ganska lila blå till ett hetsigt röd-orange. Dess var SUPER enkelt att bygga, inte för hårt att skriva...

Arduino projekt Box

Jag leker ständigt i Arduino land arbetar med nya finnar, displayer och sensorer. Nyligen hade jag samtal att bygga en temperatur datalogger för att registrera temperaturer från 16 olika platser inne i en stor elektrisk församling skåp så jag kunde i...

MAS 960 Design för empowerement - Arduino projekt RUDI

Arduino projekt kodnamn RUDI: ansluta personnal objekt till en Konduktiv färg strömkretsen och projicera bilder på en bärbar dator med hjälp av en magnetisk arduoino.Design av: David Mellis, Eric Rosenbaum, Sam Kronick, Jerome FinkelMIT Media Lab hös...

Skapa en Arduino projekt

En arduino projekt kunde lägga till dekoration i huset, eller hjälpa till att få saker gjort. En arduino kunde Visa gör videor av någons husdjur, t.ex. (här) Detta instructable tar dig steg för steg genom processen att skapa ett Arduino projekt.Bild...

UCN Robotics - PLC Arduino projekt

För våra 2 termin Robotics klass är det nödvändigt att skapa en instructables om robotarm används för klassen. Detta instructable kommer att omfatta inställning och koden (endast Arduino) används för att göra detta system fungerar, som kan användas f...

Arduino projekt: Testa spänner LoRa modul RF1276 för GPS-spårning lösning

Anslutning: USB - seriellBehov: Chrome webbläsareBehov: 1 X Arduino MegaBehov: 1 X GPSBehov: 1 X SD-kortBehov: 2 X LoRa Modem RF1276Funktion: Arduino skicka GPS värde till huvudsakliga bas - Main bas lagra data i Dataino Server Lora Module: Ultra lån...

Solid StateRelay moduler för Arduino projekt

Jag bakbord och testa många olika typer av projekt. Ett tag gjorde jag en massa hemautomation saker försöker skära på min elräkning samtidigt som inte offrar livets goda. Kontrollera en/c eller stor värmare äger lite av vård. Lyckligtvis finns det so...

Arduino projekt - E-Dice! (Nybörjare)

Tja, jag fick just min Arduino kit med posten igår, och jag var mycket glad att komma igång! Efter ungefär en timme eller två, jag bestämde mig att börja göra något roligt:En elektronisk tärning. Jag var tvungen att göra detta själv, eftersom det fan...

ATTiny drivs Arduino projekt - jag gjorde det på TechShop

Arduino är en bra plattform. Ingen fråga. Men vad händer om jag sa att du kan ta din hela styrelsen och komprimera den till små paket. Och jag menar verkligen liten. Chipet på bilden är en ATTiny84, och det är den stora versionen. Så om ditt projekt...