Przejdź do głównej zawartości

Programowanie mikrokontrolerów AVR cz. 1

Niniejszym rozpoczynam serię artykułów, których celem będzie zgromadzenie i udostępnienie programów ilustrujących różne aspekty programowania mikrokontrolerów AVR. Nie ukrywam, że będzie to seria przeznaczona przede wszystkim dla uczniów technikum, dla których prowadzę zajęcia z układów mikroprocesorowych i z programowania mikroprocesorów. Zaczniemy oczywiście od podstaw i od prostych mikrokontrolerów (posiadamy platformy testowo-uruchomieniowe dla ATtiny2313, w planach na "powakacje" są również ATmegi); oczywiście programy będą dotyczyły na początku elementarnej problematyki działania układów mikroprocesorowych, komunikacji ze "światem zewnętrznym" i użytkownikiem.
A dziś jeden prosty program (na zachętę), który napisaliśmy z uczniami w środę, 25 kwietnia, na sucho, na tablicy - latająca małpka ("@" przemieszcza się dookoła ekranu). Jednak na zajęciach program był przedstawiony łopatologicznie, napisany "metodą inżyniera Nachamowa". Tutaj zaś pojawiają się nowe elementy, poprawiające odrobinę m. in. stronę wizualną kodu źródłowego.
Zapraszam do śledzenia artykułów wszystkich początkujących. No i moich uczniów oczywiście, którzy za tydzień zaczynają miesięczną praktykę zawodową, więc będą mieli trochę czasu, żeby poćwiczyć programowanie.



Na koniec pytanie: dlaczego BASCOM?
Już odpowiadam: ze względu na popularność w środowiskach elektroników, dostępność materiałów, kursów, literatury (w skład zestawów kursowych, które zakupiliśmy, wchodzi świetna książka Piotra Góreckiego), dedykowanych kursom zestawów uruchomieniowych itd. Język C też wprowadzę, ale jeszcze nie teraz.

Komentarze

Popularne posty z tego bloga

Niesamowicie prosty czujnik zmierzchowy.

Tym razem zero programowania, będzie natomiast nostalgiczno-wspomnieniowy układzik, lekko zmodyfikowany.
Otóż kilka dni temu rozmawialiśmy w gronie znajomych o różnego rodzaju czujnikach zmierzchowych i czujnikach ruchu. Ponieważ należę do tych wariatów, co to hołdują jeszcze owej przestarzałej i kompletnie odrealnionej dziś zasadzie: "po co kupować, gdy można zrobić", stwierdziłem, że poskładam takie coś (czujnik zmierzchowy; sensor ruchu faktycznie lepiej nabyć, choćby ze względu na rozmiary ;)) i być może podłączę do jakiegoś mikrokontrolera. Przypomniało mi się też przy okazji, że znalazłem ostatnio w elektronicznych śmieciach stary fotorezystor (dla niewtajemniczonych: element zmieniający rezystancję, czyli opór elektryczny, pod wpływem działania strumienia światła) RPP130, jeden z kilku pozostałych po montowanych wieki temu układach tranzystorowych do zdalnego sterowania pracą urządzeń za pomocą latarki... No OK, nie było to specjalnie rozbudowane zdalne sterowanie ;)

Android i zewnętrzny moduł GPS

Od kilku dni jestem w posiadaniu smyrfona z Androidem 4.1.1 na pokładzie. Kwestie związane z wyborem systemu roztrząsałem już na G+, a ten artykuł tutaj ma konkretny temat, więc nie będę wyjaśniał po raz n-ty. Po prostu zwyciężyły popularność i ekosystem oraz przywiązanie do produktów sieciowych Google. Mniejsza.

Zbliża się sezon urlopowy :-) Moi podopieczni już mają wakacje, a ja wyjeżdżam wkrótce. W każdym bądź razie wakacje to podróże - samochodem, rowerem, na piechotę, żaglówką, motorówką, samolotem... Zaawansowane urządzenia mobilne przyzwyczaiły nas już do usług lokalizacyjnych, z których najważniejszą jest GPS (na dalszym planie mamy A-GPS, lokalizacje w oparciu o sieci WiFi itp.). Często korzystamy z programów, które w coraz ciekawszy sposób wiążą naszą lokalizację, pobraną z np. GPS-a, z przeróżnymi danymi, nieraz ocierając się o AR.
Każdy współczesny smartfon, a przynajmniej znakomita ich większość, wyposażona jest we wbudowany odbiornik sygnału lokalizacyjnego (GPS, GLONASS…

Po co mi to całe Arduino?

Oczywiście tytuł ma być jedynie prowokacją. Chociaż nie do końca - artykuł jest właśnie poświęcony pracy w Arduino IDE z mikrokontrolerami, ale bez płytek Arduino.
Czym jest Arduino - wiemy wszyscy, zarówno początkujący fani programowania elektroniki, jak i zaawansowani mikrokontrolerowcy. Jeśli jednak nie do końca wiemy, zachęcam do odwiedzenia strony domowej projektu (link 5 na końcu artykułu) oraz zerknięcia np. w poradnik (link 4).

Jakiś czas temu, przełamując się i zmieniając zdanie ("o 180 stopni" ;-)) nabyłem sobie Arduino Leonardo, głównie w celu jego "obwąchania" i zapoznania się z bogatym zbiorem bibliotek dostępnych dla tej platformy. Zgoda, różne biblioteki są dostępne niezależnie od Arduino, ale i tak się zdecydowałem. Dlaczego Leonardo? Otóż miałem ochotę przyrządzić dwie pieczenie na jednym ogniu - mieć Arduino i przetestować ATmegę 32u4. Dziś doskonale zdaję sobie sprawę, że żeby pobawić się Arduino nie trzeba go w ogóle posiadać... Ale po kolei.

Pi…