MicroPython Txting Extension for micro:bit

The Micro:bit Foundation was contacted a while back by Will, a 13-year-old student, who had created a txting extension for the micro:bit in MicroPython. בהודעה שלו הוא כתב: " אני אוהב להשתמש ב-פיתון עם ה-מיקרוביט שלי, ויצרתי תוכנה לשליחת הודעות ב-מיקרופיתון". אנחנו כמובן שמחנו מאוד. The person who received Will's message wrote to the rest of the team: "A 13-year-old has written a lovely little communicator using Python and two micro:bits - something to consider for the website for an article perhaps?" There was, of course, no argument, so, eventually, here is Will's Micro:bit Txting Program.


לחץ על פינים 0 ו-1 ביחד למעבר בין האותיות, לחץ על כפתור A להוספת אות להודעה ולחץ על כפתור B לשליחת ההודעה. התוכנה דורשת רק שני Micro:bit ששניהם יכולים לשלוח ולקבל הודעות דרך ה-MicroPython's radio module. מעבר לכך, ניתן להשתמש ביותר משני micro:bit, העבר את התוכנה למספר רב micro:bit וכולם יוכלו לשלוח ולקבל הודעות. הקוד ב-Python

ליצירת קובץ .hex, הורד את אחד מקבצי ה- Python, גרור את הקובץ לתוך microbit.org עורך ה-Python ב- והורד את קובץ ה-.hex.

הקוד ב-Miro: Python עם הערות

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

sending = 1

def Phone():

    #initialise radio
    while True:

        msg = str(radio.receive())

        global sending

        if sending >= 2:
            sending = 0

        #select page
        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]
            sentence = []

            while True:

                msg = str(radio.receive())

                #prevents errors
                if message >= int(len(messages)):
                    message = int(len(messages))

                #scrolls message when received
                if msg != 'None':

                #scrolls through characters
                if microbit.pin0.is_touched():
                    message = message - 1
                    tosend = messages[message]
                    display.show(tosend, delay=200)

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

                #adds character to list
                if microbit.button_a.is_pressed():
                    tosend = messages[message]
                    display.scroll(tosend, delay=50)

                #sends list as string
                if sending == 1 and microbit.button_b.is_pressed():
                    sentence = []


Selecting this opens external content from our support system, which adheres to their privacy policy.