Język C
Można powiedzieć, że całe „lata temu” opracowałem moduł wyświetlacza ASCII. Opisywałem też sposób połączenia dwóch takich wyświetlaczy oraz wyświetlania komunikatów. czytaj więcej
|
W wielu zastosowaniach miniaturowy sterownik LOGO! jest bardzo dobrym wyborem. Ma obudowę, wyświetlacz LCD, nieskomplikowaną klawiaturę, wbudowany zegar RTC, a za pomocą LOGO! Soft Comfort można łatwo tworzyć aplikacje. Wejścia analogowe, wyjścia przekaźnikowe lub tranzystorowe świetnie nadają się do realizowania wielu aplikacji w automatyce domowej i nie tylko. Dodatkową zaletą jest możliwość dołączania modułów rozszerzeń, w tym również realizujących złożone funkcjonalności. czytaj więcej
|
Na "starym" easy-sofcie był artykuł Jacka Domańskiego, który zginął przy przenosinach. Na Waszą prośbę - umieszczam go ponownie. W artykule Jado przedstawia swoje sposoby na programowanie mikrokontrolerów jednoukladowych (8051, PIC i podobne) w języku asemblera - ze szczególnym zwróceniem uwagi na jak najmniejsze obciążenie procesora przez dużą liczbę podprogramów (współdzielenie czasu procesora). Takie podejście sprawia, że układ mikroprocesorowy staje się jakby układem wielozadaniowym, a przy okazji zostaje zminimalizowane niebezpieczeństwo zawieszania się programów i utknięcia całości w martwym punkcie. czytaj więcej
|
Zegar i termometr są jednymi z najchętniej wykonywanych aplikacji. Jednak tę aplikację wykonałem kierując się nie tyle potrzebą budowy kolejnego czasomierza, ile chęcią wykonania programu demonstrującego sposób, w jaki należy używać opisywanego na tej stronie (>>>kliknij<<<) modułu wyświetlacza alfanumerycznego sterowanego przez doskonałe, bo eliminujące konieczność używania rezystorów ograniczających prąd segmentów, układy scalone typu PR4010 firmy Prema Semiconductor a dostępne np. w ofercie TME. Wyświetlacz jest sterowany przez płytkę ewaluacyjną ZL5MCS51 z mikrokontrolerem AT89C51RD2 (rdzeń 8051) taktowanym zegarem 11,0592MHz. Płytka jest wyposażona w układ scalony zegara czasu rzeczywistego M41T00, który również jest używany w tej aplikacji. czytaj więcej
|
Język programowania Pascal ma specyficzny typ zmiennych tzw. proceduralny. W dużym uproszczeniu polega on na tym, że odwołanie do zmiennej ma podobne konsekwencje, jak wywołanie procedury. czytaj więcej
|
Optymalizacja kodu jest procesem, którego celem jest zmiana kodu przy zachowaniu obliczanej funkcji, tak aby przyspieszyć działanie docelowego programu i/lub zmniejszyć jego wielkość. Zwróćmy uwagę, że optymalizacja jest raczej poprawianiem gotowego programu, ponieważ otrzymany kod rzadko jest optymalny. Należy pamiętać, że w optymalizacji powinno uwzględniać się wiele ogólnych warunków. Najważniejszy jest czas działania docelowego programu. Złożony program może pewne fragmenty wykonywać częściej - te powinny być lepiej zoptymalizowane. czytaj więcej
|
Cyfrowy komparator okienkowy to urządzenie, które można zastosować w wielu aplikacjach. Opisywany prototyp miał służyć do wyłączenia zasilania prasy hydraulicznej w momencie, gdy czujnik tensometryczny przyklejony do jej obudowy odkształci się poza dopuszczalny zakres. W normalnych warunkach pracy może to oznaczać zakleszczenie się lub oderwanie narzędzia. Przy dużych prędkościach automatycznie wykonywanego tłoczenia, taka awaria ma trudne do przewidzenia następstwa. czytaj więcej
|
Ten artykuł jest związany z poprzednio prezentowanym (>>>TUTAJ<<<), jednak zaproponowano rozwiązanie umozliwiające zaoszczędzenie wyprowadzeń mikrokontrolera. Pole odczytowe wyświetlacza ma 6 cyfr LED, po 7 segmentów każda. Doliczając kropkę dziesiętną można powiedzieć, że wyświetlacz wymaga do sterowania 8 bitów, więc same sterowanie segmentami zajmie jeden pełny port. Jeśli użyjemy metody podobnej do tej z poprzedniego przykładu, to dodatkowo sterowanie tranzystorami kluczami załączającymi napięcie na anody cyfr, będzie wymagać następnych sześciu bitów portu. To już razem 14 linii! A jeśli jeszcze konieczne stanie się jakiś układów zewnętrznych takich, jak na przykład klawiatura? Może braknąć wyprowadzeń mikrokontrolera... Prezentowane rozwiązanie to wynik napotkania przeze mnie w przeszłości podobnego dylematu. Chcę pokazać na praktycznym przykładzie jak można zmierzyć się z tak przedstawionym problemem. Pokażę również jak wykorzystać to rozwiązanie do budowy układu prostego licznika impulsów. Użyję w nim przerwania generowanego przez Timer 1 do obsługi wyświetlacza LED oraz przez opadające zbocze sygnału na wejściu INT0 do zliczania impulsów prostokątnych. Użyję również wskaźników i ich arytmetyki – będzie okazja, co nieco się nauczyć. czytaj więcej
|
Sterowanie pojedynczą cyfrą LED wymaga dołączenia co najmniej dziewięciu wyprowadzeń. Należy bowiem dołączyć 7 segmentów cyfr, kropkę dziesiętną i wspólną anodę czy katodę wyświetlacza. Z tego osiem wyprowadzeń (segmenty i kropka dziesiętna) musi być połączone z mikrokontrolerem lub innym układem sterującym. Co zrobić, gdy jest niezbędne wyświetlenie liczby na przykład na 6 pozycjach? To aż 48 wyprowadzeń! Mało który mikrokontroler ma ich aż tyle. W takiej sytuacji jedynym ratunkiem jest multipleksowanie cyfr, czyli przełączanie ich w czasie wyświetlania tak, że w danym momencie świeci tylko jedna z nich. Multipleksowanie powinno być robione na tyle szybko, aby oko ludzkie nie dostrzegało zmian cyfr. Ma się wówczas wrażenie, iż wszystkie cyfry świecą światłem ciągłym. To cała tajemnica. czytaj więcej
|
Mimo, że ceny graficznych wyświetlaczy LCD ciągle spadają, to koszt wyświetlacza kolorowego jest nadal stosunkowo wysoki. Jeżeli zależy nam na tym by w aplikacji był użyty kolorowy wyświetlacz graficzny o niewielkich rozmiarach ekranu, to zawsze można rozważyć zastosowanie kolorowego wyświetlacza od telefonu komórkowego. Wyświetlacze przeznaczone do telefonów komórkowych są tanie, a część z nich jest dość dobrze udokumentowana. Jednak trzeba pamiętać, że wyświetlacze tego samego modelu telefonu mogą mieć inne różne typy sterowników, a sterowniki montowane w serwisowych zamiennikach wyświetlaczy, nie zawsze są wierną kopią firmowego sterownika. Również elektryczne połączenie wyprowadzeń wyświetlacza z naszym układem sterowania często stanowi nie lada wyzwanie. Różnorodne wyprowadzenia oferowanych wyświetlaczy: złącza, styki, taśmy itp. wymagają zaprojektowania specjalnych płytek drukowanych lub stosowania niestandardowych złącz, co jest dość kłopotliwe, szczególnie w układach prototypowych. Na rynku jest bardzo duża ilość modeli telefonów używających różnych rodzajów wyświetlaczy. Do stosowania we własnych urządzeniach warto wybrać taki, z którym będzie jak najmniej problemów. Powinien być tani, łatwo dostępny i ze znanym sterownikiem. Mój wybór padł na wyświetlacz od telefonu Nokia 6100 (ale również paru innych modeli telefonów tego producenta).
czytaj więcej
|