MicroPython Txto paquete micro:bit

La Fundación Micro:bit fue contactada hace un tiempo por Will, un estudiante de 13 años que ha creado un paquete de mensajería para el micro:bit en MicroPython. En su mensaje decía: "Me encanta usar Python con mi micro:bit y he creado un programa de envío de mensajes en MicroPython". Por supuesto, estábamos emocionados. La persona que recibió el mensaje de Will escribió al resto del equipo: "Un niño de 13 años ha escrito un encantador comunicador usando Python y dos micro:bits. ¿Algo a considerar para la página web, tal vez?". Por supuesto, no hubo discusión. Así que, finalmente, aquí esta el Programa de Txto de Will para micro:bit.

General:

Pulsa los botones 0 y 1 a la vez para buscar las letras, pulsa el botón A para añadir letras al mensaje y B para enviar el mensaje completo. El programa requiere solo 2 micro:bits y los dos pueden enviar y recibir mensajes mediante el módulo de radio de MicroPython. Sin embargo, más de 2 micro:bits se pueden usar. Simplemente flashea el mismo programa en múltiples micro:bits y todos podrán enviar y recibir. El código Python

Para crear el archivo .hex, descarga uno de los anteriores archivos con el código Python, arrastra el archivo al microbit.org Editor Python en y descarga el archivo .hex.

Código MicroPython con comentarios


from microbit import *
import radio
import random
import microbit
#preparar radio
radio.config(length=251, channel=53, power=4)

sending = 1

def Phone():

    #iniciar radio
    radio.on()
    while True:

        msg = str(radio.receive())

        global sending

        if sending >= 2:
            sending = 0


        #selectar pagina
        while sending == 1:

            message = 0
            messages = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '(', ')', '"', ':)', ':(']
            global tosend
            tosend = messages[message]
            sentance = []

            while True:

                msg = str(radio.receive())

                #prevenir errores
                if message >= int(len(messages)):
                    message = int(len(messages))

                #desplaza un mensaje cuando se recibe
                if msg != 'None':
                    display.scroll(msg)
                    display.show(tosend)

                #desplaza a través de letras
                if microbit.pin0.is_touched():
                    message = message - 1
                    tosend = messages[message]
                    display.show(tosend, delay=200)
                    sleep(200)

                if microbit.pin1.is_touched() and tosend != 9:
                    message = message + 1
                    tosend = messages[message]
                    display.show(tosend, delay=200)
                    sleep(200)

                #agrega una letra a la lista
                if microbit.button_a.is_pressed():
                    sentance.append(tosend)
                    tosend = messages[message]
                    display.scroll(tosend, delay=50)

                #envía la lista como una cadena
                if sending == 1 and microbit.button_b.is_pressed():
                    radio.send(''.join(sentance))
                   display.scroll(''.join(sentance))
                    sentance = []
                    break
            break
Phone()
 
Text
XPath: /pre/code

¡Diviértete con tu micro:bit!