Miesiąc: marzec 2010

Arduino Bluetooth na Ubuntu

Arduino Bluetooth – czyli Arduino bez portu USB, a zamiast tego moduł Bluetooth. Rozwiązanie idealne gdy potrzebna jest komunikacja bezprzewodowa z Arduino. Najpierw – kilka różnic w stosunku do zwykłego Arduino Duemilanove. Arduino BT jest oparte o ATmega168 – czyli mamy do dyspozycji trochę mniej pamięci. Nie ma portu USB, więc musimy zasilać Arduino BT we własnym zakresie. Jeśli już o zasilaniu mowa – Arduino BT jest wrażliwe na polaryzację zasilania, więc uważnie podłączajcie masę i Vcc do płytki. Na dodatek maksymalne napięcie zasilania płytki to tylko 5.5V!. Na osłodę – dzięki konwerterowi DC/DC minimalne napięcie zasilające to tylko 1.2V.

Czytaj dalej...

Przesuwane diody

Ostatnim z elementów Arduino Starter Kitu, który jeszcze nie doczekał się opisu na tym blogu jest niepozorny układ scalony – rejestr przesuwny. Jest układ 74HC595, rejestr przesuwny typu SIPO (Serial-In, Parallel-Out) o 8 wyjściach równoległych. Rejestr przesuwny (ang. shift register) jest układem posiadającym wejście szeregowe i kilka (zazwyczaj 8) wyjść równoległych. Co to znaczy? Z każdą zmianą zegara na wejściu, stany wyjść są przesuwane o jeden. Czyli stan wyjścia 1 jest przepisywany do wyjścia 2, 2 do 3, itd. Stan wejścia 1 jest ustalany na podstawie stanu wejścia szeregowego. Do czego można to zastosować w praktyce? Każde miejsce które potrzebuje

Czytaj dalej...

Temperatura i LCD

W ofercie Nettigo dziś pojawił się zestaw LCD do Arduino – jest to moduł LCD alfanumeryczny, 2×16 z przylutowaną złączką pasującą do płytki prototypowej, oraz potencjometr 10 kΩ, liniowy do regulacji kontrastu. Moduł LCD posiada kontroler zgodny z HD44780, co oznacza, że biblioteka LiquidCrystal będzie go obsługiwała. Jak go podłączyć? Zacznijmy od kodu: #include <LiquidCrystal.h> float temp; LiquidCrystal lcd (12,11,10,9,8,7); void setup() {   analogReference(EXTERNAL); }; void loop () {   temp = analogRead(0)*3.3/1024.0;   temp = temp – 0.5;   temp = temp / 0.01;   delay(500);   lcd.print(„Temp: „);   lcd.print(temp);   lcd.print(” „);   lcd.setCursor(0,0); }; Obsługa LCD w podstawowym zakresie sprowadza się do podłączenia go (o tym za chwilę), zainicjowaniu go: LiquidCrystal lcd (12,11,10,9,8,7); Powyższe definiuje

Czytaj dalej...