Chapter 1. What Is MicroPython?
MicroPython is a reimplementation of the Python programming language that targets microcontrollers and embedded systems.
Microcontrollers are computers shrunk onto a single, very small chip. Embedded systems are computers that function within a larger mechanical or electrical system. Embedded systems often use microcontrollers.
This book introduces, explores, and explains MicroPython through four typical yet different devices,1 all of which have a microcontroller at their core.
Such devices are very different to other sorts of computer. Most computers contain lots of parts: memory, storage, and processing are physically separate components containing various specialist chips. They may also contain additional parts for sound, graphics, and networking capabilities. Such computers are significantly more powerful than the resource-constrained, microcontroller-based devices used in this book.
This raises two important questions:
- Why use such small, underpowered microcontroller-based devices?
- Why use Python?
Answering these questions illustrates why there is so much excitement surrounding MicroPython.
Why Micro?
Computers are amazing and seemingly magical things.
For example, it is commonplace to make video calls to the other side of the world. Yet, just 20 years ago, this was the realm of science fiction.
Any sufficiently advanced technology is indistinguishable from magic.
Arthur C. Clarke, Hazards of Prophecy: The Failure of Imagination
The quote ...