1. Hårdvarukomponenter:
* summer:
* enkla summer: Du kan använda grundläggande tryckknappar för varje spelare. De är billiga och enkla att hitta.
* elektroniska summer: För en mer realistisk känsla kan du använda elektroniska summer (som de som används i spelshower). Dessa kommer att kräva lite mer ledningar och programmering.
* mikrokontroller:
* arduino: Ett populärt val för att användas och programmera flexibilitet. Du kan använda en Arduino Uno, Nano eller andra lämpliga brädor.
* Raspberry Pi: Ett kraftfullare alternativ med mer avancerade funktioner. Den kan hantera mer komplex logik och till och med potentiellt köra ett grafiskt gränssnitt.
* display (valfritt):
* LCD -display: För att visa frågorna, svara på val och spelarresultat.
* Datormonitor: Du kan använda en datorskärm för att visa allt visuellt.
* högtalare (valfritt): För att spela ljudeffekter.
* Strömförsörjning:
* En väggadapter eller batteripaket kommer att behövas för att driva systemet.
* jumpertrådar: För att ansluta de olika komponenterna.
* Breadboard: (Valfritt) för prototypning och testning.
2. Programvarukomponenter:
* Programmeringsspråk:
* arduino IDE: Om du använder en Arduino.
* python: Om du använder en Raspberry Pi.
* Frågebank:
* Du behöver en samling frågor och svar för spelet. Du kan skapa dina egna eller hitta förberedda uppsättningar online. Du kan lagra dessa frågor i en textfil, CSV -fil eller databas.
* logik och spelflöde:
* Du måste skriva kod för att hantera:
* Visa frågor och svara på val.
* Upptäcka summerpressar.
* Bestämma rätt svar.
* Tilldela poäng eller påföljder.
* Spårningsspelarnas poäng.
* Flytta till nästa fråga.
* Avsluta spelet.
3. Steg för att bygga:
1. Kabeldragning av surrarna:
* Anslut varje summer till en digital ingångsstift på mikrokontrollern.
* Använd ett pull-up-motstånd på varje ingångsstift för att säkerställa att signalen är hög när summern inte trycks in.
2. Programvaruinställning:
* Installera Arduino IDE eller Python -miljön.
* Skriv kod för att läsa summeringångarna.
* Ställ in en funktion för att kontrollera för knapptryckningar.
* Inkludera din frågebank och logik för att bestämma rätt svar.
* Skapa funktioner för att visa frågor, svar och poäng.
3. Programmering av spellogiken:
* Ställ in en huvudslinga för att köra spelet.
* visa en fråga.
* vänta tills en spelare trycker på sin summer.
* Kontrollera om svaret är korrekt.
* Tilldelningspoäng eller straffa spelaren.
* flytta till nästa fråga.
4. display (valfritt):
* Om du använder en LCD -display, skriv kod för att visa frågor, svar och poäng.
* Om du använder en datorskärm kan du använda ett grafiskt användargränssnitt (GUI) -bibliotek som Tkinnter (Python) för att skapa en mer visuellt tilltalande display.
5. ljudeffekter (valfritt):
* inkludera kod för att spela ljudeffekter med högtalaren.
* Du kan använda enkla pip för rätt och fel svar eller mer detaljerade ljudkoder.
Exempelkod (arduino):
`` `Arduino
// summerstift
const int buzzerpin1 =2;
const int buzzerpin2 =3;
const int buzzerpin3 =4;
const int buzzerpin4 =5;
// Definiera frågan och svara på matriser
Strängfrågor [5] ={"Fråga 1?", "Fråga 2?", "Fråga 3?", "Fråga 4?", "Fråga 5?"};
Strängsvar [5] ={"Svar 1", "Svar 2", "Svar 3", "Svar 4", "Svar 5"};
// Player Poäng
int Player1Score =0;
int Player2Score =0;
int Player3Score =0;
int Player4Score =0;
void setup () {
// Ställ in summerstiften som ingångar med pull-up-motstånd
PinMode (Buzzerpin1, input_pullup);
PinMode (Buzzerpin2, input_pullup);
PinMode (Buzzerpin3, input_pullup);
PinMode (Buzzerpin4, input_pullup);
Serie.begin (9600); // för felsökning
}
void loop () {
// Kontrollera om någon summer trycks in
if (digitalread (buzzerpin1) ==låg) {
// Player 1 tryckte på summern
checkanswer (1);
} annars om (DigitalRead (BuzzerPin2) ==låg) {
// Player 2 tryckte på summern
checkanswer (2);
} annars om (DigitalRead (BuzzerPin3) ==låg) {
// Player 3 tryckte på summern
checkanswer (3);
} annars om (DigitalRead (BuzzerPin4) ==låg) {
// Player 4 tryckte på summern
checkanswer (4);
}
}
void checkanswer (int playernumber) {
// ... din logik för att bestämma rätt svar och tilldelningspoäng eller påföljder
}
`` `
Ytterligare tips:
* Starta enkelt: Börja med en grundversion av spelet och lägg gradvis till fler funktioner när du blir mer bekväm.
* Modulär design: Dela upp din kod i mindre, hanterbara funktioner för att göra det lättare att förstå och underhålla.
* Använd kommentarer: Dokumentera din kod tydligt med kommentarer för att förklara vad varje avsnitt gör.
* felsökning: Använd seriell monitor (om tillämpligt) eller en felsökare för att hjälpa dig hitta och fixa fel i din kod.
* Säkerhet först: Se till att dina ledningar är säker och att du förstår hur du använder dina komponenter på ett säkert sätt.
Låt mig veta om du har fler frågor om de specifika komponenterna eller programmeringstekniker du vill använda. Ha kul att bygga ditt "Who Wants to Be a Millionaire" -spel!