O'Reilly logo

Programming with MicroPython by Nicholas H. Tollervey

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 7. Visual Feedback

One of the most deeply rewarding aspects of programming is making the computer appear to do something; be it blinking an LED, printing “Hello, World!”, displaying a picture, or creating an animation, there’s something satisfying in making such output visible to the world.

Blinkenlights

Blinkenlights1 are the embedded world’s version of "Hello, World!". If it’s possible to make an onboard LED blink on and off, then you have probably got everything set up correctly (as demonstrated in the earlier chapters of this book).

This activity might at first appear boring, since an LED’s purpose is either to be decorative or indicative of state. Crucially, familiarity with such an innocuous component provides an interesting route into MicroPython’s modus operandi. It demonstrates how MicroPython is both similar and very different to “normal” Python. This journey of discovery starts with the LED itself.

Light emitting diodes (LEDs) come in many colours and all work in the same way. From the perspective of physics, an electrical current of a suitable voltage is applied causing the occurrence of electroluminescence. In the case of an LED, a semiconductor material emits light in response to the electrical current. The colour of light is determined by the energy of the released photons. This, in turn, is determined by properties of the electroluminsecent semiconductor. Different semiconductor materials have different properties and thus produce different colours. The ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required