Monday, April 13, 2009

AVR Project Posted: Dual Hexadecimal Display Driver

I've posted another AVR project at AVR Freaks and on my website. It's a simple project, but a useful one. It's a dual hexadecimal display driver. See it on my AVR page or at AVR Freaks It uses an AVR ATMega8 microcontroller to convert a byte of data into an LED display pattern for two displays, each one showing one digit of the hexadecimal number that represents the data byte.

The display driver in action. This isn't part of a Christmas Carol, or The Sound of Music. It's the number 250 in hexadecimal (base 16.)

It's set up to let you use either 7 segment LEDs, which are common and cheap but don't do a good job at showing an attractive letter 'B' or 'D', or 10 segment LEDs which show much nicer B's and D's. You can also use 15 segment LED displays as 10 segment displays, as I do.

The value 189 in hexadecimal as "BD". This is the 7-segment character set. Seven segment displays are cheap and plentiful. But, ick.

Here is 187 in hex using the 10-segment character set. Much nicer!

Check it out, burn a chip, build a clock that'll confuse the guests, or put a data bus monitor on your Commodore-64. C'mon, you know you've always wanted to. ;)

Note: AVR Freaks has had to shut down the posting of project files for security reasons, so the resources at my AVR page are more complete, including an applications note for the project that shows how to use it in different circuits, with different display types.