Mikrokontrolery
Firma Philips jako pierwsza opracowała, lub zaadaptowała, standard RC5 dla swoich nadajników – odbiorników podczerwieni do zastosowań w sprzęcie domowego użytku. Stosowano w nim stały czas trwania i liczbę bitów. Za każdym razem, gdy użytkownik naciska przycisk w nadajniku zdalnego sterowania, pracującym zgodnie ze specyfikacją Philips, wysyła on ciąg 14 bitów o czasie trwania 1,728 ms każdy. Jeśli klawisz pozostaje naciśnięty, to cała transmisja powtarzana jest, co 130 ms. W artykule opisano sposób budowy odbiornika transmisji kodowanej zgodnie z RC5 za pomocą mikrokontrolera 8051.
czytaj więcej
|
Port równoległy jest do dziś jednym z najpowszechniej stosowanych interfejsów drukarkowych. Celem artykułu jest przedstawienie przykładu sposobu, w jaki można podłączyć drukarkę do systemu wyposażonego w mikrokontroler z rdzeniem 8051/8052. Obecnie port równoległy wypierany jest z zastosowań przez dużo wygodniejszy w użyciu interfejs USB. Stale jednak stanowi podstawowe wyposażenie komputerów PC, a w sklepach czy na rynku podzespołów wtórnych, bez większych kłopotów można kupić drukarkę wyposażoną w złącze równoległe. Jej przeznaczenie w systemie z mikrokontrolerem może być różne i zależy od potrzeb i inwencji konstruktora czy programisty. Ciekawy dla elektroników amatorów wydaje się być zwłaszcza rynek wtórny, gdzie za niewielką cenę można nabyć drukarkę igłową czy atramentową, wyposażoną w ten rodzaj interfejsu i dołączyć ją do własnego urządzenia. czytaj więcej
|
W artykule prezentowany jest przykład aplikacji, która opisuje sposób podłączenia telefonu GSM do systemu z mikrokontrolerem. Napisany dla mikrokontrolera program, to rodzaj alarmu z powiadomieniem, który może zostać zainstalowany na przykład w samochodzie. Jednak opisywaną aplikację bardziej należy traktować jako pewną sugestię, co do wykonania części sprzętowej i interfejsu łączącego mikrokontroler z telefonem GSM, aniżeli gotowe do wykorzystania urządzenie. czytaj więcej
|
Początki nauki nie są zbyt pasjonujące. Ale tak to już jest, że aby zacząć biegać, trzeba się nauczyć chodzić. Niestety, początki są na „czworaka”. W tym odcinku kursu dołożymy kolejny klocek: odczyt stanu przycisku. Następnie połączymy tę funkcję z poznaną wcześniej, służącą do wyświetlenia stanu licznika. Utworzona w ten sposób aplikacja będzie najprostszym licznikiem zdarzeń. czytaj więcej
|
W tym odcinku kursu nieco odbiegniemy od prezentowanych wcześniej sposobów wykorzystywania zasobów mikrokontrolera. Każda aplikacja musi czasami dodać, odjąć lub porównać jakieś wartości. Tworząc ją w języku wysokiego poziomu wszystko jest proste: deklarujemy typy zmiennych A i B a następnie prosty zapis A+B rozwiązuje problem. W asemblerze nie jest niestety tak łatwo. czytaj więcej
|
Podczas lektury poprzedniego odcinka kursu poznaliśmy podstawy organizacji pamięci oraz wykorzystania zasobów mikrokontrolera AT90S8515. Nauczyliśmy się w jaki sposób skonfigurować linie portów mikrokontrolera, jak odczytać stan portu wejściowego i jak zaświecić diodę LED dołączoną do wyprowadzenia mikrokontrolera. Poznaliśmy też sposób użycia przerwania zewnętrznego do realizacji licznika. Dziś posuniemy się o krok dalej. Do mikrokontrolera dołączymy cyfrę LED i nauczymy się nią sterować. Wszystko na przykładzie prostej aplikacji licznika. czytaj więcej
|
Najprostszą metodą konwersji liczb szesnastkowych na dziesiętne jest liczenie ile razy dana waga dziesiętna „zmieści się” w liczbie szesnastkowej. W języku asembler operację tę przeprowadza się najczęściej przez odejmowanie wagi dziesiętnej i liczenie ilości operacji odejmowania do momentu ustawienia flagi przeniesienia C (Carry bit).
czytaj więcej
|
Pierwszy rzut oka na instrukcję programowania mikrokontrolera z rodziny AVR w języku asembler nieco przeraża. Dziesiątki zupełnie niezrozumiałych poleceń to dla wielu przeszkoda nie do przebycia. Niestety – taki jest urok programowania w asemblerze. Tutaj proste z pozoru operacje dodawania czy mnożenia muszą zawierać się w kilku czy kilkunastu poleceniach. Cykl artykułów będzie próbą wprowadzenia Czytelnika w świat programowania w języku asemblera AVR. Będzie też próbą pokazania, że nie taki diabeł straszny...
czytaj więcej
|
Jednym z największych „pożeraczy” czasu i energii programisty, obok uruchomienia programu, jest tak zwany interfejs użytkownika. Mikrokontroler nie potrzebuje do pracy wyświetlacza, klawiatury, diod świecących LED i temu podobnych elementów, o ile nie jest to ściśle związane z operacjami zapisu lub odczytu danych. Wszystkie te drobiazgi są potrzebne nam, ludziom, abyśmy mogli wprowadzać parametry i poznać rezultat wykonania przez mikrokontroler określonego programu. Te przykłady programowania to jeden z elementów interfejsu użytkownika. Są to jedno- i dwupoziomowe menu, wyświetlane na wyświetlaczu LCD 4 linie po 20 znaków.
czytaj więcej
|
Pisząc program w języku C czasami warto zadać sobie pytanie: czy naprawdę muszę tworzyć funkcję dokonującą konwersji wartości dziesiętnej na szesnastkową? Przecież chociażby biblioteka o nazwie STDIO zawiera w sobie możliwość formatowania zarówno danych wejściowych, jak i wyjściowych. Czy nie ma możliwości skorzystania z czyjejś pracy i zaoszczędzenia własnego czasu? czytaj więcej
|