Taula de continguts:

MicroPython a SPIKE Prime: 12 passos
MicroPython a SPIKE Prime: 12 passos

Vídeo: MicroPython a SPIKE Prime: 12 passos

Vídeo: MicroPython a SPIKE Prime: 12 passos
Vídeo: Running micropython on the Lego Spike Prime hub 2024, Desembre
Anonim
MicroPython a SPIKE Prime
MicroPython a SPIKE Prime

Podeu codificar SPIKE Prime mitjançant MicroPython, que és un subconjunt de python per a microprocessadors petits.

Podeu utilitzar qualsevol emulador de terminal per codificar el concentrador SPIKE Prime.

Subministraments

Hub SPIKE Prime

Ordinador amb port USB / bluetooth

Cable USB per connectar el concentrador a l'ordinador

Pas 1: agafeu un emulador de terminal

Agafa un emulador de terminal
Agafa un emulador de terminal
Agafa un emulador de terminal
Agafa un emulador de terminal

Hi ha moltes opcions per triar.

CoolTerm funciona a totes les plataformes, inclòs el Pi

La massilla funciona a les finestres

comanda de pantalla a Terminal en un sistema operatiu unix

Pas 2: connecteu SPIKE Prime al port USB

Connecteu SPIKE Prime al port USB
Connecteu SPIKE Prime al port USB
Connecteu SPIKE Prime al port USB
Connecteu SPIKE Prime al port USB

Utilitzeu un cable microUSB per connectar l’SPIKE Prime a l’ordinador.

Pas 3: cerqueu el port

Troba el Port
Troba el Port
Troba el Port
Troba el Port

Hem de saber a quin port sèrie està connectat el hub SPIKE Prime.

Al Mac, escriviu

ls /dev/tty.usbmodem*

En un ordinador, mireu al gestor de dispositius sota sèrie per veure quins ports sèrie heu connectat

A pi, serà una cosa així com ttyAMC0: comproveu la vostra carpeta / dev /

Pas 4: Connecteu-vos

Connecteu-vos
Connecteu-vos
Connecteu-vos
Connecteu-vos

Connecteu-vos al port correcte (del pas anterior) a 115200 baud

A Terminal, escriviu

usercomputer $ screen / dev / 115200

En altres IDE, prem Obre / connecta (després de configurar els ports i els baudrates)

Nota: no hi ha paritat, 8 bits de dades i 1 bit d’aturada

Pas 5: Inici del REPL

Inici del REPL
Inici del REPL
Inici del REPL
Inici del REPL
Inici del REPL
Inici del REPL

Quan us connecteu a SPIKE Prime des del terminal / PUTTY, veureu un flux de números i caràcters. Són dades de sensors interns del hub SPIKE Prime. Per començar premeu control + c

Interromprà el port sèrie i hauríeu de veure alguna cosa així.

MicroPython v1.9.4-1146-gca9944357 el 25-09-2019; LEGO Technic Large Hub amb STM32F413xx Escriviu "help ()" per obtenir més informació.

Ara ja esteu a punt per codificar.

Pas 6: el vostre primer codi

El vostre primer codi
El vostre primer codi

hub d’importació

hub.display.show ("Tufts")

Fixeu-vos en l'ordre "importar", que inclou una biblioteca python que us permet parlar amb SPIKE Prime. Hauríeu de veure Tufts escrits a la matriu de LED del concentrador.

Pas 7: mostreu el vostre nom

ara intenteu escriure

hub.display.show ('')

tingueu en compte que, ja que ja heu importat el centre anterior, ja està a la memòria. Si no fos així, obtindríeu un error com:

Traceback (última trucada més recent): fitxer "", línia 1, inNameError: el nom 'hub' no està definit

Pas 8: utilitzar REPL

Un dels atributs més potents de Python és que podeu provar qualsevol cosa abans d’escriure codi al REPL (llegir el bucle d’impressió eval).

Executarà qualsevol ordre Python: proveu d'escriure 2 + 2 a continuació i veureu el que diu:

2+2

Pas 9: explorar MicroPython a SPIKE Prime

Ara toca explorar.

hub té moltes funcions: podeu esbrinar-ho només escrivint "hub". (no oblideu el període posterior al concentrador) i després premeu la tecla TAB al REPL. Això us mostrarà totes les maneres de completar l'ordre.

Desafiament: vegeu si podeu llegir l’acceleració.

Pas 10: llegir els valors del sensor … 1

Les dades d’acceleració es tornen a mostrar com un conjunt de valors. per tant, si només voleu el valor X, podeu provar-ho

hub.motion.accelerometer () [0]

o una manera més agradable de codificar això seria utilitzar variables com aquesta:

hub d’importació

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

Pas 11: llegir els valors del sensor … 2

Lectura de valors del sensor … 2
Lectura de valors del sensor … 2

També podeu mostrar les tres acceleracions mitjançant un bucle.

També importarem l’utime de la biblioteca perquè puguem fer una pausa i donar-vos temps per llegir el número a la pantalla.

Proveu aquest codi:

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

En aquest punt, algunes coses esdevenen importants:

espais - Python es tracta de sagnar a la dreta: similar als claudàtors en altres idiomes, la sagnia us indica què hi ha dins del bucle for i què no.

en utilitzar el REPL, notareu que quan sagneu, ja no executa la línia, sinó que espera que acabeu les línies del bucle for abans d'executar-la (i el >>> es substitueix per …). Per acabar el bucle for, només cal que premeu retorn tres vegades i s'executarà el bucle.

Pas 12: repte

A continuació, consulteu si podeu esbrinar què fa el codi següent i proveu d'executar-lo per veure si teniu raó.

hub d’importació, utime

mentre que True: accel = hub.motion.accelerometer () per Acc in accel: hub.display.show (str (Acc)) utime.sleep (0.8) si hub.port. B.device.get (): break

Consell: necessiteu un sensor al port B.

Recomanat: