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 ;)

Aktualizacja oprogramowania układowego w ESP-01 do najnowszej wersji NodeMCU

Oprogramowanie i projekt NodeMCU cieszą się niesłabnącym zainteresowaniem świata konstruktorów urządzeń IoT, zatem co jakiś czas warto odświeżyć sobie firmware w naszych płytkach ESP. Osobiście jestem przeciwnikiem zmienienia czegoś, co dobrze działa, tylko dla zasady czy z chęci cieszenia się świadomością posiadania najnowszej wersji, ale tym razem chodzi jednak o coś innego – zwiększenie funkcjonalności i zapewnienie poprawnego działania oraz kompatybilności z najnowszymi projektami i bibliotekami. W tytule tego artykułu jest mowa o najprostszych płytkach z układem ESP8266 – ESP-01 . To właśnie w oparciu o ten model opracowałem płytkę prototypową, o której pisałem w poprzednim rozdziale. Dotychczas wszystkie moje płytki ESP miały na pokładzie oprogramowanie NodeMCU w wersji 0.9.5 . Zorientowani choć trochę w temacie od razu zauważą (Google? Bing?), że wersja ta ma już co najmniej dwa lata... Najwyższy czas zatem na aktualizację.

Płytka prototypowa na bazie ESP8266 (ESP-01)

To nie jest kolejny artykuł traktujący od początku do... nieco dalej (bo na pewno nie do końca) o płytkach ESP8266 . Żeby się dowiedzieć, co to takiego, odwiedźcie proszę np. tę stronę (oraz wiele innych – poproście o pomoc Waszą ulubioną wyszukiwarkę): http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family . No ale żeby nie było, ESP8266 to układ zawierający na pokładzie wydajny mikrokontroler z rdzeniem RISC-owym, taktowany zegarem 40MHz (wersja, o której jest ten wpis) lub 80MHz, 512KB pamięci flash i podsystem komunikacji przez sieć WiFi . Jest powszechnie wykorzystywany jako swego rodzaju karta sieciowa do połączeń bezprzewodowych naszych urządzeń IoT , które budujemy w zaciszu domowych laboratoriów (i nie tylko). Układ montowany jest na płytkach występujących w kilku wersjach, różniących się przede wszystkim liczbą wyprowadzeń uniwersalnych, czyli GPIO – im większa liczba, tym większe możliwości wykorzystania układu (więcej urządzeń peryferyjnych itp.). Są też pewne