Mini VFD

From Nottinghack Wiki
Revision as of 00:54, 12 June 2014 by Fowkc (talk | contribs) (Fowkc moved page Mini VFD to Project:Mini VFD)
Jump to navigation Jump to search

A small Vacuum Flourescent Display I recovered from the skip at work.

It is housed in a project box with a mains transformer - it use to have a mystery 9-pin serial port input but it wouldn't work until we worked out that it was expecting a 5V TTL serial signal.

The Futaba Corp M202SD08G module is a 20 character x 2 line, 5x8 dot matrix display. It has a European font with characters in the range from 0x20 (space) through the ASCII range and up to 0xFF with a bunch of Greek and Cyrillic characters.

I've put a Xino into the box and I'm working on something amusing for it to do in the hackspace.

The module has a single 20 pin connector (2x10 0.1" pins) of which we only need connection for +5V, GND, serial data in and a busy line out. The module asserts the busy line when it is working but it is enough to just make short delays in your code!

I have a simple Arduino sketch that just shows each character. It uses NewSoftSerial on pins 2 and 3 as well as regular serial on pins 0 and 1 (on old Arduino0022) just for testing to see if NewSoftSerial is any good.

 1 #include <NewSoftSerial.h>
 2 #include <icrmacros.h>
 3 
 4 NewSoftSerial mySerial(2, 3);
 5 void setup() 
 6 { 
 7   Serial.begin(9600);
 8   mySerial.begin(9600);
 9 } 
10 
11 int b = 0x20; 
12 
13 void loop() 
14 { 
15   Serial.print(b, BYTE);
16   mySerial.print(b, BYTE);
17   delay(100);
18   b++;
19   if(b == 0xff){
20     b = 0x20; // the first char in the VFD table
21     delay(1000);
22   }
23  
24 }

The mains transformer in the box is this LASCAR PSU 201 Fixed Voltage Single Rail Power Supply...

Although the unit is useful as a plain serial-driven ASCII display there are some interesting capabilities alluded to in the various datasheets. The VFD character table includes some programmable characters. I'd like to have a go at this! There are control sequences to shift the screen and create a scrolling effect.