MicroPython è una versione leggera del linguaggio di programmazione Python sviluppato per programmare microcontrollori, SOC e altri dispositivi di sistema embedded. È stato creato per consentire agli sviluppatori di sfruttare la " facilità di apprendimento e utilizzo" natura di Python per lo sviluppo di sistemi embedded. Con Python ora il principale linguaggio introduttivo nella maggior parte delle scuole e essendo uno dei linguaggi di programmazione più popolari e ampiamente utilizzati in tutto il mondo, attraverso micro-python, decine di utenti Python sono in grado di aggirare la stressante curva di apprendimento ripida associata all'uso di C e C ++ per programmare microcontrollori. Possono immediatamente iniziare a utilizzare le conoscenze acquisite negli anni per accedere all'hardware di basso livello proprio come con gli altri linguaggi. Micro-python è specificamente un'implementazione snella di Python 3 e come tale è compatibile con la sintassi di Python 3.
Sebbene MicroPython non sia ancora allo stesso livello di popolarità di C e C ++ per lo sviluppo di sistemi embedded, la sua popolarità è aumentata con sempre più microcontrollori, IDE e schede di sviluppo che ne supportano l'uso. Per il tutorial di oggi, esamineremo una di queste schede per le quali è possibile sviluppare il firmware utilizzando MicroPython.
Per il tutorial di oggi, esamineremo lo sviluppo del codice per ESP32 utilizzando MicroPython.
Inizieremo dando uno sguardo al motivo per cui MicroPython è buono per ESP32 e procediamo attraverso la configurazione di ESP32 per MicroPython e il caricamento dello schizzo di blink con MicroPython su ESP32.
Perché MicroPython? (MicroPython contro Arduino C)
Uno dei modi più semplici e collaudati di programmare l'ESP32 è usare l'IDE di Arduino, che significa l'uso della versione Arduino di C o C ++. C e C ++, per decenni, sono stati i due linguaggi più popolari per lo sviluppo di sistemi embedded e la versione Arduino del linguaggio lo ha reso ancora più semplice, il che spiega la sua popolarità tra i produttori e gli hobbisti grazie alla facilità con cui i codici possono essere sviluppati. Oltre a questo, Arduino ha una delle più grandi comunità tecnologiche al mondo con nuove librerie, correzioni software, nuovo supporto per schede ecc. Rilasciate quotidianamente dalla comunità. Tutto ciò lo rende uno strumento formidabile per la programmazione di schede di sistema embedded. L'unica vera limitazione che si potrebbe attribuire ad Arduino C è il fatto che funziona solo all'interno dell'IDE di Arduino.Con l'IDE limitato e privo di alcune funzionalità che potrebbero essere davvero utili quando si sviluppa una grande base di codice, Arduino C non è il più efficiente.
MicroPython, d'altra parte, è relativamente nuovo. Mentre la comunità dei suoi utenti sta crescendo, con il supporto per più piattaforme in fase di rilascio, la sua forza non può essere paragonata a quella di Arduino. Al rialzo, MicroPython è essenzialmente una versione snella di python che è uno dei linguaggi di programmazione più popolari al mondo e, come tale, qualsiasi problema che non può essere risolto dalla comunità MicroPython può prendere spunti dalla comunità python generale.
Oltre al supporto della comunità, MicroPython ha anche alcune funzionalità che lo collocano molto al di sopra della classe di Arduino. Una di queste caratteristiche è REPL. REPL è l'acronimo di Read-Evaluate-Print. Questa funzione consente di connettersi a una scheda ed eseguire codice rapidamente senza la necessità di compilare o caricare l'intero codice. Come tale, puoi testare ogni parte del tuo codice mentre le sviluppi.
Indipendentemente da quale di questi due scegli per il tuo progetto, assicurati di ciò che ti serve meglio. Detto questo, passiamo alla creazione dell'esempio blink usando ESP32 con MicroPython.
Componenti richiesti
Per costruire l'esempio blink, avremo bisogno dei seguenti componenti;
- DOIT ESP32 DevKit v1 (1)
- Un LED (1)
- Resistenza da 100 Ohm (1)
- Cavi jumper
- Breadboard (1)
È possibile utilizzare una qualsiasi delle altre schede basate su ESP32 al posto di DOIT ESP32 DevKit V1 e si può scegliere di lavorare con il LED integrato, il che significa che per questo tutorial è necessaria solo la scheda ESP32. In precedenza abbiamo fatto lampeggiare il LED ESP32 programmandolo utilizzando l'IDE di Arduino.
Oltre ai componenti hardware, avremo bisogno anche di software come e Thonny IDE