Help Identify Pin Names from Datasheet on Serial/Parallel LCD/VFD
Hey I have a VFD Display here that can use Parallel or Serial Connections, I have the data sheets but they dont name the pins the same as Industry standard.- D7
- D6
- D5
- D4
- D3
- D2
- D1
- D0
- /WR
- A0
- /CS
- T (0)
- Busy
- /BL
- Serial In
now I hooked up my D4-7, RS to #9, Grounded #10, E to #12.
I have scrolling random characters/symbols,
swapping #12 and #9 does not change anything, still scrolling.
removeing ground from #10 removes all scrolling stuff and flashes curser like a ghost image randomly on screen.
unplugging 9 or 12 stops scrolling but does not update screen
I am unsure of what some of these pins are. If someone can tell me what pins go to the E and RS, and anything that needs grounding... I might be able to test this display. I am not able to test the Serial in right now as I still have to learn serial out's first. But would like to use this as a test Display since it does either format.
Re: Help Identify Pin Names from Datasheet on Serial/Parallel LCD/VFD
Didnt think earlier, heres the datasheet link
FC16X2CA-AB
Re: Help Identify Pin Names from Datasheet on Serial/Parallel LCD/VFD
Why are you only using the top 4 bits ?, the data sheet says 8 bit, so you are only sending high bit data, if your low bits are not tied either hi or low, then they could well oscillate and give you random characters. If you look at the character table to send the letter A you need to send hex 41, this has high and low bits. The controller is totaly different to the LCD controllers, so you cannot use the LCDOUT commands. Your best bet is to try 5v serial.
Re: Help Identify Pin Names from Datasheet on Serial/Parallel LCD/VFD
I only use the upper 4 bits on a standard lcd, i figured there was no difference with this one.
Im supposed to use chart 2 for characters as my display is the AB version
Re: Help Identify Pin Names from Datasheet on Serial/Parallel LCD/VFD
The LCD micro is specially made to work with 4 or 8 bits, (read the data sheets), as you specify that when you define your LCD pins etc.The LCDout command if using 4 bit mode actually sends the 8 bits as 2 4bit nibbles.
Your current item will not understand - hence garbled etc.
Your new unit is NOT compatible with LCD commands, and no where does it mention 4 bit operation, as I said, get it working on serial, if you use the data bus you will have to have at least 10 ports to run it in that mode.
Re: Help Identify Pin Names from Datasheet on Serial/Parallel LCD/VFD
ok, ill try the serial, but ive never done serial anything yet, so ill have to start testing. any ideas on what command I need to use (serout, serout2,hser,etc...)
I know my baud is 9600, thats about it. oh and it requires a 9th parity bit (8N2).
Re: Help Identify Pin Names from Datasheet on Serial/Parallel LCD/VFD
Please read your data sheet - there is no mention of 9th parity bit - 8N2 means 8 data bits NO PARITY 2 Stop bits, the normal is 8N1, you just have to do a small pause between characters to give you a little extra time between characters, that will give you the extra stop bit.
There is information and samples in the PB manual for serial transmission. http://melabs.com/resources/pbpmanual/
Re: Help Identify Pin Names from Datasheet on Serial/Parallel LCD/VFD
OK I'm Lost...
Ive been reading the manual but I just dont understand, there are 3 commands for serial out (serout, serout2, hserout) now ive tryed about 15 combinations of same code and I cant get anything but a english pound sign and 2 arrows to show up, sometimes random characters/symbols appending the line about every second.
Here is some code I've tried useing.
Code:
Include "modedefs.bas"
'DEFINE CHAR_PACING 104
DEFINE SER2_BITS 9 'Set number of data bits
DEFINE SER2_ODD 1
PAUSE 500 ' Wait 0.5 second to initialize LCD
TRISB = 0
RPT:
SEROUT PORTB.0, T9600 ,["T9600" ]
pause 100
SEROUT PORTB.0, N9600 ,["N9600" ]
pause 100
SEROUT2 PORTB.0, 38400,["38400"]
pause 100
SEROUT2 PORTB.0, 84,["84"]
pause 100
GOTO RPT
END
I've mixed and matched it so many ways., if someone could tell em what Im doing wrong or what im doing right.
Ive read a few articles online but theres so many conflicting ideas about how to handle 8N2 serial out data.
Re: Help Identify Pin Names from Datasheet on Serial/Parallel LCD/VFD
DEFINE SER2_BITS 9 'Set number of data bits
DEFINE SER2_ODD 1
SEROUT assumes a 4MHz oscillator when generating its bit timing. To maintain the proper baud rate timing with other oscillator values, be sure to DEFINE the OSC setting to the new oscillator value.
remove the above defines - serout2 default is 8N1 , your 2nd stopbit is done in the character pacing, can be as long as you want or equivalent to a single bit time.
If you have the correct jumpers set for
9600 and have TTL selected J4 1, Baud Rate J1,J2,J3 low (GND)
Code:
DEFINE CHAR_PACING 1000 'us = wait 1 millisecond ' this artificially deals with the second stop bit, and can be lowered as necessary
PAUSE 2000 'give display chance to initialise
SEROUT2 PORTB.0,84,["HELLO "]
PAUSE 1000 ' pause to read first word on its own
SEROUT2 PORTB.0,84,["WORLD"]
END
Re: Help Identify Pin Names from Datasheet on Serial/Parallel LCD/VFD
OK aerostar.... it works. oopsy, I was running on internal osc and didnt do any defines. plugged up a 4mhz res. and your code, and bang! it worked.
hehehe, I was so messed up with code I forgot the hardware side of it. it works though, now I will have to play around with special characters and such that this can display. It has built in characters for battery levels and stuff, and its a really big VFD, I got it for $8 from a surplus sale, I should have bought more but I wanted to see it work first, now they ran out.. oh well at least I got this one. thanks for all your help and everyone else that put into this.