PDA

View Full Version : 112 x 16 Serial Graphic VFD Display



kberck
01-08-2009, 01:52 AM
Hi all!
I am having troubles with the 112 x 16 Serial Graphic VFD Display, basically...with making it display O.o Didn't come with any documentation, and still haven't heard back from trying to get the full documentation package from their company.

After reading everything I could find on the forum, the only code I found was:

'' Parallax Serial VFD (Noritake GU112X16G-7003)Test
CON

_clkmode = xtal1 + pll16x ' use crystal x 16
_xinfreq = 5_000_000 ' 5 MHz cyrstal (sys clock = 80 MHz)

VFD_PIN = 2 ' serial VFD on P5
VFD_BAUD = 38400 ' minumum baud for display

OBJ
serial : "FullDuplexSerial"

PUB main
if serial.start(1, VFD_PIN, 0, VFD_BAUD)
serial.tx($1B) ' init display
serial.tx($40) ' init display
serial.str(string("Hello World!")) ' send "Hello World!"


Doesn't display anything. With lights out I can barely see glowing lines across the display. Voltage 5. Any help would be appreciated!

Ken

datac99
01-08-2009, 05:13 AM
Hey Ken,

The following worked for me... I got the init strings from the basic stamp examples that are posted with the display. The bit below is a pretty chunky way or making a scrolling sign, but it should get you going with some idea of how to use the thing.






'' Parallax Serial VFD (Noritake GU112X16G-7003)Test
''
''
''
''
''
CON

_clkmode = xtal1 + pll16x ' use crystal x 16
_xinfreq = 5_000_000 ' 5 MHz cyrstal (sys clock = 80 MHz)

VFD_PIN = 23 ' serial VFD on P5
VFD_BAUD = 38400 ' minumum baud for display

DAT

MyString byte " Iguanasara! ",0

OBJ

serial : "FullDuplexSerial"

PUB main | Index, Temp
if serial.start(-1, VFD_PIN, 0, VFD_BAUD)
serial.str(string($1B, $40)) ' init display
serial.str(string($1F, $03)) ' set horizontal scrol
serial.str(string($0C, $1F, $28, $67, $40, $02, $02)) ' set font magnification
repeat ' loop over string
Index := 0 ' then start again
repeat
Temp := MyString[Index++]
serial.tx(Temp) ' write single char
waitcnt(clkfreq / 5 + cnt) ' pause between letters
while Temp > 0
serial.tx($0C) ' clear the display

kberck
01-08-2009, 10:14 AM
Would you happen to have a schematic for all it's connections? Any special setup you had to do that I might have missed?

Thanks!

datac99
01-08-2009, 12:32 PM
Well, I ran that on the basic demo board... So VFD pin 1 (Right hand side if your holding the display looking at the pins) was to 5V (Top of the header row on the demo board or the second set of holes on the proto board) .

Pin ... right... I guess I was lyeing up there... No pin 23 on the demo board, but if you edit the source I posted and make
VFD_PIN = 23
VFD_PIN = 1
you can just hook in 1 on the demo/proto board up to pin 2 on the VFD (remember right to left with the pins facing you -- pin 6 on the outside of the VFD is the only one labeled on the header)

And lastly pin 3 on the VFD goes to any ground/VSS pin... The bottom 2 on the demo boards header....

The only odd thing I can recall was the simple serial did not seem to work when I was testing this out, even though 38400 should be well within it's ability I got random garbage characters... Might have had something to do with the bluetooth serial modules I was trying to use at the time... Might have been something about how I wrote my test code (I dropped out of CS after a year so I make no representations about being competent at any of this stuff)... But if you can't get it working I'm a day or two away from plugging this stuff back together for another test so let me know and I'll take take some pictures and test it again...


-PM