Tabla de contenido:

MicroPython en SPIKE Prime: 12 pasos
MicroPython en SPIKE Prime: 12 pasos

Video: MicroPython en SPIKE Prime: 12 pasos

Video: MicroPython en SPIKE Prime: 12 pasos
Video: Getting Started with MicroPython on SPIKE PRIME (old) 2024, Noviembre
Anonim
MicroPython en SPIKE Prime
MicroPython en SPIKE Prime

Puede codificar SPIKE Prime usando MicroPython, que es un subconjunto de Python para pequeños microprocesadores.

Puede usar cualquier emulador de terminal para codificar el concentrador SPIKE Prime.

Suministros

Buje SPIKE Prime

Computadora con puerto USB / bluetooth

Cable USB para conectar el hub a la computadora

Paso 1: toma un emulador de terminal

Coge un emulador de terminal
Coge un emulador de terminal
Coge un emulador de terminal
Coge un emulador de terminal

Hay muchas opciones para elegir.

CoolTerm funciona en todas las plataformas, incluida Pi

La masilla funciona en ventanas

comando de pantalla en Terminal en un sistema operativo Unix

Paso 2: Conecte SPIKE Prime al puerto USB

Conecte SPIKE Prime al puerto USB
Conecte SPIKE Prime al puerto USB
Conecte SPIKE Prime al puerto USB
Conecte SPIKE Prime al puerto USB

Utilice un cable microUSB para conectar el SPIKE Prime a la computadora.

Paso 3: busque el puerto

Encuentra el puerto
Encuentra el puerto
Encuentra el puerto
Encuentra el puerto

Necesitamos saber a qué puerto serie está conectado el concentrador SPIKE Prime.

En mac, escriba

ls /dev/tty.usbmodem*

En una PC, busque en el administrador de dispositivos en serie para ver qué puertos serie ha conectado

En pi, será algo como ttyAMC0 - verifique en su carpeta / dev /

Paso 4: Conéctese

Conectar hasta
Conectar hasta
Conectar hasta
Conectar hasta

Conéctese al puerto correcto (del paso anterior) a 115200 baudios

En Terminal, escriba

computadora de usuario $ screen / dev / 115200

En otro IDE, presione Abrir / conectar (después de configurar los puertos y las velocidades en baudios)

Nota: sin paridad, 8 bits de datos y 1 bit de parada

Paso 5: Iniciar REPL

Iniciar el REPL
Iniciar el REPL
Iniciar el REPL
Iniciar el REPL
Iniciar el REPL
Iniciar el REPL

Cuando te conectes a SPIKE Prime desde el terminal / PUTTY, verás un flujo de números y caracteres. Esos son datos de sensores internos del concentrador SPIKE Prime. Para comenzar, presione control + c

Interrumpirá el puerto serie y debería ver algo como esto.

MicroPython v1.9.4-1146-gca9944357 el 2019-09-25; LEGO Technic Large Hub con STM32F413xx Escriba "ayuda ()" para obtener más información.

Ahora está listo para codificar.

Paso 6: su primer código

Tu primer código
Tu primer código

centro de importación

hub.display.show ("Tufts")

Observe el comando "importar", que extrae una biblioteca de Python que le permite hablar con SPIKE Prime. Debería ver Tufts escrito en la matriz de LED en el concentrador.

Paso 7: muestra tu nombre

ahora intenta escribir

hub.display.show ('')

tenga en cuenta que dado que ya importó el hub anterior, ya está en la memoria. Si no fuera así, obtendría un error como:

Traceback (última llamada más reciente): archivo "", línea 1, inNameError: el nombre 'hub' no está definido

Paso 8: uso de REPL

Uno de los atributos más poderosos de Python es que puede probar cualquier cosa antes de escribir el código en el REPL (leer el bucle de impresión de evaluación).

Ejecutará cualquier comando de Python; intente escribir 2 + 2 a continuación y vea lo que dice:

2+2

Paso 9: Explorando MicroPython en SPIKE Prime

Ahora es el momento de explorar.

hub tiene muchas funciones; puede averiguarlo simplemente escribiendo "hub". (no olvide el período después del concentrador) y luego presione la tecla TAB en el REPL. Eso le mostrará todas las diferentes formas en que puede completar el comando.

Desafío: vea si puede leer la aceleración.

Paso 10: Lectura de los valores del sensor … 1

Los datos de aceleración regresan como una matriz de valores. así que si solo quieres el valor X, puedes probar

hub.motion.accelerometer () [0]

o una mejor forma de codificar esto sería usar variables como esta:

centro de importación

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

Paso 11: Lectura de los valores del sensor … 2

Lectura de valores de sensor … 2
Lectura de valores de sensor … 2

También puede mostrar las tres aceleraciones mediante un bucle.

También importaremos el tiempo de uso de la biblioteca para que podamos hacer una pausa y darle tiempo para leer el número en la pantalla.

Prueba este código:

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

En este punto, algunas cosas se vuelven importantes:

espacios: Python se trata de sangrar correctamente, similar a los corchetes en otros idiomas, la sangría le dice qué hay dentro del bucle for y qué no.

al usar REPL, notará que cuando aplica sangría, ya no ejecuta la línea, sino que espera a que termine las líneas para el bucle for antes de ejecutar (y el >>> se reemplaza por…). Para finalizar el ciclo for, simplemente presione return tres veces y el ciclo se ejecutará.

Paso 12: Desafío

A continuación, vea si puede averiguar qué hace el código a continuación e intente ejecutarlo para ver si tiene razón.

centro de importación, utime

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

Sugerencia: necesita un sensor en el puerto B.

Recomendado: