Nota
Ciao, benvenuto nella community SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts su Facebook! Approfondisci Raspberry Pi, Arduino ed ESP32 con altri appassionati.
Perché unirsi?
Supporto Esperto: Risolvi problemi post-vendita e sfide tecniche con l’aiuto della nostra community e del nostro team.
Impara & Condividi: Scambia consigli e tutorial per migliorare le tue competenze.
Anteprime Esclusive: Ottieni l’accesso anticipato agli annunci di nuovi prodotti e anteprime esclusive.
Sconti Speciali: Goditi sconti esclusivi sui nostri prodotti più recenti.
Promozioni e Concorsi Festivi: Partecipa a concorsi e promozioni festive.
👉 Pronto a esplorare e creare con noi? Clicca [Qui] e unisciti oggi stesso!
GIOCO - Indovina il Numero
Indovina il Numero è un divertente gioco da festa in cui tu e i tuoi amici vi alternate nell’inserire un numero (0~99). L’intervallo diventa più stretto ad ogni input fino a quando un giocatore indovina correttamente il numero. Il giocatore che indovina correttamente viene dichiarato perdente e soggetto a una penalità. Ad esempio, se il numero segreto è 51, che i giocatori non possono vedere, e il giocatore 1 inserisce 50, l’intervallo di numeri cambia a 50~99. Se il giocatore 2 inserisce 70, l’intervallo diventa 50~70. Se il giocatore 3 inserisce 51, è il perdente. In questo gioco, utilizziamo un telecomando a infrarossi per inserire i numeri e un LCD per visualizzare i risultati.
Componenti Necessari
In questo progetto, abbiamo bisogno dei seguenti componenti.
È sicuramente conveniente acquistare un kit completo, ecco il link:
Nome |
ELEMENTI IN QUESTO KIT |
LINK |
---|---|---|
Elite Explorer Kit |
300+ |
Puoi anche acquistarli separatamente dai link sottostanti.
INTRODUZIONE COMPONENTI |
LINK ACQUISTO |
---|---|
- |
|
Collegamenti
Schema Elettrico
Codice
Nota
Puoi aprire il file
10_guess_number.ino
nel percorsoelite-explorer-kit-main\fun_project\10_guess_number
direttamente.Oppure copia questo codice nell’Arduino IDE.
Nota
Per installare la libreria, usa l’Arduino Library Manager e cerca «IRremote» e «LiquidCrystal I2C» e installale.
Come funziona?
Importazioni Librerie e Definizioni delle Variabili Globali:
Vengono importate tre librerie:
Wire
per la comunicazione I2C,LiquidCrystal_I2C
per il controllo del display LCD eIRremote
per ricevere i segnali dal telecomando a infrarossi. Sono definite diverse variabili globali per memorizzare lo stato e le impostazioni del gioco.setup()
Inizializza il display LCD e accendi la retroilluminazione. Inizializza la comunicazione seriale con un baud rate di 9600. Avvia il ricevitore a infrarossi. Chiama la funzione
initNewValue()
per impostare lo stato iniziale del gioco.loop()
Controlla se è stato ricevuto un segnale dal telecomando a infrarossi. Decodifica il segnale infrarosso ricevuto. Aggiorna lo stato del gioco o esegui le azioni corrispondenti in base al valore decodificato (numero o comando).
initNewValue()
Utilizza
analogRead
per inizializzare il seme del numero casuale, garantendo che vengano generati numeri casuali diversi ogni volta. Genera un numero casuale tra 0 e 98 come numero fortunato (il numero che i giocatori devono indovinare). Reimposta i prompt dei limiti superiore e inferiore. Visualizza un messaggio di benvenuto sul display LCD. Reimposta il numero di input.detectPoint()
Controlla la relazione tra il numero di input del giocatore e il numero fortunato. Se il numero di input è maggiore del numero fortunato, aggiorna il prompt del limite superiore. Se il numero di input è minore del numero fortunato, aggiorna il prompt del limite inferiore. Se il giocatore inserisce il numero corretto, reimposta l’input e restituisce true.
lcdShowInput()
Visualizza l’input del giocatore e i prompt dei limiti superiore e inferiore correnti sul display LCD. Se il giocatore indovina correttamente, visualizza un messaggio di successo e pausa per 5 secondi prima di riavviare il gioco.