Thermometer with DS1820 + ATtiny15

ATtiny15 DS1820

This is my very first construction with the cheap Atmel's ATtiny15 and the DS1820 thermometer. The main goal was the BIG display from the 7-segment LED modules. (And cheap + simple construction, of course...)

My thermometer is really simple, but efficient. It contains from three parts: A display , an outdoor thermosensor and a main board. Construction is as simple as it can be - the AVR reads the temperature from the 1-Wire thermometer and sends necessary data to the display.

The display is made from two dual 7-segment LED displays. I made simple 1-sided PCB with these LEDs and one 40-pins header, regardless "logic", just simple wired. This display board is connected with the main board by the cheap and common 40 wired flat ribbon cable, used in the PCs to connect an ATA (IDE) disk to a motherboard. My display boards looks like this:

Display board

Display board - bottom side

Main thermometer board

Main thermometer board - bottom

Never mind the segment order. I can adjust it programmatically in the ATtiny firmware. Simple, simple and once more - simple!

The display is driven by four chained 74LS595 (latched SIPO register). ATtiny sends 4 x 8 bits for the segments to the '595 chain and then sends one pulse to copy data from internal register to output latches.

Both boards are as simple as they could be - single-sided, with only few wired joints. Firmware is also simple and straightforward.

The sensing part is not displayed - I prepare it on the spare piece of cuprextit, isolated by a bunch of PET... :) I have placed it behind the window and connect by 3-wire cable (around 2ft long).

You can take it as an inspiration for your own experiment, not as the exact construction manual...

You can download the schematics and boards in PNG and Eagle formats as well as the firmware for ATtiny 15.

EAGLE documentation and source code: thermometer.zip

uelectronics.info

You may have to register before you can post comments and get full access to forum.
EMS supplier