Quantcast
Viewing all articles
Browse latest Browse all 36

Retro LED Displays

I recently brought some of these rather nice Texas Instruments TIL311 hexadecimal displays from eBay, they are really small but beautiful.  This got me thinking, could I connect one of these displays to a micro:bit.  

Image may be NSFW.
Clik here to view.
TIL311 Displays















Looking at the TIL311 datasheet, I came across the first hurdle.  The TIL311 is a TTL device and needs 5v to work but the micro:bit runs at 3.3v so I needed a level shifter / buffer IC to interface between them, you could probably get away without a level shifter but I aired on the safe side. I chose the 74HCT244N but I used a 74HC244N as this is what I had in stock.


The TIL311 has a 4-bit data input A,B,C,D  which I connected to pins 0,1,2 & 8 on the micro:bit via a 74HCT244N and used separate 5v supply for the display.  To figure out how to display 0 to 9 I looked at the truth table for a 7490 decade counter and then replicated this in Python by turning the outputs on and off.


















Image may be NSFW.
Clik here to view.
The finished project






My rather noddy Python code, I'm sure there must be a neater way of doing this.


  1. from microbit import *
  2. pins = [pin0, pin1, pin2, pin8]
  3. while True:
  4.     0#
  5.     pin0.write_digital(0)
  6.     pin1.write_digital(0)
  7.     pin2.write_digital(0)
  8.     pin8.write_digital(0)
  9.     1#
  10.     pin0.write_digital(1)
  11.     pin1.write_digital(0)
  12.     pin2.write_digital(0)
  13.     pin8.write_digital(0)
  14.     sleep(500)
  15.     2#
  16.     pin0.write_digital(0)
  17.     pin1.write_digital(1)
  18.     pin2.write_digital(0)
  19.     pin8.write_digital(0)
  20.     sleep(500)
  21.     3#
  22.     pin0.write_digital(1)
  23.     pin1.write_digital(1)
  24.     pin2.write_digital(0)
  25.     pin8.write_digital(0)
  26.     sleep(500)
  27.     4#
  28.     pin0.write_digital(0)
  29.     pin1.write_digital(0)
  30.     pin2.write_digital(1)
  31.     pin8.write_digital(0)
  32.     sleep(500)
  33.     5#
  34.     pin0.write_digital(1)
  35.     pin1.write_digital(0)
  36.     pin2.write_digital(1)
  37.     pin8.write_digital(0)
  38.     sleep(500)
  39.     6#
  40.     pin0.write_digital(0)
  41.     pin1.write_digital(1)
  42.     pin2.write_digital(1)
  43.     pin8.write_digital(0)
  44.     sleep(500)
  45.     7#
  46.     pin0.write_digital(1)
  47.     pin1.write_digital(1)
  48.     pin2.write_digital(1)
  49.     pin8.write_digital(0)
  50.     sleep(500)
  51.     8#
  52.     pin0.write_digital(0)
  53.     pin1.write_digital(0)
  54.     pin2.write_digital(0)
  55.     pin8.write_digital(1)
  56.     sleep(500)
  57.     9#
  58.     pin0.write_digital(1)
  59.     pin1.write_digital(0)
  60.     pin2.write_digital(0)
  61.     pin8.write_digital(1)
  62.     sleep(500)

Viewing all articles
Browse latest Browse all 36

Trending Articles