1. Czym są peryferia?
Peryferia to wyspecjalizowane bloki sprzętowe wbudowane w mikrokontroler, które realizują konkretne zadania bez ciągłego „pilnowania” przez CPU. Dzięki nim AVR może mierzyć czas, generować PWM, reagować na zdarzenia i przetwarzać sygnały analogowe.
2. Timery i liczniki
Timery to jedne z najważniejszych peryferiów w AVR. Służą do odmierzania czasu, generowania przerwań okresowych oraz tworzenia sygnałów PWM.
- liczenie taktów zegara (z preskalerem),
- odmierzanie opóźnień,
- generowanie przerwań czasowych,
- podstawa działania PWM.
_delay_ms() blokuje CPU – timery tego nie robią.
3. PWM – modulacja szerokości impulsu
PWM (Pulse Width Modulation) pozwala sterować „płynnie” elementami cyfrowymi, np. jasnością LED lub głośnością brzęczyka, mimo że wyjście jest tylko 0/1.
- częstotliwość sygnału – jak często pojawia się impuls,
- wypełnienie (duty cycle) – jak długo impuls jest w stanie wysokim.
4. Przerwania – reakcja natychmiastowa
Przerwanie to mechanizm, który powoduje natychmiastowe wykonanie specjalnej procedury w odpowiedzi na zdarzenie, np.:
- naciśnięcie przycisku,
- przepełnienie timera,
- zakończenie konwersji ADC.
Dzięki przerwaniom program nie musi „ciągle sprawdzać” stanu – AVR sam reaguje, gdy coś się wydarzy.
5. ADC – przetwornik analogowo-cyfrowy
ADC umożliwia pomiar napięć analogowych i zamianę ich na wartości cyfrowe, które może przetwarzać CPU.
- czujniki temperatury, światła, potencjometry,
- zakres zwykle 0–Vref,
- wynik jako liczba (np. 0–1023 dla 10-bitowego ADC).
6. Tabela – peryferia w skrócie
| Peryferium | Do czego służy |
|---|---|
| Timer / Counter | Czas, opóźnienia, PWM, przerwania |
| PWM | Regulacja jasności, dźwięk |
| Przerwania | Natychmiastowa reakcja na zdarzenia |
| ADC | Pomiar sygnałów analogowych |
7. Podsumowanie
- Peryferia odciążają CPU.
- Timery są podstawą czasu i PWM.
- Przerwania umożliwiają reakcję na zdarzenia.
- ADC pozwala „widzieć” sygnały analogowe.