Uruchomienie litery z tablicy dworcowej, część I

Moduł tablicy który wziąłem ze sobą posiada dwudziestopinowe złącze. Do czego służy aż tyle pinów? Nie wiadomo i nie ma szybkiej drogi do zdobycia tych informacji – jeżeli nawet ktoś uruchomił te moduły przede mną, to nie udostępnił żadnych wskazówek w internecie. KZŁ Bydgoszcz też, rzecz jasna, nie opublikowało nigdzie protokołu sterowania. Pomyślałem o wystosowaniu zapytania do tej firmy – ale stwierdziłem, że zrobię to dopiero wtedy, kiedy uznam że nie uda mi się rozpracować sterowania samodzielnie.

Z takim nastawieniem usiadłem do pracy. Pierwszych osiem pinów nie sprawiło mi żadnych problemów – bardzo dobrze widać grube ścieżki na płytce łączące dwie pary pinów i prowadzące do odseparowanego od reszty układu zasilania silnika na 220V i pozostałe dwie pary które rozdzielają piny zasilające i nie są do niczego podłączone. Z pomocą multimetru ustawionego w tryb testowania ciągłości obwodu z łatwością zlokalizowałem 5 pinów połączonych z masą. Zostało już tylko 7. Dwa kolejne okazały się być zwarte ze sobą i prowadzić do małego układu scalonego, zaraz przy samym gnieździe. Wyszukanie jego numeru w sieci potwierdziło moje przypuszczenia – był to stabilizator napięcia, a badane piny przyjmowały dodatni biegun zasilania układu.

Zostało już tylko pięć pinów. Wszystkie prowadziły do serca modułu – mikrokontrolera. Według znalezionej przeze mnie dokumentacji, nie da się zrzucić z niego raz zapisanego programu. Pocieszające jest to, że musi być on bardzo prosty z racji małej dostępnej pamięci. Jedyne co mogłem zrobić, to opisać piny wyprowadzeniami mikrokontrolera do jakich były podłączone. W ten sposób uzyskałem nazwy A1, A6 i B0, odpowiadające portom µC o tych nazwach i mogące być właściwie czymkolwiek oraz RST i INT. RST to wyprowadzenie resetujące układ, więc do tego najprawdopodobniej służy pin, INT natomiast to sterownik przerwań – wyprowadzenie go na zewnątrz delikatnie zasugerowało mi, że na tym pinie może być prowadzona linia zegara taktującego transmisję danych do modułu. Nie musiało tak jednak wcale być, dokumentacja stwierdzała jasno, że w rolę kontrolera przerwań można wcielić dowolne złącze portu A, w tym 1 i 6, które również były dostępne wprost z gniazda modułu.

Tyle statycznej analizy wystarczyło. Wybrałem się do sklepu elektronicznego gdzie zakupiłem pasujące złącze, krótki odcinek taśmy pasującej do niego, wtyczkę do gniazdka i kabel do niej. W domu połączyłem to wszystko w całość, wyprowadzając napięcie z gniazdka sieciowego na odpowiednie złącza gniazda w module, zasilanie stałonapięciowe podłączyłem do zasilacza ustawionego na 9V, wartość leżącą w bezpiecznym przedziale stabilizatora. Włożyłem dwie wtyczki do wyłączonego przedłużacza i kilkukrotnie sprawdziłem poprawność połączeń. Będąc bardzo niepewnym tego, co miało nastąpić, ostrożnie wcisnąłem przełącznik na przedłużaczu.

W chwili kiedy lampka w przełączniku zapaliła się, sygnalizując obecność napięcia na gniazdach przedłużacza w pokoju rozległ się głośny dźwięk. Pierwszy sukces, moduł żyje! Obraca się! Pierwszy raz od chwili zerwania tablicy ze ściany tunelu, pracuje. Dźwięk opadających klapek zagłuszany jest przez chrobot hamulca na kołach zębatych. Coś cudownego. Ale zaraz, coś jest nie do końca tak, jak sobie wyobrażałem i czego w początkowej euforii nie zauważyłem – moduł kręci się bez przerwy, tak jakby oczekiwał na coś, czego nie dostaje. Samo zasilanie to za mało aby zatrzymał się na pustym polu. Wyłączyłem zasilanie i przystąpiłem do dalszych prac.

Jedną z płytek otrzymanych od Pana Mariana zidentyfikowałem jako bezpośredni kontroler modułów z tablicy – tylko jedna posiadała dwa dwudziestopinowe złącza (każdy z dwóch rzędów modułów miał oddzielną taśmę i w związku z tym, złącze). Uruchomiłem ją z pomocą tego samego zasilacza którego użyłem do ożywienia modułu i sprawdziłem stany pinów. Kilka miało stan niski (0V), kilka wysoki (5V), natomiast przy pinie oznaczonym przeze mnie jako INT zobaczyłem wskazanie w okolicach 2,5V. To jeszcze bardziej potwierdziło moje przypuszczenia – mój tani multimetr nie posiadał pomiaru TrueRMS, więc jeśli wartość zmieniała się w czasie – uśredniał ją. Takie wskazanie z pewnością oznaczało że coś się tam zmienia i sugerowało że faktycznie jest tam linia zegarowa. Spróbowałem oczywiście ustawić resztę pinów na takie stany jakie zmierzyłem (za wyjątkiem INT), nie przyniosło to jednak żadnych zmian – moduł wciąż kręcił się bez końca. Potrzebowałem zaprząc do pracy lepsze narzędzia…

Leave a Reply

Your email address will not be published. Required fields are marked *