Skip to content

Latest commit

 

History

History

Ch08_Externals

Chapter 8: Putting Together a System

This is a companion repository for Making Embedded Systems, 2nd Ed. by Elecia White.

Following Along in the Book

Matrices and Charlieplexing:

Displays

ST Microelectronics AN1447 Application Note for a Software Driver for 4-Multiplexed LCD with a standard ST62 controller retrieved from ST.

Working out all the pieces to make a display work is tough. Adafruit is an excellent resource for this. Their Adafruit GFX documentation explains how to draw on the screen, display bitmaps, using bitmapped fonts that are compiled into the code, and adding new fonts. The library is targeted toward Arduino but the library is in C, well organized and encapsulated, and the license is permissive. See also the Adafruit GFX Library code on github. See also how to create new fonts (and symbol libraries)

(LVGL: Light and Versatile Embedded Graphics Library)[https://github.com/lvgl] is another graphics library for embedded systems.

Some advice on [Displaying text on embedded devices)[https://allthingsembedded.com/2018/09/02/displaying-text-on-embedded-devices/] - a blog post, gives a good overview of the fonts on embedded displays. This came up because of a question about anti-aliasing in fonts which makes them look nicer. It is a technique available when you have more than two colors to make the curves on the letters look smooth.

This Aliasing and Moire patterns post describes aliasing and how it looks in images.

LCD Font and image generation:

Getting fonts:

Flash Memory

Analog Signals

Aliasing is a really big thing but easier to understand in terms of simpler signals like audio where it isn’t two dimensional. (Though even Wikipedia presents it as a visual problem.) See chapter 3 of this excellent, free, and online book The Scientist and Engineer's Guide to Digital Signal Processing By Steven W. Smith, Ph.D.

It is often very handy to output data via serial and be able to see it as though it was on an oscilloscope: Serial Oscilloscope

Code For This Chapter

Final Note

If you like what's here, please consider buying the book: Making Embedded Systems, 2nd Ed. by Elecia White