VFD Schematics & code witchcraft

I have yet published basic schematics and code for display project. VFD controllerAtmega 16 work as display controller. It will read data from uart serial port, place it to text buffer and simultaneously  multiplex display trough segment voltage buffers and huge digit shift register. ASCII text is converted to segment data and font can be created with computer program.fontMy friend made quick program, which converts png font file to C array cleverly taking one pixel from segment and determining if color value is bright green. Writing font otherwise would have been boring and unintuitive. Small letters look bit weird, as this is only 14 segment display. 16 segment display with binomial top&bottom segments would be better. I may just use upper case letters but for compatibly I made all of them. I will also implement some ASCII control charters to clear screen, move cursor and to make audible bell and turn on/off led. I have incomplete code for multiplexing and font generation. UART communication is not working at all, an I can’t figure why I can’t get other than broken charters. I have tried with different baudrates, tried to calculate UBRR0 manually, changed clock crystals to specific uart ones, and still can’t get it work. Either my AVR or serial -> bluetooth adapter or FTDI usb cable are broken or something. Anyway work-in-progress code here:

 I could also share the font generator made by hauvakukka. I made also quick draft for board layout,VFD boardand it seems I need to make 2 boards because I can only get 160mm x 100mm perfboards, and it will be just long enough to fit all VFD pins, but space left over that is only couple holes. Also I must use flat cable to fit all connections between display and driver IC, board cant handle all of then even without AVR and other wires. Also powersupply is still open, I can easily get 5V but 45V and AC for filament is small problem I need to get over with. I tested display with variable power supply, but 26 V were barely enough to lit segments.IMG_1251

02.09.13 15:10 Edit :

I found out that my #define F_CPU had one zero missing, and that meant 1.6Mhz frequency when hardware were actually runing 16Mhz, no wonder why serial communication did not want work. I must test it again and report if it is now working.

You should put your comment here!