4.2.8 Indovina il Numero
4.2.8.1 Panoramica

In questo progetto, giochiamo a un gioco di indovinazione del numero con una scheda Micro:bit, una scheda di controllo gamepad e un display OLED. Quando il numero corretto viene indovinato, l’OLED visualizza “Great!!!”; se l’ipotesi è troppo alta o troppo bassa, mostra rispettivamente “To High!”/“To Low!”, insieme all’intervallo corrispondente di numeri possibili.

4.2.8.2 Conoscenza dei Componenti
Questo progetto utilizza lo stesso display OLED del Progetto 07. Si prega di fare riferimento alla sezione 4.2.7.2 per la conoscenza dei suoi componenti.
4.2.8.3 Parti Richieste
|
|
|
|---|---|---|
Scheda micro:bit V2 (auto-fornita) ×1 |
Smart Gamepad micro:bit (assemblato) ×1 |
Batteria AAA (auto-fornita) ×4 |
|
|
|
Display OLED (auto-fornito)×1 |
Cavo DuPont F-F(auto-fornito) x4 |
4.2.8.4 Schema di Cablaggio

Dopo aver cablato come mostrato sopra, inserisci la micro:bit nello slot sulla scheda di controllo del gamepad.
Display OLED |
Scheda di controllo gamepad micro:bit |
Pin scheda micro:bit |
|---|---|---|
GND |
GND |
GND |
VCC |
3V |
3V |
SDA |
SDA |
P20 |
SCL |
SCL |
P19 |
4.2.8.5 Flusso del Codice

4.2.8.6 Codice di Test
⚠️ Nota che qui è inclusa la libreria OLED, quindi dobbiamo importare: https://github.com/keyestudio/pxt-environment-kit-master.
Codice completo:


Breve spiegazione:
① Inizializza il bit flag di aggiornamento dello schermo, imposta la variabile mode a 0 (0-prontezza di gioco, 1-gioco in corso) e inizializza la visualizzazione dello schermo OLED.

② Durante la preparazione del gioco, imposta l’intervallo di ipotesi, il valore di ipotesi iniziale, il valore target e l’ipotesi.

③ Aggiorna l’intervallo di valori e il valore di ipotesi sull’OLED. Visualizza i prompt corrispondenti quando il bit flag dello stato del risultato cambia: “To High!” quando state=1; “To Low!” quando state=2; e “Great!!!” quando state=3.
E imposta la modalità sulla prontezza di gioco e attendi 1000 millisecondi (1s).

④ Premi C e il valore di ipotesi temp+1; se il valore di ipotesi supera il massimo, impostalo come nuovo massimo.
Premi E e il valore di ipotesi temp-1; se il valore di ipotesi è inferiore al minimo, impostalo come nuovo minimo.

⑤ Premi D per confrontare il valore di ipotesi con il valore target. Se temp è maggiore, registra il nuovo massimo max2 e inserisci lo Stato 1; se temp è minore, registra il nuovo minimo min2 e inserisci lo Stato 2; se entrambi i valori sono uguali, vai allo Stato 3.
Infine, aggiorna il display con un ritardo di 1000 millisecondi.

4.2.8.7 Risultato del Test

Dopo aver caricato il codice, inserisci la scheda micro:bit nello slot del gamepad (batterie installate) e sposta l’interruttore su “ON”.
Dopo aver caricato il codice, l’OLED si inizializza e mostra l’intervallo di valori di “num: 1 ~ 100” e l’ipotesi iniziale di 50. Puoi premere C per temp+1 (max di 100) o E per temp-1 (min di 1) per cambiare il tuo valore di ipotesi sull’OLED.
Premi D per inviare il tuo valore, e temp verrà confrontato con il valore target casuale. Se temp>value, mostra “To High!” e assegna temp a max2; se temp<value, mostra “To Low!” e assegnalo a min2. Se sei troppo fortunato che temp=value, vedrai “Great!!!” per 1s.
Dopo di che, il gioco verrà resettato e verrà impostato un nuovo valore target. Giochiamo un altro round!

⚠️ Il blocco di costruzione nel Risultato del Test non è incluso in questo kit di prodotti.
Suggerimento: Se non c’è risposta sulla scheda, premi il pulsante di reset sul retro della scheda micro:bit.





