1. Maskinvarekomponenter:
* summere:
* Simple Buzzers: Du kan bruke grunnleggende trykknapper for hver spiller. De er billige og enkle å finne.
* Elektroniske summere: For en mer realistisk følelse kan du bruke elektroniske summere (som de som brukes i spillshow). Disse vil kreve litt mer kabling og programmering.
* mikrokontroller:
* Arduino: Et populært valg for brukervennlighet og programmeringsfleksibilitet. Du kan bruke en Arduino Uno, Nano eller andre passende brett.
* Raspberry Pi: Et kraftigere alternativ med mer avanserte funksjoner. Den kan håndtere mer kompleks logikk og til og med potensielt kjøre et grafisk grensesnitt.
* display (valgfritt):
* LCD -skjerm: For å vise spørsmålene, svare på valg og spillerpoeng.
* Datamaskinmonitor: Du kan bruke en datamaskinmonitor for å vise alt visuelt.
* høyttaler (valgfritt): For å spille lydeffekter.
* Strømforsyning:
* En veggadapter eller batteripakke vil være nødvendig for å drive systemet.
* Jumper ledninger: For å koble sammen de forskjellige komponentene.
* Breadboard: (Valgfritt) for prototyping og testing.
2. Programvarekomponenter:
* Programmeringsspråk:
* arduino ide: Hvis du bruker en Arduino.
* python: Hvis du bruker en Raspberry Pi.
* Spørsmål Bank:
* Du trenger en samling spørsmål og svar for spillet. Du kan opprette dine egne eller finne ferdiglagde sett på nettet. Du kan lagre disse spørsmålene i en tekstfil, CSV -fil eller database.
* logikk og spillstrøm:
* Du må skrive kode for å håndtere:
* Viser spørsmål og svarvalg.
* Oppdage summerpresser.
* Bestemme riktig svar.
* Tildelte poeng eller straff.
* Sporingsspiller.
* Flytter til neste spørsmål.
* Avslutter spillet.
3. Trinn for å bygge:
1. Kabling av summer:
* Koble hver summer til en digital inngangspinne på mikrokontrolleren.
* Bruk en pull-up-motstand på hver inngangspinne for å sikre at signalet er høyt når summeren ikke trykkes.
2. programvareoppsett:
* Installer Arduino IDE- eller Python -miljøet.
* Skriv kode for å lese summerinngangene.
* Sett opp en funksjon for å se etter knappetrykk.
* Inkluder spørsmålsbanken din og logikken for å bestemme riktig svar.
* Lag funksjoner for å vise spørsmål, svar og score.
3. Programmering av spilllogikken:
* Sett opp en hovedløkke for å kjøre spillet.
* Vis et spørsmål.
* vent til en spiller trykker på summeren deres.
* sjekk om svaret er riktig.
* tildeler poeng eller straffer spilleren.
* gå til neste spørsmål.
4. visning (valgfritt):
* Hvis du bruker en LCD -skjerm, skriver du kode for å vise spørsmålene, svarene og score.
* Hvis du bruker en datamaskinmonitor, kan du bruke et grafisk brukergrensesnitt (GUI) -bibliotek som Tkinter (Python) for å lage et mer visuelt tiltalende skjerm.
5. lydeffekter (valgfritt):
* inkluderer kode for å spille lydeffekter ved hjelp av høyttaleren.
* Du kan bruke enkle piper for riktige og gale svar eller mer forseggjorte lydsignaler.
Eksempelkode (Arduino):
`` Arduino
// summerpinner
const int BuzzerPin1 =2;
const int BuzzerPin2 =3;
const int BuzzerPin3 =4;
const int BuzzerPin4 =5;
// definere spørsmålet og svare på matriser
Strengspørsmål [5] ={"Spørsmål 1?", "Spørsmål 2?", "Spørsmål 3?", "Spørsmål 4?", "Spørsmål 5?"};
String svar [5] ={"Svar 1", "Svar 2", "Svar 3", "Svar 4", "Svar 5"};
// spillerpoeng
int Player1Score =0;
int player2Score =0;
int player3Score =0;
int Player4Score =0;
void setup () {
// Sett opp summerpinnene som innganger med pull-up motstander
pinmode (summerpin1, input_pullup);
pinmode (summerpin2, input_pullup);
pinmode (summerpin3, input_pullup);
pinmode (summerpin4, input_pullup);
Serial.begin (9600); // for feilsøking
}
void loop () {
// sjekk om noen summer er trykket
if (digitalRead (summerpin1) ==lav) {
// Spiller 1 trykket på summeren
Checkanswer (1);
} annet hvis (digitalRead (BuzzRpin2) ==lav) {
// Player 2 trykket på summeren
Checkanswer (2);
} annet hvis (digitalRead (BuzzRpin3) ==lav) {
// Player 3 trykket på summeren
Checkanswer (3);
} annet hvis (digitalRead (BuzzRpin4) ==lav) {
// Player 4 trykket på summeren
Checkanswer (4);
}
}
void checkAnswer (int playernumber) {
// ... din logikk for å bestemme riktig svar- og tildelingspunkter eller straffer
}
`` `
Tilleggstips:
* Start enkel: Begynn med en grunnleggende versjon av spillet og legg gradvis til flere funksjoner når du blir mer komfortabel.
* Modulær design: Bryt koden din i mindre, håndterbare funksjoner for å gjøre det lettere å forstå og vedlikeholde.
* Bruk kommentarer: Dokumenter koden din tydelig med kommentarer for å forklare hva hver seksjon gjør.
* feilsøking: Bruk seriemonitoren (hvis aktuelt) eller en feilsøking for å hjelpe deg med å finne og fikse feil i koden din.
* Sikkerhet først: Forsikre deg om at ledningene dine er sikre og at du forstår hvordan du bruker komponentene dine trygt.
Gi meg beskjed hvis du har flere spørsmål om de spesifikke komponentene eller programmeringsteknikkene du vil bruke. Ha det gøy å bygge ditt "Who Wants To Be A Millionaire" -spill!