Sommario:

MicroPython su SPIKE Prime: 12 passaggi
MicroPython su SPIKE Prime: 12 passaggi

Video: MicroPython su SPIKE Prime: 12 passaggi

Video: MicroPython su SPIKE Prime: 12 passaggi
Video: Programmare il Lego Mindstorms EV3 in Python 2024, Novembre
Anonim
MicroPython su SPIKE Prime
MicroPython su SPIKE Prime

Puoi codificare SPIKE Prime usando MicroPython che è un sottoinsieme di Python per piccoli microprocessori.

Puoi usare qualsiasi emulatore di terminale per codificare l'hub SPIKE Prime.

Forniture

SPIKE Prime hub

Computer con porta USB / bluetooth

Cavo USB per collegare l'hub al computer

Passaggio 1: prendi un emulatore di terminale

Prendi un emulatore di terminale
Prendi un emulatore di terminale
Prendi un emulatore di terminale
Prendi un emulatore di terminale

Ci sono molte opzioni tra cui scegliere.

CoolTerm funziona su tutte le piattaforme, incluso Pi

Putty funziona su Windows

comando dello schermo in Terminale su un sistema operativo unix

Passaggio 2: collega SPIKE Prime alla porta USB

Collega SPIKE Prime alla porta USB
Collega SPIKE Prime alla porta USB
Collega SPIKE Prime alla porta USB
Collega SPIKE Prime alla porta USB

Usa un cavo microUSB per collegare SPIKE Prime al computer.

Passaggio 3: trova la porta

Trova il porto
Trova il porto
Trova il porto
Trova il porto

Dobbiamo sapere a quale porta seriale è connesso l'hub SPIKE Prime.

Su mac, digita

ls /dev/tty.usbmodem*

Su un PC, guarda in Gestione dispositivi sotto Seriale per vedere quali porte seriali hai collegato

Su pi, sarà qualcosa come ttyAMC0 - controlla nella tua /dev/cartella

Passaggio 4: connettiti

Connettiti
Connettiti
Connettiti
Connettiti

Collegati alla porta giusta (dal passaggio precedente) a 115200 baud

In Terminale, digita

schermata $ computer utente /dev/ 115200

In altri IDE, premi Apri/connetti (dopo aver impostato le porte e i baudrate)

Nota: nessuna parità, 8 bit di dati e 1 bit di stop

Passaggio 5: avvio del REPL

Avviare il REPL
Avviare il REPL
Avviare il REPL
Avviare il REPL
Avviare il REPL
Avviare il REPL

Quando ti connetti a SPIKE Prime dal terminale/PUTTY vedrai un flusso di numeri e caratteri. Questi sono i dati dei sensori interni dell'hub SPIKE Prime. Per iniziare premi control + c

Interromperà la porta seriale e dovresti vedere qualcosa di simile.

MicroPython v1.9.4-1146-gca9944357 il 2019-09-25; Hub grande LEGO Technic con STM32F413xx Digita "help()" per ulteriori informazioni.

Ora sei pronto per codificare.

Passaggio 6: il tuo primo codice

Il tuo primo codice
Il tuo primo codice

hub di importazione

hub.display.show('Ciuffi')

Nota il comando "import" - che inserisce una libreria Python che ti consente di parlare con SPIKE Prime. Dovresti vedere i ciuffi scritti sulla matrice LED sull'hub.

Passaggio 7: mostra il tuo nome

ora prova a digitare

hub.display.show(' ')

nota che poiché hai già importato l'hub sopra, è già in memoria. In caso contrario, otterresti un errore del tipo:

Traceback (ultima chiamata più recente):File "", riga 1, inNameError: il nome 'hub' non è definito

Passaggio 8: utilizzo di REPL

Uno degli attributi più potenti di Python è che puoi testare qualsiasi cosa prima di scrivere codice nel REPL (read eval print loop).

Eseguirà qualsiasi comando Python: prova a digitare 2 + 2 di seguito e guarda cosa dice:

2+2

Passaggio 9: esplorazione di MicroPython su SPIKE Prime

Ora è il momento di esplorare.

hub ha molte funzioni: puoi scoprirlo semplicemente digitando "hub". (non dimenticare il punto dopo l'hub) e poi premendo il tasto TAB nel REPL. Questo ti mostrerà tutti i diversi modi in cui puoi completare il comando.

Sfida: vedi se riesci a leggere l'accelerazione.

Passaggio 10: lettura dei valori del sensore…1

I dati di accelerazione ritornano come un array di valori. quindi se vuoi solo il valore X, puoi provare

hub.motion.accelerometer()[0]

o un modo più carino per codificare questo sarebbe usare variabili come questa:

hub di importazione

accel = hub.motion.accelerometer() xAccel = accel[0] hub.display.show(str(xAccel))

Passaggio 11: lettura dei valori del sensore…2

Lettura dei valori del sensore…2
Lettura dei valori del sensore…2

Puoi anche visualizzare tutte e tre le accelerazioni usando un ciclo.

Importeremo anche la libreria utime in modo da poter mettere in pausa e darti il tempo di leggere il numero sullo schermo.

Prova questo codice:

import hub, utimeaccel = hub.motion.accelerometer() per Acc in accel: hub.display.show(str(Acc)) utime.sleep(0.8)

A questo punto alcune cose diventano importanti:

spazi - Python riguarda il rientro corretto - simile alle parentesi in altre lingue, il rientro ti dice cosa c'è dentro il ciclo for e cosa no.

quando si utilizza REPL, si noterà che quando si indenta, non esegue più la riga ma attende che tu finisca le righe per il ciclo for prima dell'esecuzione (e il >>> viene sostituito da …). Per terminare il ciclo for, premi semplicemente Invio tre volte e il ciclo verrà eseguito.

Passaggio 12: sfida

Quindi, vedi se riesci a capire cosa fa il codice qui sotto e prova a eseguirlo per vedere se hai ragione.

hub di importazione, utime

while True: accel = hub.motion.accelerometer() for Acc in accel: hub.display.show(str(Acc)) utime.sleep(0.8) if hub.port. B.device.get(): break

Suggerimento: è necessario un sensore sulla porta B.

Consigliato: