Kategoria: howto

Programowanie ATtiny2313 dla opornych

Arduino jest fantastyczną platformą dla początkujących. Łatwa w użyciu, prosta w programowaniu. Jednak gdy już nabierzemy pewnej wprawy dostrzegamy projekty w których użycie Arduino wydaje się pewną przesadą (głównie chodzi o finanse, ale czasem również o miejsce). Co zrobić jeżeli potrzebujemy sterować tylko jednym, czasem dwoma wyjściami? Wówczas możemy sięgnąć po mikrokontroler w rodzaju ATtiny2313. Nie uruchomimy na nim środowiska Arduino. Nie ma bootloadera, do programowania potrzebujemy jakiś programator. Ponadto nie ma biblioteki Arduino, tak więc nie ma wygodnych funkcji jak digitalWrite, analogRead itp. Trzeba się nieco ‘ubrudzić’ pisząc program, ale chyba już czas na to? Sam doświadczenie poza Arduino

Czytaj dalej...

Komunikacja układów 3,3V i 5V

Wstęp Podczas rozwoju podzespołów elektronicznych, wraz z ich przyśpieszaniem i zmniejszaniem poboru energii, zmieniały się też standardy w jakich te układy pracowały. Obecnie w elektronice amatorskiej (także w Arduino) panuje standard 5V. Oznacza to, że zasilanie układów scalonych i ich stany logiczne odnoszą się właśnie do tego napięcia. Wiadomo, że stan niski “LOW” to GND, a stan wyoki “HIGH” to napięcie w okolicach 5V. Coraz częściej spotyka się układy scalone pracujące w standardzie 3,3V. Oznacza to, że ich zasilanie i stany logiczne nie pasują do obecnych rozwiązań. W tym wpisie dowiesz się jak sprawić, by urządzenia obydwu standardów mogły się

Czytaj dalej...

TLC5940 czyli co najmniej 16 dodatkowych pinów PWM w Arduino

TLC5940 to układ scalony zawierający 16 wyjść PWM. Generator PWM układu ma rozdzielczość 12 bitów czyli 4096 stopni wypełnienia. Jedną z głównych zalet tego chipu jest możliwość podłączenia do jego wyjść bezpośrednio diod LED (bez rezystorów). Jego wyjścia mogą wytrzymać do 120 mA obciążenia. Wyprowadzenia układu TLC5940

Czytaj dalej...

Co to jest PWM?

Wstęp Wielu użytkowników Arduino zapewne zauważyło, że wśród pinów z grupy DIGITAL jest kilka oznaczonych jako “PWM” lub “~”. W tym artykule postaram się wyjaśnić co to znaczy i jak dokładnie działa. Napiszę też jak można to praktycznie wykorzystać. PWM w teorii PWM to skrót od angielskich słów “Pulse Width Modulation”, co oznacza po polsku “Modulacja Szerokości Impulsu”. W życiu codziennym posługujesz się przełącznikami. One powodują, że włączasz jakieś urządzenie lub wyłączasz. Włączenie oznacza dostarczenie do urządzenia 100% energii elektrycznej, a wyłączenie zmniejsza tą ilość do 0%. Jeśli masz w domu jakieś urządzenie z silnikiem to możesz zauważyć, że włączając

Czytaj dalej...

Rezystor – co o nim trzeba wiedzieć

Rezystory to jeden z podstawowych elementów wszystkich układów elektronicznych. Jako, że jest to element naprawdę podstawowy i powszechny, spróbujemy się o nim dowiedzieć kilku rzeczy. Teoria związana z przepływem prądów w układach RLC (R – rezystory, L – cewki, C – kondensatory) jest cała najeżona wzorami, których nie chcecie widzieć :) (a jeżeli ktoś musi się przekonać to np zobaczcie to i wrócicie zaraz tutaj :) ). Teraz podam kilka uproszczeń, które wystarczą do zmierzenia się z użyciem rezystorów w kontekście Arduino. Ważną cechą układów elektronicznych jest to, że jeżeli mamy jakieś napięcie w układzie (coś je wytwarza), to jeżeli

Czytaj dalej...

Czytnik RFID 125 kHz

Od dłuższego czasu w ofercie Nettigo jest czytnik kart RFID z interfejsem UART. Co to znaczy? System RFID w uproszczeniu składa się z dwóch elementów – czytnika i tokenów. Token to fizyczna rzecz, mająca w sobie trochę elektroniki. Każdy token ma swój unikalny numer. Gdy token zostanie zbliżony do drugiego elementu – czytnika, ten będzie w stanie odczytać ten numer. Jakie ma to zalety? Po pierwsze – token nie musi mieć swojego zasilania (wbudowanej baterii). Może być mały, lekki i odporny na wodę. Po drugie – nie jest potrzebny fizyczny kontakt tokena i czytnika – wystarczy token zbliżyć na kilka,

Czytaj dalej...

P4A – PHP dla Arduino cz. 1

Gdy poznamy już trochę Arduino w głowie każdego prędzej czy później pojawi się pomysł na projekt, który wymaga aby Arduino mogło połączyć się z siecią. Czy to będzie automatyka domowa dostępna przez sieć, czy zestaw czujników raportujący odczyty do bazy danych – trzeba jakoś połączyć Arduino do Internetu. I tu z pomocą przychodzi nam Ethernet Shield. Najpierw trochę historii. Ethernet Shield był początkowo kompatybilny z małym Arduino. Dlaczego nie z Mega? Otóż do komunikacji z układem W5100 będącym sercem shielda wykorzystywany jest protokół SPI – na cyfrowych wejściach nr 10, 11, 12 i 13. W Arduino Mega SPI jest na

Czytaj dalej...

Czujnik ciśnienia BMP085 z Arduino

Od już dłuższego czasu w ofercie Nettigo dostępny jest adapter do BMP085 – czujnika ciśnienia atmosferycznego z wbudowanym czujnikiem temperatury. Jest on jak wszystkie adaptery ze SparkFun łatwy w użyciu dzięki wyprowadzeniom w rozstawie 0.1″. Kilka razy byłem już pytany jak wykorzystać ten czujnik, więc krótka instrukcja. Najpierw podłączenie – czujnik ma interfejs I2C, więc wykorzystamy na ten cel wejścia analogowe A4 i i A5. Po włączeniu I2C te dwa wejścia zmieniają się w SDA i SCL odpowiednio – czyli szynę I2C, którą w Arduino IDE obsługuje biblioteka Wire. Czujnik może być zasilany napięciem od 1.8 do 3.6V, więc nie

Czytaj dalej...

Gra w zapamiętywanie kolorów

Niniejszy artykuł został napisany w oparciu o ten tekst zamieszczony na blogu Newtona. Wszystkie ilustracje, filmik oraz kod programu pochodzą właśnie stamtąd. Celem projektu było wykorzystanie jak największej ilości elementów zawartych w Starter Kicie. A czym ów projekt jest? Jak sam tytuł wskazuje, to gra polegająca na zapamiętaniu sekwencji kolorów wyświetlanych za pomocą diody LED RGB, a następnie odtworzeniu jej. Na początku sekwencja składa się z 3 kolorów, potem stopień trudności wzrasta – za każdym razem jest dodawany kolejny kolor do zapamiętania. Pewnym ułatwieniem jest fakt, że do każdego koloru jest przypisany dźwięk o innym tonie – podczas wyświetlania danego

Czytaj dalej...