Almost every Arduino novice starts with a project similar to this one — a cheap TMP36 temperature sensor connected to Arduino Uno. The project is simple and quick to assemble so first results come instantly. A rewarding achievement for an Arduino enthusiast.
Almost instantly comes also a desire to show those digits representing room temperature on a nice bright display instead through the serial port of your computer.
Here’s the catch — in order to display temperature, you need two digits or two common 7-segment displays. Every 7-segment display needs a shift register such as 74HC595.
For a beginner in the Arduino world connecting two seven-segment displays through shift registers can be challenging. Experienced tinkers, on the other hand, would agree that driving two displays and two shift registers is pretty power consuming. This should be taken into account especially for battery powered projects.
As shown in the picture above, thanks to 14 resistors this solution looks more like a flying spaghetti monster. In our build we only use 1 seven segment display (common anode) and a 330Ω resistor. This is basically what we need:
- Arduino Uno or similar
- 7-segment LED display (common anode)
- 330Ω resistor
- 74HC595 shift register
- Breadboard, and
Continue to page 2 and download the code.