1. ATmega328P – podstawowe informacje
ATmega328P to 8-bitowy mikrokontroler AVR, znany m.in. z Arduino UNO, ale w tym kursie używany bez warstwy Arduino. Pracujemy bezpośrednio na rejestrach, co daje pełną kontrolę nad sprzętem.
- 8-bitowy CPU RISC
- 32 kB FLASH
- 2 kB SRAM
- 1 kB EEPROM
- 23 linie GPIO
2. Porty i piny – jak je czytać?
Piny mikrokontrolera są pogrupowane w porty:
| Port | Piny | Typowe zastosowanie |
|---|---|---|
| PORTB | PB0–PB5 | SPI, LED, PWM |
| PORTC | PC0–PC5 | ADC, I2C |
| PORTD | PD0–PD7 | UART, przerwania, GPIO |
3. Zasilanie mikrokontrolera
Aby ATmega328P działała poprawnie, musi być prawidłowo zasilona. Najczęściej stosowane napięcie to 5 V (lub 3.3 V w wersjach low-power).
- VCC – zasilanie części cyfrowej
- AVCC – zasilanie ADC
- GND – masa
4. RESET – po co i jak?
Pin RESET służy do restartu mikrokontrolera. W typowym układzie:
- podciągnięty do VCC rezystorem (np. 10 kΩ),
- chwilowe zwarcie do GND powoduje reset.
5. Zegar – serce układu
Mikrokontroler potrzebuje zegara do pracy. ATmega328P może korzystać z:
- wewnętrznego oscylatora (np. 8 MHz),
- zewnętrznego rezonatora (np. 16 MHz).
Wybór źródła zegara odbywa się przez FuseBity.
6. Minimalny schemat uruchomieniowy
Aby ATmega328P działała, wystarczy:
- zasilanie VCC/AVCC + GND,
- rezystor RESET,
- źródło zegara (wewnętrzne lub zewnętrzne).