Book Image

BBC Micro:bit in Practice

By : Ashwin Pajankar, Abhishek Sharma, Sandeep Saini
Book Image

BBC Micro:bit in Practice

By: Ashwin Pajankar, Abhishek Sharma, Sandeep Saini

Overview of this book

This book is a one-stop guide for learning BBC Micro:bit with MicroPython, exploring many hardware components and programming techniques to provide detailed insights into developing practical applications with the Micro:bit. It will also show you how hardware components can be manipulated using a combination of Micro:bit and MicroPython for developing practical projects. BBC Micro:bit in Practice will help you gain a holistic understanding of the BBC Micro:bit platform and MicroPython programming, guiding you through mini projects aimed at developing practical knowledge of circuit design and writing programs. You’ll learn how to write programs for working with built-in LEDs and buttons, interfacing external LEDs, buttons, motors, buzzers, and much more. You’ll also work with built-in radio, speakers, accelerometer, and a compass. You’ll dive into concepts related to the Micro:bit filesystem, interfacing external displays, and working with libraries in detail before exploring sewable circuits and wearable technology. After reading this Micro:bit book, you’ll understand how to apply principles in electronics and MicroPython to create interesting real-life projects from scratch.
Table of Contents (22 chapters)
1
Part 1: Getting Started with the BBC Micro:bit
6
Part 2: Programming Hardware with MicroPython
10
Part 3: Filesystems and Programming Analog I/O
13
Part 4: Advanced Hardware Interfacing and Applications

A wired network with GPIO pins

We can use the GPIO pins of the Micro:bit to create very primitive networks that exchange data in binary format. We know that the HIGH signal (which corresponds to 1) and LOW signal (which corresponds to 0) represent binary data. We will use the built-in write_digital() method to exchange 1s and 0s between devices. Let’s use two Micro:bit devices to create a simple circuit to exchange binary data:

Figure 13.1 – Micro:bits connected together

Let’s write a simple program that sends 1 over pin 0 if the A button is pressed and sends 0 otherwise. Similarly, we will read pin 1; if a device reads 1, then it will show a heart symbol and a smiley face otherwise. Here, pin 0 acts as a transmitter, and pin 1 acts as a receiver for both devices.

Upload this program to both devices and test it by pressing the A buttons on both devices:

from microbit import *
try:
    while True:
  &...