Scalone sterowniki LED są oferowane przez wielu producentów półprzewodników, którzy coraz większe znaczenie przykładają do zminimalizowania nakładu pracy konstruktorów i programistów. Jednym z nowocześniejszych rozwiązań tego typu jest rodzina układów PCA9633 firmy NXP.
Monitor stanu wejść i wyjść sterownika LOGO!
Stany wejść i wyjść sterowników LOGO! można monitorować dzięki wbudowanemu wyświetlaczowi. Rozwiązanie takie nie zawsze jest dogodne, ponieważ niewielkie wymiary wyświetlacza i brak (w wielu, zwłaszcza starszych wersjach sterownika) jego podświetlenia wymuszają na użytkowniku konieczność takiego ulokowania sterownika, aby miał go w bezpośrednim zasięgu wzroku. Zamiast tego proponujemy wykonanie prostego adaptera, który pozwoli wyprowadzić na zewnątrz obudowy LOGO! sygnały sterujące diodami LED, które można ulokować w dowolnym miejscu, wygodnym dla operatora.
Elektroniczny gong WestMinster
Schemat elektryczny elektronicznego gongu „udającego” dźwięk znanych na całym świecie dzwonów West Minster znajduje się na rys. 1. Jest to typowa aplikacja układu M995, rozszerzona o stabilizator napięcia (US2) MAX604 oraz cztery transoptory zastosowane na wejściach wyzwalających odtwarzanie dźwięków. Tranzystor T1 spełnia rolę wzmacniacza prądowego do sterowania głośnika.
Miernik pojemności kondensatorów
Konstrukcja przyrządu łączy w sobie cechy systemu cyfrowego i analogowego (rys. 1). Cyfrowa część urządzenia odpowiada za generowanie przebiegów czasowych sterujących pracą miernika. W przyrządzie wykorzystano następującą zasadę pomiaru pojemności: w 1-sekundowych odstępach badany kondensator jest rozładowywany przez ok. 200ms, następnie ładowany prądem o stałej wartości, dzięki czemu napięcie na nim rośnie liniowo. Wynik pomiaru jest ustalany poprzez odpowiednio wyskalowany potencjometr lub przez napięcie na testowym wyjściu przyrządu (J3, +MON).
Zasilacz do białych LED-ów
Napięcie progowe LED-ów świecących na biało ma wartość około 2,6 V. Nominalny prąd przewodzenia jest osiągany przy spadku napięcia na złączu diody o wartości ok. 3,5 V (charakterystykę If=f(Uf) diody TLHW5100 pokazano na rys. 1).
Funkcje API w obsłudze przerwań
Aby system mikroprocesorowy poprawnie radził sobie z zewnętrznymi zdarzeniami muszą być one obsługiwane za pomocą przerwań. Ma to szczególne znaczenia dla zadań krytycznych, w których nie może być mowy o zbyt dużych opóźnieniach w wykonaniu owego zadania, ani tym bardziej o pominięciu zdarzenia. Często nie zauważa się tego problemu, ponieważ wydaje się, że na przykład cykliczne sprawdzanie w pętli stanu danego wejścia jest wystarczające. Niestety takie podejście prędzej czy później powoduje generowanie błędów w pracy systemu. Jeżeli mamy do czynienia z projektem hobbistycznym, to nie jest to specjalnie dotkliwe, jednakże w przypadku rozwiązań komercyjnych nie można już sobie na takie błędy pozwolić.
ISIX-RTOS – przykład 4 – wątkowa obsługa portu szeregowego RS232
W przykładzie czwartym pokażemy, w jaki sposób napisać uniwersalną klasę/sterownik obsługi portu szeregowego. Obsługa portu szeregowego przyda się z pewnością w większości aplikacji, chociażby do tworzenia komunikatów diagnostycznych na etapie uruchamiania projektu.
Przykład 2 – wykorzystanie linii GPIO (joystick)
W ćwiczeniu należy zaświecić diodę LED po przechyleniu joysticka.
ISIX-RTOS – przykład 1 – sterowanie LED w wątkach
Pokażemy w jaki sposób stworzyć kod startowy dla systemu oraz dwa nowe zadania (wątki).
ISIX-RTOS – przykład 2 – kolejki FIFO i obsługa graficznego wyświetlacza LCD
W przykładzie pokażemy komunikację pomiędzy procesami z wykorzystaniem wątków. Działanie aplikacji będzie sprowadzać się do migania diody LED D1 z częstotliwością 2 Hz (jeden wątek) oraz wyświetleniu napisu lub grafik odpowiadających kierunkom joysticka zamontowanego na płytce.