You may recall a previous post regarding organic light emitting diode (OLED) technology. At the end of said post, you were promised a follow up about the two Pmod displays, the Pmod OLED and the Pmod OLEDrgb, which feature that technology.
First up, the Pmod OLED.
The Pmod OLED is Digilent’s most affordable display Pmod. It features a monochrome 128×32 pixel display and measures in at about 2cm long (or tall) and just over 5.5cm wide. The low price and small board size make it pretty ideal if you want to add some text output functionality to a project. But how exactly does it work?
The Pmod OLED utilizes a display controller chip which uses a serial peripheral interface (SPI) communication protocol to communicate. In order for this Pmod to function properly a specific power-on sequence must be used, as well as a power-off sequence once the display is turned off. Both of these can be found in the reference manual. Once the display has been powered on, you actually have a number of options for configuring how the screen displays data.
Above are three images showing some of the different outputs that can be achieved by changing how the display controller is configured. In order from top to bottom, you can see the standard orientation of the display, followed by a flipped orientation where the display is readable upside down, and finally an inverted display in which the color and column data for each pixel is inverted.
In the screen shot of code above you can see the primary bits of code related to how the display controller writes data to the screen. What is shown is the standard configuration found in the OLED Driver code written for the Pmod (and available in the demo), but if you wanted to flip the display around (as in the second image shown earlier) you would replace ‘0xA1’ with ‘0xA0’, ‘0xC8’ with ‘0xC0’, and ‘0x20’ with ‘0x00’ on lines 67, 68, and 407 respectively. More detailed information about changing configuration settings can be found in the display controller’s documentation, but there are definitely a few nifty things you can do with the display by changing how it is configured.
The Pmod OLEDrgb is another low cost display option that can add graphical display functionality to your project. Like the Pmod OLED it is a very configurable display, however it is also capable of 16-bit color resolution.
The Pmod OLEDrgb and Pmod OLED configuration processes are very similar as they are driven by very similar display controllers (SSD1331 and SSD 1306, respectively). However the Pmod OLEDrgb operates with configurable registers for each color, making it a bit more complex if you were to play with the configurations yourself. Digilent provides a library for the Pmod OLEDrgb (also provided in example code) that allows you to jump in and use it to draw images yourself or display images.. Another recent blog post covers some basic usage of the Pmod OLEDrgb, so you can follow along and get a feel for how you can create designs of your own. Both the Pmod OLED and Pmod OLEDrgb offer a library framework for you to delve into to customize their functionality to suit your needs.
How do you use displays to add functionality to your projects?