Tag: arduino

Dlaczego Stringi w Arduino są złe?

Kiedy komunikujemy się z naszym Arduino za pomocą np. portu szeregowego przez konwerter USB-TTL, płytkę Arduino czy też moduł Bluetooth lub np. wyświetlamy jakieś dane na ekranie LCD to z reguły używamy do tego celu napisów pod postacią obiektów String. Czy jednak kiedyś zastanawialiście się jak ta klasa tak bardzo ułatwiająca życie działa pod spodem? Niestety w tym przypadku wygoda okupiona jest wydajnością. W tym artykule przedstawię Wam pokrótce jak działa klasa String, dlaczego to co robi jest złe dla wydajności i przedstawię kilka funkcji ze standardowej biblioteki C do operowania na odpowiednich tablicach charów (C stringach).

Czytaj dalej...

Programowanie Arduino w chmurze

W ostatnich latach bardzo popularna stała się idea dostarczania oprogramowania w chmurze. Możemy wymienić tutaj m.in. Office Web Apps Microsoftu, Google Docs, Dropbox itp. usługi. Cała idea tego typu aplikacji polega na tym, że nasze pliki możemy przechowywać na zdalnych serwerach (mamy do nich dostęp z każdego komputera na który się zalogujemy), a także udostępniają nam webowe środowiska do edycji tychże plików. Nie inaczej jest z fundacją Arduino, która stworzyła stornę create.arduino.cc, o której dzisiaj trochę opowiem :)

Czytaj dalej...

Przerwanie na każdym pinie Arduino Uno

Początkujący użytkownicy Arduino mogą nie wiedzieć nawet o istnieniu czegoś takiego jak przerwania, jeżeli jednak budujemy bardziej złożony system na naszym mikrokontrolerze warto się nimi zainteresować, albowiem bardzo ułatwiają one komunikację z różnego rodzaju podzespołami. Niestety na płytkach wyposażonych w Atmegę328 (Uno, Leonardo) mamy do dyspozycji tylko 2 przerwania zewnętrzne. W porównaniu do całkowitej ilości pinów cyfrowych to bardzo mało. Jeżeli jednak nieco bardziej zagłębimy się w temat przerwań na tym procesorze to okaże się, że każdy pin cyfrowy obsługuje PCINT, czyli Pin Change Interrupt. W dzisiejszym artykule dowiemy się jak je wykorzystać.

Czytaj dalej...

Prosty czujnik cofania – Arduino i HC-SR04

Dziś przedstawiam prosty projekt Arduino, który uratuje Twój samochód. Wykonanie go zajmie Ci dosłownie chwilę, a przy okazji zbudujesz coś pożytecznego, funkcjonalnego i mam nadzieję sporo się też nauczysz. Zatem do dzieła! Historia jakich wiele. Ostatnio parkując samochód w swoim dość małym garażu uważnie sprawdzając w lusterkach, czy zaraz nie wyjadę przez tylną ścianę wpadłem na pomysł jak sobie taki proces parkowania znacznie ułatwić. Można zbudować układ oparty o Arduino, który graficznie jak i dźwiękowo zasygnalizuje mi jak blisko ściany jest samochód oraz będę mógł go sobie dowolnie skalibrować. Z pomocą przyszedł mi nowy Starter Kit Nettigo, w którym znajdziemy części

Czytaj dalej...

Podłączamy starą klawiaturę do Arduino

Robiąc ostatnio porządki w swoich rzeczach wygrzebałem wśród morza elektroniki starą klawiaturę do komputera, taką ze złączem PS/2. Od razu pomyślałem, że pewnie dałoby się ją jakoś wykorzystać i nie myliłem się. Po zrobieniu małego researchu w internecie znalazłem opis działania portu PS/2 i okazało się, że jest on banalnie prosty w implementacji na Arduino. Zobaczmy więc z czym to się je :)

Czytaj dalej...

Poprawianie dobrego, czyli LCD Shield i Nettigo Keypad

Odświeżałem ostatnio bibliotekę do Keypada, tak by pracowała łatwiej z LCD Shieldem lub innymi niestandardowymi klawiaturami opartymi o dzielnik napięcia. O jakie klawiaturki chodzi? Klawiatura taka, to szereg rezystorów, każdy kolejny zwarty przez przycisk do masy. Jeśli odczytamy napięcie między rezystorem R1 a R2, to będzie się zmieniało w zależności od tego który przycisk jest załączony. Górny rezystor zostaje cały czas włączony, a liczba dolnych się zmienia. W szczególności gdy zewrzemy pierwszy przycisk (PRAWO), to będzie tam napięcie 0 -bo przycisk zewrze wszystkie rezystory R2-R5 do masy. Gdy wciśniemy drugi przycisk napięcie będzie zależne od dzielnika R1/R2, rezystory R3-R5 będą

Czytaj dalej...

Menu na wyświetlaczu 16×2

Bardzo często robiąc jakiś projekt zachodzi konieczność zaimplementowania interfejsu do komunikacji człowiek-urządzenie.  W prostych konstrukcjach z reguły wystarcza kilka pirzycisków i świecących diod, jednak gdy robimy bardziej zaawansowane urządzenie warto byłoby zastanowić się, czy nie wygodnie byłoy dodać wyświetlacz LCD i zrobić na nim menu w którym pomieścimy tyle ustawień na ile nam pamięć kontrolera pozwoli.

Czytaj dalej...

Wyświetlacz z SSD1306 podłączony do Arduino

Gdy przychodzi do wyboru wyświetlacza dla Arduino opcji jest sporo. Dziś zajmiemy się niewielkim (0.96 cala) wyświetlaczem o rozdzielczości 128×64. Ma on jasny i wyraźny obraz. Ten egzemplarz akurat ma dziwną konfigurację podłączenia, ale o tym zaraz. Najpierw – jest on monochromatyczny ale jednak dwukolorowy :) Jak to możliwe? Ano pierwsze 16 linii ma piksele żółte, a reszta niebieskie. To zdjęcie chyba najlepiej oddaje to, o co chodzi z tym żółtym/niebieskim.

Czytaj dalej...