tinyBrd 2.0: Wstęp do pracy z płytką

Cześć, w dzisiejszym artykule zajmiemy się płytką tinyBrd 2.0. Jest to niewielka płytka deweloperska oparta o procesor ATtiny84 wyposażona w specjalne złącze służące do zamontowania modułu komunikacji radiowej NRF24L01+. Jeżeli kliknęliście w linki to pewnie zauważyliście już, że połączenie tych dwóch urządzeń to nic innego jak super tanie arduino z możliwością komunikacji bezprzewodowej :) Pokażę Wam w jaki sposób dobrze polutować płytki oraz jak wgrać na tinyBrd pierwszy program.

Lutowanie

Zestaw który posiadam to dwa komplety składające się z tinyBrd 2.0, płytki prototypowej, modułu NRF24L01+ oraz modułu NRF24L01+ ze wzmacniaczem. Pokażę Wam jak polutować płytki tak, aby używanie ich było jak najbardziej praktyczne.

Będziemy potrzebowali goldpinów w rastrze 2,54 mm w wersji żeńskiej i męskiej. W przypadku męskich goldpinów polecam wersję dłuższą, która pozwoli nam na zamontowanie płytki prototypowej od dołu i jednocześnie da nam dostęp do wszystkich pinów procesora od góry.

Do każdego tinyBrd ucinamy dwie listewki męskich goldpinów po 9 pinów w jednej, natomiast do protoboarda tyle samo, tylko żeńskich. Teraz drobna uwaga: prawdopodobnie nie uda nam się uciąć ich idealnie równo i zawsze jeden pin trzeba będzie odliczyć na zmarnowanie, dlatego lepiej będzie jeżeli będziemy cięli trochę dalej i nadmiar spiłujemy niż mielibyśmy wyrzucić listewkę 8 dobrych pinów żeńskich :)

Lutujemy tinyBrd 2.0

Piny męskie należy włożyć tak, żeby długie końcówki wystawały z dołu płytki. Następnie przytrzymując listewki lutujemy po jednym pinie z każdej u upewniamy się że leżą równiutko w płytce. Jeżeli jest krzywo to podgrzewamy jeden jedyny lut jednocześnie pozycjonując listwę. Kiedy wszystko mamy już wstępnie wypozycjonowane możemy wpiąć płytkę w breadborda i przylutować resztę pinó dociskając płytkę do breadborda. Należy przy tym pamiętać, żeby nie przegrzewać pinów, bo może nam się roztopić breadboard ;)

Lutujemy płytkę prototypową

Ok, czas na płytkę prototypową. Jeżeli wlutowaliśmy męskie piny w tinyBrd relatywnie równo to nasza praca jest teraz ułatwiona. Wystarczy, że włożymy żeńskie gniazdka w męskie piny tinyBrd, a następnie nadziejemy na to płytkę prototypową, a całość na breadborda tak jak na zdjęciu poniżej:

Teraz możemy z łątwością przylutować żeńskie złącza do protoboarda pamiętając, żeby delikatnie przycisnąć całość palcem, aby nie odstawało.

Po zlutowaniu mój zestaw wygląda tak:

Instalacja płytki w Arduino IDE

Instalacja płytki jest dziecinnie prosta i sprowadza się praktycznie do dwóch kroków:

W Arduino IDE uruchamiamy menu Plik > Preferencje, a następnie dopisujemy do pola „Dodatkowe adresy URL do menedżera płytek” wartość

http://static.nettigo.pl/tinybrd/package_nettigo.pl_index.json

Kolejnym krokiem jest uruchomienie menedżera plików (Narzędzia > Płytka > Menedżer płytek…), wyszukanie frazy tinybrd i zainstalowanie odpowiedniego pakietu.

Od teraz na liście płytek powinniśmy znaleźć nasze tinyBrd, ale zanim je wybierzemy…

Arduino jako programator

tibyBrd 2.0 możemy programować oczywiście programatorem USBasp, który znajdziemy w sklepie Nettigo. Jeżeli jednak nie posiadamy takiego możemy wykorzystać w tym celu Arduino Uno. Pierwszym krokiem jest podłączenie naszej płytki Arduino do komputera i wgranie szkicu o nazwie Arduino ISP z menu Plik > Przykłady.

Teraz możemy podłączyć złącze oznaczone ICSP na Arduino do złącza ICSP na płytce tinyBrd. Pierwszy pin złącza na płytce Arduino oznacozny jest kropką w rogu, natomiast na tinyBrd znajdziemy białą gwiazdkę. Jeżeli dalej nie jesteśmy pewni który pin jest który możemy sprawdzić masy miernikiem ciągłości obwodu.

Podłączamy wszystkie piny na obu płytkach jeden do jednego z wyjątkiem pinu RST, z pinu RST na płytce tinyBrd musi wejść do cyfrowego pinu 10 na Arduino.

Teraz z menu Narzędzia Płytka wybieramy nasze tinyBrd taktowane 8 MHz, następnie ponownie wchodzimy w menu Narzędzia tym razem przechodząc do opcji Programator i wybieramy tam Arduino as ISP.

Teraz możemy wgrać najbardziej klasyczny przykład programu Arduino, czyli blink (zmieńmy 1 sekundę delayów na 100 ms, żeby widzieć różnicę pomiędzy wgranym przez nas programem, a domyślnym, który był na płytce.

#define LED 10

void setup() {
  pinMode(LED, OUTPUT);
}

void loop() {
  digitalWrite(LED, HIGH);
  delay(100); 
  digitalWrite(LED, LOW);
  delay(100);
}

Tadaam, teraz już wiemy jak programować nasze tinyBrd. W następnych artykułach pokażę Wam jak wykorzystać moc bibliotek stworzonych specjalnie dla tej płytki.