Imágenes estáticas y animadas

Imágenes estáticas 
 Sin tocar el código anterior, vamos ahora a  Display y arrastramos el código de sonrisa 
 
 Vamos a tocar el código para que quede de esta forma, de esta manera practicamos la edición de código 
 
 # Imports go at the top
from microbit import *

# Code in a 'while True:' loop repeats forever
while True:
 display.show(Image.SMILE)
 sleep(1000)
 display.scroll('Hola mundo') 
 
 La sonrisa se ve un segundo = 1.000 mseg y luego ejecuta el scroll 
 ¿¿ Qué esperas para experimentar otras imágenes ? 
 Imágenes animadas 
 Podemos poner las imágenes prediseñadas en la variable  Image pero también podemos crearlas fácilmente. En el siguiente programa se define qué led de la matriz 5x5 se enciende a la máxima intensidad (0-9) 
 Avanzando en la programación, se definen 5 variables catedux tipo imagen, y se define una variable all_catedus que es tipo array que contienen todas. 
 from microbit import *

catedu1 = Image("00900:"
 "09000:"
 "90000:"
 "09000:"
 "00900")

catedu2 = Image("09000:"
 "90000:"
 "09000:"
 "00900:"
 "00090")

catedu3 = Image("90000:"
 "09000:"
 "00900:"
 "00090:"
 "00009")

catedu4 = Image("00009:"
 "00090:"
 "00900:"
 "09000:"
 "90000")

catedu5 = Image("00090:"
 "00900:"
 "09000:"
 "90000:"
 "09000")

all_catedus = [catedu1,catedu2,catedu3,catedu2,catedu1,catedu5,catedu4]
while(True):
 display.show(all_catedus, delay=200)
 
 
 O jugar con las intensidades: En este juego de  luces del coche fantástico se utiliza la intensidad media 5 : 
 Este ejemplo de regular la intensidad del led es imposible de realizar en programación por bloques. 
 from microbit import *

catedu1 = Image("00005:"
 "00000:"
 "00000:"
 "00000:"
 "00000")

catedu2 = Image("00009:"
 "00050:"
 "00000:"
 "00000:"
 "00000")

catedu3 = Image("00005:"
 "00090:"
 "00500:"
 "00000:"
 "00000")

catedu4 = Image("00000:"
 "00050:"
 "00900:"
 "05000:"
 "00000")

catedu5 = Image("00000:"
 "00000:"
 "00500:"
 "09000:"
 "50000")

catedu6 = Image("00000:"
 "00000:"
 "00000:"
 "05000:"
 "90000")

catedu7 = Image("00000:"
 "00000:"
 "00000:"
 "00000:"
 "50000")

all_catedus = [catedu1,catedu2,catedu3,catedu4,catedu5,catedu6,catedu7,catedu6,catedu5,catedu4,catedu3,catedu2]
while(True):
 display.show(all_catedus, delay=100)
 
 ¿No sabes lo que es el coche fantástico? eso es que no tienes la edad adecuada para la robótica 😁 
 
 También podemos hacerlo pixel a pixel y no utilizar variables tipo array 
 from microbit import *

display.clear()
while(True):
 for n in range(0, 5): 
 display.set_pixel(n, 3, 9)
 if (n<4):
 display.set_pixel(n+1, 3, 5)
 if (1<n):
 display.set_pixel(n-1, 3, 5)
 if (1<n):
 display.set_pixel(n-2, 3, 0) 
 sleep(200)
 for n in reversed(range(0, 5)): 
 display.set_pixel(n, 3, 9)
 if (n<4):
 display.set_pixel(n+1, 3, 5)
 if (1<n):
 display.set_pixel(n-1, 3, 5)
 if (n<3):
 display.set_pixel(n+2, 3, 0) 
 sleep(200)