⚙️ AVR LAB: ATmega328P + C

Programowanie mikrokontrolerów AVR w języku C (GCC-AVR) — od podstaw architektury do projektów praktycznych

📚 Lekcje

🔧 BLOK A — Budowa i architektura AVR (4)
📘 Lekcja 1: Wprowadzenie do mikrokontrolerów AVR
Czym jest AVR, architektura RISC/Harvard, porównanie, rodziny układów
🗝️ Lekcja 2: Budowa wewnętrzna AVR
CPU, rejestry, SRAM/FLASH/EEPROM, porty I/O, zegar, reset
🧩 Lekcja 3: Peryferia w AVR — przegląd
Timery/liczniki, przerwania, ADC, PWM — co mamy i do czego służy
🎯 Lekcja 4: ATmega328P w praktyce
Pinout, porty, mapowanie pinów, zasilanie, schemat typowego układu
💻 BLOK B — Programowanie w C (2)
🧠 Lekcja 5: Podstawy języka C dla AVR
Struktura programu, main(), typy danych, operatory, instrukcje sterujące
📚 Lekcja 6: Biblioteki AVR i praca na rejestrach
avr/io.h, util/delay.h, operacje bitowe, maski, dobre praktyki
🛠️ BLOK C — Środowisko i narzędzia (1)
🧰 Lekcja 7: Toolchain, HEX, avrdude, Extreme Burner, FuseBity
Jak budować HEX, wgrywać program, ustawiać FuseBity i pracować wygodnie
⚡ BLOK D — Praktyka (15)
💡 Lekcja 8: Blink LED
Pierwszy program: konfiguracja pinu i miganie diodą
💡 Lekcja 9: Sterowanie wieloma diodami LED
Kilka wyjść, wzorce świecenia, ćwiczenia z maskami bitów
🖲️ Lekcja 10: Obsługa przycisku — wejścia GPIO
Pull-up, stan spoczynkowy, odczyt PINx, podstawy debouncingu
🔘 Lekcja 11: Przycisk + LED — logika sterowania
Przełączanie, tryby pracy, prosta „maszyna stanów"
🎵 Lekcja 12: Brzęczyk — sygnały i proste dźwięki
Generowanie tonu, częstotliwość, podstawowe melodie
⏱️ Lekcja 13: Timery — opóźnienia bez _delay_ms()
Timer0/Timer1, preskalery, porównanie, odmierzanie czasu
🌗 Lekcja 14: PWM — regulacja jasności LED
Tryby PWM, wypełnienie, płynne ściemnianie/rozjaśnianie
📊 Lekcja 15: PWM — sterowanie brzęczykiem
Dźwięk na PWM, zmiana częstotliwości i wypełnienia
🌈 Lekcja 16: Dioda RGB
Mieszanie kolorów, PWM na kanałach, sceny świetlne
🔢 Lekcja 17: Wyświetlacz 7-segmentowy — 1 cyfra
Segmenty, mapowanie, tablice znaków, podłączenie i testy
🔢 Lekcja 18: Wyświetlacz 7-segmentowy — multipleks
Multipleksowanie, odświeżanie, migotanie, sterowanie cyframi
🧮 Lekcja 19: Licznik z przyciskami
Zliczanie, reset, start/stop, ergonomia obsługi
⚡ Lekcja 20: Przerwania zewnętrzne
INT0/INT1, maski przerwań, reagowanie na zdarzenia
🔟 Lekcja 21: ADC — pomiar napięcia
Konfiguracja ADC, kanały, referencja, odczyt i interpretacja
🏆 Lekcja 22: Mini-projekt podsumowujący
Połączenie I/O, timerów, PWM, wyświetlacza i przycisków w jednym projekcie
← Powrót do strony głównej