W poprzednich częściach pokazałem zasadę działania oraz uruchamianie pozyskanych wyświetlaczy (modułów) VFD. Teraz przyszła pora na zbudowanie własnego sterownika wraz z potrzebnym zasilaczem.
• Zasilacz
Ze względu na dość złożony sposób zasilania samego wyświetlacza postanowiłem zacząć od budowy zasilacza (przetwornicy). W większości fabrycznych modułów wyświetlaczy (wyświetlacz+elektronika sterująca) stosowane są przetwornice zawierające specjalny transformator impulsowy.
Transformator przetwornicy wyświetlacza GU20x8-301 firmy Noritake Itron;
Oraz w module pochodzącym z dekodera NBOX;
Mimo widocznych niewielkich rozmiarów kłopotliwe mogłoby być ustalenie parametrów rdzenia i samo wykonanie transformatora choć dla np. NBOXa dane nawojowe są podane w instrukcji serwisowej;
Wstępny założenia były takie aby zbudować w miarę uniwersalną przetwornicę zapewniającą przy zasilaniu +5V napięcie wyjściowe w okolicy -30-33V oraz napięcie żarzenia 4-5V AC. Jako osoba niepełnosprawna miałbym osobiście duży problem z wykonaniem transformatora o tak małych wymiarach
, dlatego szukałem innego rozwiązania. Nasz forumowy kolega @simw naprowadził mnie na układ LM9022 który jest dedykowany do zapewnienia odpowiednich napięć i nie potrzebuje żadnej indukcyjności;
Układ jest co prawda wycofany z produkcji jednak udało się znaleźć "nowszą wersję" o nieco lepszych parametrach który jest dedykowany do całkiem odmiennych zastosowań (wzmacniacz audio). Tym układem jest LM4871 który jest kompatybilny "noga w nogę" do LM9022;
Analizując działanie LM9022 powstał wstępnie taki oto projekt przetwornicy wykorzystujący LM4871;
Układ wykorzystuje pracę LMa w trybie generatora zgodnie z notą aplikacyjną LM9022;
Powstał również zarys PCB;
Oraz sama płytka;
Która mimo pewnych niedoskonałości została obsadzona elementami i poddana testom;
Zworki JP1-JP6 miały służyć do ustawienia wymaganego prądu żarzenia dla wyświetlacza jednak na etapie uruchamiania zostały zmostkowane na stałe. Błędem było umieszczenie pod LM4871 zworki która w czasie uruchamiania przysporzyła trochę kłopotów. Układ ładnie wystartował dając na wyjściu spodziewane napięcia bez obciążenia (lewy -Vee a prawy to pobór prądu z zasilania (5V);
Oraz z obciążeniem żarnikiem wyświetlacza;
Próba zaświecenia testowego VFD przebiegła pomyślnie;
Częstotliwość pracy jednak mocno się wahała zależnie od obciążenia, poniżej bez niego;
Nie mniej ten sposób wytwarzania stosownych napięć spełnia swoją rolę i dlatego postanowiłem pójść o krok dalej i zbudować kompletny moduł z przetwornicą oraz sterownikiem/driverem wyświetlacza na pokładzie.
•Wybór strategii
Zasilacz już jest, to co dalej? Można "iść na piechotę" jak kolega @phanick zrobił tu; https://www.elektroda.pl/rtvforum/topic3249310.html budując bufory na tranzystorach i sterując mikrokontrolerem lub użyć dedykowanego drivera VFD. Wybrałem użycie dedykowanego drivera ze względu na łatwość aplikacji i minimalną ilość potrzebnych dodatkowych elementów. Z wielu dostępnych układów wybrałem PT6315 który wydał mi się najbardziej uniwersalny dla "domowych" zastosowań.
Sam PT6315 ma dość duże możliwości które oprócz sterowania wyświetlaczem dają możliwość podłączenia 32-przyciskowej klawiatury czy też dodatkowych diod LED. Mnie najbardziej zainteresowała możliwość dość szerokiej konfiguracji dla wyświetlacza;
Daje nam to możliwość obsługi wyświetlaczy od 4 znaków/24-ro segmentowych do 12-tu/ 16-to segmentowych zależnie od użytego wyświetlacza. Jedynym mankamentem jest brak generatora znaków ale ma to też swój plus jakim jest zupełnie dowolne sterowanie segmentami. Ponieważ LM4871 w konfiguracji gdzie pracuje jednocześnie jako generator miał tendencję do pływania częstotliwością zależnie od obciążenia postanowiłem zrobić pewien "myk" i użyć podzielonej częstotliwości zegara PT6315. Jako dzielnik użyłem układu seri CMOS 4040 (12-to bitowy licznik). Wstępny schemat jaki powstał prezentuje się następująco;
4040 miał dzielić sygnał zegara PT przez 64 aby uzyskać częstotliwość około 31kHz i wypełnieniu 50% sterując swym sygnałem LM4871. Po zbudowaniu prototypu modułu i pomiarach okazało się że częstotliwość jest o wiele za niska. Jakimś dziwnym trafem wbiło mi się do głowy że Fclk to 2MHz a tak nie jest. 2MHz to typowa Fclk dla PT6302, dla 6315 to około 500kHz;
Zatem musiała nastąpić zmiana podziału. Ze względu na dość ubogą notę katalogową PT6315 nie byłem pewny jak zareaguje jego generator na dołączenie z zewnątrz wejścia układu CMOS. Jednak okazało się że jest ok i nie zrywa drgań i po zmianie stopnia podziału na 16 (pin5) mamy na wyjściu ładne 31kHz o wypełnieniu 50%. Wymagało to drobnej zmiany w docelowym projekcie PCB. Poniżej wersja prototypowa;
Oraz wizualizacja 3D;
Ponieważ w zamyśle projekt miał być publicznie udostępniony to wymagał kilku kosmetycznych zmian (np. rozstaw pinów tak aby pasowały do płytki stykowej) tak aby dał się łatwo powielić. PCB po wytrawieniu;
Oraz wstępnie zmontowana (brakuje kondensatorów w sekcji -30V) z naniesioną poprawką dla stopnia podziału CD4040;
Prototyp został jednak przypadkowo zniszczony (nie do uratowania), a zamówione w "płytkarni" płytki gdzieś zaginęły w drodze do mnie. W międzyczasie przeglądając projekt płytki zauważyłem brak jednego połączenia w powielaczu napięcia wyjściowego -Vee. Błąd łatwy do naprawienia poprzez dodanie zworki z drutu. Poprawiłem również połączenie LM4871 z 4040 w celu uzyskania wyższej częstotliwości pracy.
"Wpadka" z zamówioną serią próbną płytek spowodowała że zamówiłem ponownie tym razem z dwóch firm, JLCPcb (tu z rozpędu wysłałem nie poprawione pliki) i PCBWay (poprawione pliki). Dla rozróżnienia płytki różnią się kolorem soldermaski i trochę warstwą opisową, po około tygodniu obie paczki dotarły
;
Po lewej JLCPcb a PCBWay po prawej, różnice w wykonaniu praktycznie niezauważalne choć niebieska soldermaska bardziej mi się podoba
.
około tygodnia później zmontowałem jedną z płytek (niebieską bo jest ich więcej
);
Jednak pozostała kwestia jak sensownie połączyć moduł sterownika z wyświetlaczem, tu pomocna okazała się płytka prototypowa około 160x100mm wyposażona tylko w pojedyńcze pady (punkty) lutownicze. Rozstaw otworów to typowe 2,54mm do których pasował układ wyprowadzeń wyświetlacza Samsung którego użyłem wcześniej do sprawdzenia działania przetwornicy. Wyświetlacz po wpasowaniu w otwory przykleiłem do płytki dwustronną taśmą samoprzylepną. Po "uzbrojeniu" płytki w złącza goldpin (żeńskie dla modułu sterownika i męskie do połączeń wyświetlacz- sterownik i sterownik MCU) prototyp był gotowy do testów;
I po włożeniu modułu w gniazda;
Początkowo chciałem obok modułu umieścić jeszcze Arduino NANO ale zrezygnowałem z tego pomysłu. Poniżej pierwsze połączenia oraz włączenie zasilania;
Coś się świeci czyli przetwornica działa
Przy próbach dostępu do rejestrów PT treść wyświetlana była całkowicie odmienna od zaplanowanej oraz pokazywały się "duchy" na VFD. Tu wyszedł mój pierwszy błąd, płytka którą użyłem jako podstawy do uruchomienia leżała już kilka lat na warsztacie i pokryła się patyną co uniemożliwiło lutowanie. Ponieważ akurat nie miałem na warsztacie żadnego materiału ściernego do przeszlifowania to użyłem dość agresywnego topnika RT-9, lutowało się super jednak po kilkudniowej przerwie okolice lutowanych padów pokryły się przewodzącym nalotem powodującym wspomniane "duchy". Cała płytka wraz z wyświetlaczem (oprócz modułu sterownika) trafiła do mycia pod bieżącą wodą z użyciem płynu do mycia naczyń a następnie została jeszcze spłukana izopropanolem.
Po ponownym połączeniu i dalszych próbach znów nie uzyskałem oczekiwanych rezultatów wyświetlania. Okazało się po zbadaniu oscyloskopem że PT nie dostaje sygnału STB (strobe, czyli zatrzask danych wejściowych), wynikało to z tego że w celach testowych przerabiałem driver dla PT6302 w Bascomie AVR i coś mi się ubzdurało że nie trzeba sterować sygnałem Strobe
. Po poprawkach było lepiej lecz jeszcze nie miałem kontroli nad PT. Wgrałem więc bootloader i dalsze prace kontynuowałem w Arduino IDE. Po jakimś czasie "walki" przy braku efektów postanowiłem wrócić do Bascom'a i tu zrobiłem błąd który kosztował mnie spalony PT6315 i LM4871. Wtyczkę programatora USBAsp wetknąłem odwrotnie do gniazda ICSP Arduino UNO. Po zauważeniu pomyłki (brak komunikacji z ATMegą 328P) i prawidłowym podłączeniu komputer po kilku sekundach wyłączał port USB. Było to spowodowane nadmiernym poborem prądu, znacznie przekraczającym typowe dla portu USB 500mA. Po podstawieniu drugiego Arduino i USBAsp'a to samo. Odłączyłem moduł sterownika od Arduino i wszystko się uspokoiło. Zatem podłączyłem sam moduł do zasilacza z ograniczeniem prądowym ustawionym na 100mA i stopniowo zwiększałem wartość ograniczenia. Po dojściu do około 500mA okazało się iż zarówno LM4871 jak i PT6315 bardzo mocno się grzeją wręcz parzą w palec. Na szczęście robiąc na początku roku zaopatrzenie kupiłem po kilka sztuk na zapas więc wymiana na nowe nie stanowiła problemu. Przy okazji wymieniłem również kondensatory w układzie powielacza z wcześniejszych elektrolitycznych 2,2µF/50V na MLCC 22µF/25V w obudowie 1210. Dlaczego? Dlatego że zależnie od ilości zapalonych segmentów mocno "przysiadało" napięcie Vee ( z -27V do nawet -13V). Dlaczego nie wstawiłem od razu właściwych kondensatorów? Odpowiedź jest prosta, w momencie składania sterownika nie miałem takich na stanie a poza tym jak każdy prototyp moduł mógł wymagać modyfikacji w trakcie uruchamiania.
Ponowne podłączenie i jest sukces
Mam pełny dostęp do PT jednak wyświetla głupoty, i tu dopiero przy użyciu solidnej lupy okazało się że sama płytka prototypowa ma dużo niedotrawień powodujących zwarcia (u mnie wyszło zwartych razem kilka siatek oraz segmentów). Znów trzeba było zdemontować wszystko i skrobać płytkę
Moja cierpliwość została jednak wynagrodzona, gdyż po ponownym podłączeniu wszystko ruszyło "od strzała"
Oraz krótkie demo na którym widać regulację jasności wyświetlacza;
Jak widać na filmie połączenia wykonałem przewodami zakończonymi żeńskimi złączami goldpin, takie połączenie jest zdeterminowane konfiguracją wyświetlacza i jego układem wyprowadzeń. W tym konkretnym przypadku PT6315 ma za mało wyjść, wyświetlacz potrzebuje sterowania dla 9 siatek (8 znaków+9 siatka dla ikonek) i 20 segmentów a PT w konfiguracji 9 siatkowej udostępnia jedynie 19 segmentów.
O ile ikonki będą raczej rzadko wykorzystywane to znaki najczęściej. Wyprowadzenia tego wyświetlacza (narysowane w KiCad) są pokazane poniżej;
Cyfry oznaczają numery siatek (od lewej strony wyświetlacza) z wyjątkiem "Icon grid" która to jest 9-tą siatką odpowiedzialną za wyświetlanie ikon po prawej stronie wyświetlacza. Oznaczenia literowe to zgodnie z przyjętą nomenklaturą oznaczenia segmentów (tu 14-to segmentowy);
Poza oczywistym opisem ikon zauważyć można też oznaczenia P1-P4, są to cztery malutkie kropeczki nad każdym znakiem alfanumerycznym.
Połączenia siatek z PT6315 są raczej oczywiste i po prostu kolejno połączone czyli Grid1-1, Grid2-2 itd. Z segmentami jest nieco inaczej a wynika to raczej z mojej chęci ułatwienia sobie życia
. Taki sposób połączeń znacznie upraszcza sterowanie choć można to robić inaczej. Organizacja pamięci VRAM przedstawiona jest poniżej (na czerwono kolejność podłączonych segmentów);
Jak widać, dla każdej z siatek mamy maksymalnie trzy bajty danych (zależnie od konfiguracji) gdzie bit ustawiony (logiczna 1) to segment zapalony a bit skasowany (logiczne 0) to segment zgaszony. Aby jednak PT6315 zechciał z nami "gadać" trzeba postąpić zgodnie z algorytmem inicjalizacji i sterowania;
Tu trzeba jeszcze wyjaśnić działanie poszczególnych komend.
•Komenda nr. 1
Konfiguracja wyświetlacza;
•Komenda nr. 2
Sterowanie zapisem/odczytem i adresowaniem;
•Komenda nr. 3
Wybór adresu VRAM;
•Komenda nr. 4
Sterowanie jasnością i włączeniem/wyłączeniem wyświetlacza;
Poniżej widać sposób transmisji komend oraz danych przy włączonym automatycznym zwiększaniu licznika adresu (bit b2 komendy 2 skasowany). Po wysłaniu komendy 3 linia STB musi pozostać w stanie niskim do czasu wysłania wszystkich bajtów danych.
Oraz wysyłanie bajtu pod konkretny adres VRAM (bit b2 komendy 2 ustawiony);
Aby wysłać dane użyłem jak w poprzedniej części komendy shiftout z Bascom AVR;
Poniżej kod w Bascom AVR z wersji prototypowej dema z dodanym sterowaniem dziewiątą siatką który może nie jest najbardziej elegancki ale działa i daje możliwość uruchomienia modułu sterownika;
Myślę że duża ilość komentarzy w powyższym kodzie powinna wystarczyć do uruchomienia modułu w Bascom AVR czy np. Arduino IDE. Sama nota PT6315 jest dość skąpa niestety lecz powyższy opis może posłużyć do uruchomienia innych układów tej firmy. Dzięki wymianie kondensatorów napięcie Vee przyzwoicie trzyma się około -26V a pobór prądu z 5V przy zapalonych wszystkich segmentach nie przekracza 250mA.
Uwaga poniżej finalna wersja;
Poprawiłem projekt płytki dla kondensatorów 1210;
Oraz schemat z naniesionymi poprawkami;
W załącznikach komplet plików w formacie Gerber oraz noty katalogowe najważniejszych elementów. Dla chętnych mam do podarowania kilka płytek które mi zostały, kontakt na PW. Pięć z niebieską soldermaską oraz trzy z zieloną. Ponieważ projekty obu wersji były wysłane z różnych komputerów (co wynikło z uszkodzenia jednego z twardych dysków) to obie zawierają błędy które są łatwe do naprawienia
.
W niebieskiej trzeba przeciąć ścieżkę idącą do pinu 2 4040 i z przelotki obok zrobić połączenie do pinu 5 co zaznaczyłem na poniższej fotografi;
W przypadku zielonej jest brakujące połączenie między diodami a jednym z kondensatorów w sekcji powielacza napięcia;
I jeszcze film z działania dema którego listing umieściłem;
Nasuwa mi się jeszcze takie pytanie, czy chcielibyście aby w forumowym sklepiku można było "nabyć" zrobione w fabryce płytki do projektów publikowanych na forum?
Linki do poprzednich części;
Wyświetlacze VFD to nic strasznego. Część 1. Podstawy działania i budowa
Wyświetlacze VFD to nic strasznego. Część 2. Identyfikacja i uruchamianie
• Zasilacz
Ze względu na dość złożony sposób zasilania samego wyświetlacza postanowiłem zacząć od budowy zasilacza (przetwornicy). W większości fabrycznych modułów wyświetlaczy (wyświetlacz+elektronika sterująca) stosowane są przetwornice zawierające specjalny transformator impulsowy.
Transformator przetwornicy wyświetlacza GU20x8-301 firmy Noritake Itron;

Oraz w module pochodzącym z dekodera NBOX;

Mimo widocznych niewielkich rozmiarów kłopotliwe mogłoby być ustalenie parametrów rdzenia i samo wykonanie transformatora choć dla np. NBOXa dane nawojowe są podane w instrukcji serwisowej;

Wstępny założenia były takie aby zbudować w miarę uniwersalną przetwornicę zapewniającą przy zasilaniu +5V napięcie wyjściowe w okolicy -30-33V oraz napięcie żarzenia 4-5V AC. Jako osoba niepełnosprawna miałbym osobiście duży problem z wykonaniem transformatora o tak małych wymiarach


Układ jest co prawda wycofany z produkcji jednak udało się znaleźć "nowszą wersję" o nieco lepszych parametrach który jest dedykowany do całkiem odmiennych zastosowań (wzmacniacz audio). Tym układem jest LM4871 który jest kompatybilny "noga w nogę" do LM9022;

Analizując działanie LM9022 powstał wstępnie taki oto projekt przetwornicy wykorzystujący LM4871;

Układ wykorzystuje pracę LMa w trybie generatora zgodnie z notą aplikacyjną LM9022;

Powstał również zarys PCB;

Oraz sama płytka;

Która mimo pewnych niedoskonałości została obsadzona elementami i poddana testom;

Zworki JP1-JP6 miały służyć do ustawienia wymaganego prądu żarzenia dla wyświetlacza jednak na etapie uruchamiania zostały zmostkowane na stałe. Błędem było umieszczenie pod LM4871 zworki która w czasie uruchamiania przysporzyła trochę kłopotów. Układ ładnie wystartował dając na wyjściu spodziewane napięcia bez obciążenia (lewy -Vee a prawy to pobór prądu z zasilania (5V);

Oraz z obciążeniem żarnikiem wyświetlacza;

Próba zaświecenia testowego VFD przebiegła pomyślnie;

Częstotliwość pracy jednak mocno się wahała zależnie od obciążenia, poniżej bez niego;

Nie mniej ten sposób wytwarzania stosownych napięć spełnia swoją rolę i dlatego postanowiłem pójść o krok dalej i zbudować kompletny moduł z przetwornicą oraz sterownikiem/driverem wyświetlacza na pokładzie.
•Wybór strategii
Zasilacz już jest, to co dalej? Można "iść na piechotę" jak kolega @phanick zrobił tu; https://www.elektroda.pl/rtvforum/topic3249310.html budując bufory na tranzystorach i sterując mikrokontrolerem lub użyć dedykowanego drivera VFD. Wybrałem użycie dedykowanego drivera ze względu na łatwość aplikacji i minimalną ilość potrzebnych dodatkowych elementów. Z wielu dostępnych układów wybrałem PT6315 który wydał mi się najbardziej uniwersalny dla "domowych" zastosowań.

Sam PT6315 ma dość duże możliwości które oprócz sterowania wyświetlaczem dają możliwość podłączenia 32-przyciskowej klawiatury czy też dodatkowych diod LED. Mnie najbardziej zainteresowała możliwość dość szerokiej konfiguracji dla wyświetlacza;

Daje nam to możliwość obsługi wyświetlaczy od 4 znaków/24-ro segmentowych do 12-tu/ 16-to segmentowych zależnie od użytego wyświetlacza. Jedynym mankamentem jest brak generatora znaków ale ma to też swój plus jakim jest zupełnie dowolne sterowanie segmentami. Ponieważ LM4871 w konfiguracji gdzie pracuje jednocześnie jako generator miał tendencję do pływania częstotliwością zależnie od obciążenia postanowiłem zrobić pewien "myk" i użyć podzielonej częstotliwości zegara PT6315. Jako dzielnik użyłem układu seri CMOS 4040 (12-to bitowy licznik). Wstępny schemat jaki powstał prezentuje się następująco;

4040 miał dzielić sygnał zegara PT przez 64 aby uzyskać częstotliwość około 31kHz i wypełnieniu 50% sterując swym sygnałem LM4871. Po zbudowaniu prototypu modułu i pomiarach okazało się że częstotliwość jest o wiele za niska. Jakimś dziwnym trafem wbiło mi się do głowy że Fclk to 2MHz a tak nie jest. 2MHz to typowa Fclk dla PT6302, dla 6315 to około 500kHz;

Zatem musiała nastąpić zmiana podziału. Ze względu na dość ubogą notę katalogową PT6315 nie byłem pewny jak zareaguje jego generator na dołączenie z zewnątrz wejścia układu CMOS. Jednak okazało się że jest ok i nie zrywa drgań i po zmianie stopnia podziału na 16 (pin5) mamy na wyjściu ładne 31kHz o wypełnieniu 50%. Wymagało to drobnej zmiany w docelowym projekcie PCB. Poniżej wersja prototypowa;

Oraz wizualizacja 3D;


Ponieważ w zamyśle projekt miał być publicznie udostępniony to wymagał kilku kosmetycznych zmian (np. rozstaw pinów tak aby pasowały do płytki stykowej) tak aby dał się łatwo powielić. PCB po wytrawieniu;

Oraz wstępnie zmontowana (brakuje kondensatorów w sekcji -30V) z naniesioną poprawką dla stopnia podziału CD4040;

Prototyp został jednak przypadkowo zniszczony (nie do uratowania), a zamówione w "płytkarni" płytki gdzieś zaginęły w drodze do mnie. W międzyczasie przeglądając projekt płytki zauważyłem brak jednego połączenia w powielaczu napięcia wyjściowego -Vee. Błąd łatwy do naprawienia poprzez dodanie zworki z drutu. Poprawiłem również połączenie LM4871 z 4040 w celu uzyskania wyższej częstotliwości pracy.
"Wpadka" z zamówioną serią próbną płytek spowodowała że zamówiłem ponownie tym razem z dwóch firm, JLCPcb (tu z rozpędu wysłałem nie poprawione pliki) i PCBWay (poprawione pliki). Dla rozróżnienia płytki różnią się kolorem soldermaski i trochę warstwą opisową, po około tygodniu obie paczki dotarły


Po lewej JLCPcb a PCBWay po prawej, różnice w wykonaniu praktycznie niezauważalne choć niebieska soldermaska bardziej mi się podoba

około tygodnia później zmontowałem jedną z płytek (niebieską bo jest ich więcej



Jednak pozostała kwestia jak sensownie połączyć moduł sterownika z wyświetlaczem, tu pomocna okazała się płytka prototypowa około 160x100mm wyposażona tylko w pojedyńcze pady (punkty) lutownicze. Rozstaw otworów to typowe 2,54mm do których pasował układ wyprowadzeń wyświetlacza Samsung którego użyłem wcześniej do sprawdzenia działania przetwornicy. Wyświetlacz po wpasowaniu w otwory przykleiłem do płytki dwustronną taśmą samoprzylepną. Po "uzbrojeniu" płytki w złącza goldpin (żeńskie dla modułu sterownika i męskie do połączeń wyświetlacz- sterownik i sterownik MCU) prototyp był gotowy do testów;

I po włożeniu modułu w gniazda;

Początkowo chciałem obok modułu umieścić jeszcze Arduino NANO ale zrezygnowałem z tego pomysłu. Poniżej pierwsze połączenia oraz włączenie zasilania;

Coś się świeci czyli przetwornica działa

Po ponownym połączeniu i dalszych próbach znów nie uzyskałem oczekiwanych rezultatów wyświetlania. Okazało się po zbadaniu oscyloskopem że PT nie dostaje sygnału STB (strobe, czyli zatrzask danych wejściowych), wynikało to z tego że w celach testowych przerabiałem driver dla PT6302 w Bascomie AVR i coś mi się ubzdurało że nie trzeba sterować sygnałem Strobe

Ponowne podłączenie i jest sukces




Oraz krótkie demo na którym widać regulację jasności wyświetlacza;
Jak widać na filmie połączenia wykonałem przewodami zakończonymi żeńskimi złączami goldpin, takie połączenie jest zdeterminowane konfiguracją wyświetlacza i jego układem wyprowadzeń. W tym konkretnym przypadku PT6315 ma za mało wyjść, wyświetlacz potrzebuje sterowania dla 9 siatek (8 znaków+9 siatka dla ikonek) i 20 segmentów a PT w konfiguracji 9 siatkowej udostępnia jedynie 19 segmentów.
O ile ikonki będą raczej rzadko wykorzystywane to znaki najczęściej. Wyprowadzenia tego wyświetlacza (narysowane w KiCad) są pokazane poniżej;

Cyfry oznaczają numery siatek (od lewej strony wyświetlacza) z wyjątkiem "Icon grid" która to jest 9-tą siatką odpowiedzialną za wyświetlanie ikon po prawej stronie wyświetlacza. Oznaczenia literowe to zgodnie z przyjętą nomenklaturą oznaczenia segmentów (tu 14-to segmentowy);

Poza oczywistym opisem ikon zauważyć można też oznaczenia P1-P4, są to cztery malutkie kropeczki nad każdym znakiem alfanumerycznym.
Połączenia siatek z PT6315 są raczej oczywiste i po prostu kolejno połączone czyli Grid1-1, Grid2-2 itd. Z segmentami jest nieco inaczej a wynika to raczej z mojej chęci ułatwienia sobie życia


Jak widać, dla każdej z siatek mamy maksymalnie trzy bajty danych (zależnie od konfiguracji) gdzie bit ustawiony (logiczna 1) to segment zapalony a bit skasowany (logiczne 0) to segment zgaszony. Aby jednak PT6315 zechciał z nami "gadać" trzeba postąpić zgodnie z algorytmem inicjalizacji i sterowania;

Tu trzeba jeszcze wyjaśnić działanie poszczególnych komend.
•Komenda nr. 1
Konfiguracja wyświetlacza;

•Komenda nr. 2
Sterowanie zapisem/odczytem i adresowaniem;

•Komenda nr. 3
Wybór adresu VRAM;

•Komenda nr. 4
Sterowanie jasnością i włączeniem/wyłączeniem wyświetlacza;

Poniżej widać sposób transmisji komend oraz danych przy włączonym automatycznym zwiększaniu licznika adresu (bit b2 komendy 2 skasowany). Po wysłaniu komendy 3 linia STB musi pozostać w stanie niskim do czasu wysłania wszystkich bajtów danych.

Oraz wysyłanie bajtu pod konkretny adres VRAM (bit b2 komendy 2 ustawiony);

Aby wysłać dane użyłem jak w poprzedniej części komendy shiftout z Bascom AVR;

Poniżej kod w Bascom AVR z wersji prototypowej dema z dodanym sterowaniem dziewiątą siatką który może nie jest najbardziej elegancki ale działa i daje możliwość uruchomienia modułu sterownika;
Code: vbnet
Myślę że duża ilość komentarzy w powyższym kodzie powinna wystarczyć do uruchomienia modułu w Bascom AVR czy np. Arduino IDE. Sama nota PT6315 jest dość skąpa niestety lecz powyższy opis może posłużyć do uruchomienia innych układów tej firmy. Dzięki wymianie kondensatorów napięcie Vee przyzwoicie trzyma się około -26V a pobór prądu z 5V przy zapalonych wszystkich segmentach nie przekracza 250mA.
Uwaga poniżej finalna wersja;
Poprawiłem projekt płytki dla kondensatorów 1210;

Oraz schemat z naniesionymi poprawkami;

W załącznikach komplet plików w formacie Gerber oraz noty katalogowe najważniejszych elementów. Dla chętnych mam do podarowania kilka płytek które mi zostały, kontakt na PW. Pięć z niebieską soldermaską oraz trzy z zieloną. Ponieważ projekty obu wersji były wysłane z różnych komputerów (co wynikło z uszkodzenia jednego z twardych dysków) to obie zawierają błędy które są łatwe do naprawienia

W niebieskiej trzeba przeciąć ścieżkę idącą do pinu 2 4040 i z przelotki obok zrobić połączenie do pinu 5 co zaznaczyłem na poniższej fotografi;

W przypadku zielonej jest brakujące połączenie między diodami a jednym z kondensatorów w sekcji powielacza napięcia;

I jeszcze film z działania dema którego listing umieściłem;
Nasuwa mi się jeszcze takie pytanie, czy chcielibyście aby w forumowym sklepiku można było "nabyć" zrobione w fabryce płytki do projektów publikowanych na forum?
Linki do poprzednich części;
Wyświetlacze VFD to nic strasznego. Część 1. Podstawy działania i budowa
Wyświetlacze VFD to nic strasznego. Część 2. Identyfikacja i uruchamianie