M5Stack Principiante: Plus 2 che sfruttano le funzionalità audio e display
introduzione
Con la rapida progressione dell'Internet delle Cose (IoT) e la proliferazione di dispositivi indossabili, c'è una crescente domanda da parte degli sviluppatori per schede di sviluppo che siano compatte, efficienti e ricche di funzionalità. L'M5StickC Plus2, un membro notevole della serie M5Stack, si distingue per il suo design compatto, integrazione multifunzionale e interfaccia user-friendly, rendendolo una scelta esemplare per una vasta gamma di progetti. Questo articolo mira a illustrare le caratteristiche chiave del M5StickC Plus2 e fornire indicazioni su come sfruttare le sue funzionalità integrate di altoparlante e display per eseguire la riproduzione audio e la visualizzazione di testo all'interno di un progetto campione.
Che cos'è M5StickC Plus2?
-
Design compatto: misura solo 54 mm × 54 mm, è facile da trasportare e integrare in vari progetti.
-
Display integrato: un display TFT a colori da 1,14 pollici che supporta più caratteri e display grafici.
-
Sensori multifunzionali: include, tra gli altri, un accelerometro, un giroscopio, sensori di temperatura e umidità, adatti a diversi scenari applicativi.
-
Altoparlante integrato: supporta la riproduzione audio, ideale per feedback sonoro e funzioni di allarme.
-
Interfacce avanzate: supporta GPIO, I2C, UART e altre interfacce di comunicazione, facilitando l'espansione delle periferiche.
-
Alimentato a batteria: la batteria integrata supporta il funzionamento a lungo termine, adatta per applicazioni mobili.
Impostazione dell'ambiente di sviluppo
-
Arduino IDE: utilizzato per scrivere e caricare codice su M5StickC Plus2. Scaricalo dal sito ufficiale di Arduino.
-
Libreria M5StickC Plus2: installa la libreria M5Stack nell'IDE Arduino per utilizzare le funzionalità fornite.
Installazione della libreria M5StickC Plus2
-
Aprire l'IDE Arduino.
-
Vai a
Strumenti
>Bacheca
>Gestione bacheche
. -
Cerca
M5StickC Plus2
e installa la versione più recente della libreria.
Progetto di esempio: visualizzazione di testo e riproduzione di suoni
#include "M5StickCPlus2.h" impostazione nulla() { // Retrieves device configuration. cfg automatico = M5.config(); // Initializes the M5StickC Plus2. StickCP2.begin(cfg); // Rotates the display StickCP2.Display.setRotation(1); // sets text color to green StickCP2.Display.setTextColor(VERDE); // centers the text StickCP2.Display.setTextDatum(middle_center); // uses the "Orbitron_Light_24" font StickCP2.Display.setTextFont(&fonts::Orbitron_Light_24); StickCP2.Display.setTextSize(1); // Displays the message "Power LED" at the screen’s center. StickCP2.Display.drawString("Test del cicalino", StickCP2.Display.width() / 2, StickCP2.Display.height() / 2); } ciclo vuoto() { // Play a 10,000 Hz tone for 100 milliseconds StickCP2.Altoparlante.tono(10000, 100); // Delay for 1 second ritardo(1000); // Play a 4,000 Hz tone for 20 milliseconds StickCP2.Altoparlante.tono(4000, 20); // Delay for 1 second delay(1000); }
Spiegazione del codice
-
Inclusa la Biblioteca
#include "M5StickCPlus2.h"
-
impostare()
Funzione
impostazione nulla() { // Retrieves device configuration. cfg automatico = M5.config(); // Initializes the M5StickC Plus2. StickCP2.begin(cfg); // Rotates the display StickCP2.Display.setRotation(1); // sets text color to green StickCP2.Display.setTextColor(VERDE); // centers the text StickCP2.Display.setTextDatum(middle_center); // uses the "Orbitron_Light_24" font StickCP2.Display.setTextFont(&fonts::Orbitron_Light_24); StickCP2.Display.setTextSize(1); // Displays the message "Power LED" at the screen’s center. StickCP2.Display.drawString("Test del cicalino", StickCP2.Display.width() / 2, StickCP2.Display.height() / 2); }
-
Rotazione:
setRotation(1)
ruota il display di 90 gradi per adattarlo all'orientamento fisico del dispositivo. -
Colore testo:
setTextColor(GREEN)
imposta il colore del testo su verde. -
Allineamento del testo:
setTextDatum(middle_center)
centra l'allineamento del testo. -
Carattere e dimensione: utilizza il carattere
Orbitron_Light_24
e imposta la dimensione del testo su 1. -
Testo visualizzato: visualizza "Buzzer Test" al centro dello schermo.
-
Aggiorna visualizzazione: richiama
display()
per aggiornare la visualizzazione con il contenuto disegnato.
3. ciclo continuo()
Funzione
StickCP2.Altoparlante.tono(10000, 100);
-
10000
: questo parametro rappresenta solitamente la frequenza del tono in Hertz (Hz ). Una frequenza di 10.000 Hz è un suono acuto, vicino al limite superiore dell'udito umano. -
100
: questo parametro rappresenta in genere la durata del tono in millisecondi (ms). Pertanto, il tono verrà riprodotto per 100 millisecondi (0,1 secondi).
-
Riproduce un tono ad alta frequenza da 10.000 Hz per 100 millisecondi.
-
Ritardi per 1 secondo.
-
Riproduce un tono a frequenza più bassa da 4.000 Hz per 20 millisecondi.
-
Ritarda per un altro 1 secondo.
ciclo vuoto() { // Play a 10,000 Hz tone for 100 milliseconds StickCP2.Altoparlante.tono(10000, 100); // Delay for 1 second ritardo(1000); // Play a 4,000 Hz tone for 20 milliseconds StickCP2.Altoparlante.tono(4000, 20); // Delay for 1 second delay(1000); }
Espansione del progetto e applicazioni
-
Feedback sonoro e sistemi di allarme
-
Avvisi di notifica: riproduci suoni per avvisare gli utenti di eventi specifici.
-
Sistemi di allarme: emettono toni ad alta frequenza per avvisare gli utenti di condizioni anomale.
-
Giochi interattivi: crea semplici effetti sonori di gioco utilizzando frequenze e durate diverse.
-
Visualizzazione e interazione delle informazioni
-
Visualizzazione dati in tempo reale: mostra i dati del sensore in tempo reale come temperatura e umidità.
-
Interfacce utente: crea semplici menu e pulsanti per l'interazione dell'utente attraverso il display.
-
Animazioni e grafica: visualizza grafica dinamica o animazioni per migliorare l'attrattiva visiva dei progetti.
-
Dispositivi indossabili
-
Monitoraggio della salute: combina i sensori per monitorare i dati sulla salute come la frequenza cardiaca e i passi e visualizzare le informazioni.
-
Braccialetti intelligenti: implementa promemoria informativi e semplici interazioni utilizzando il display e l'altoparlante.
-
Fitness Tracker: registra e visualizza i dati degli esercizi in tempo reale attraverso il display.
Considerazioni e suggerimenti per l'ottimizzazione
-
Conferma i nomi degli oggetti
M5
come oggetto principale. Se la libreria utilizza effettivamente StickCP2
, fare riferimento alla documentazione ufficiale per confermarne l'utilizzo. Se necessario, sostituisci StickCP2
con M5
come mostrato nel codice di esempio.-
M5Unificato: https://github.com/m5stack/M5Unified
-
M5StickCPlus2: https://github.com/m5stack/M5StickCPlus2
-
Prestazioni degli altoparlanti
-
Gamma di frequenza: assicurati che le frequenze che intendi riprodurre rientrino nella gamma supportata dall'altoparlante. Frequenze estremamente alte o basse possono causare distorsioni del suono o potrebbero non essere udibili.
-
Controllo volume: se la libreria supporta il controllo volume, regola il volume secondo necessità per evitare che i suoni siano troppo forti o troppo deboli.
-
Aggiorna visualizzazione
display()
funzione per aggiornare lo schermo. In caso contrario, il contenuto disegnato potrebbe non essere visualizzato sul display.-
Gestione degli errori
-
Gestione energetica
Progetto M5StickC Plus2
Altoparlante Bluetooth M5StickC – OpenELAB
Progetto Mini Slot Machine con M5StickC Plus2
Articoli consigliati
Come accendo e spengo il mio M5StickC PLUS2?
Qual è la differenza tra M5StickC PLUS e PLUS2?
Costruisci un sistema di rilevamento della velocità della bicicletta
Principiante M5Stack: masterizzazione di M5Burner
M5Stack Principiante: Guida per l'utente del pulsante PLUS2
Principiante M5Stack: funzionalità a infrarossi PLUS2
Progetto per principianti M5Stack: implementa una funzione di controllo remoto