10M+ Electronic Components In Stock
ISO Certified
Warranty Included
Fast Delivery
Hard-to-Find Parts?
We Source Them.
REQUEST A QUOTE

ATtiny85: Konfiguracja pinów, diagram blokowy i programowanie

sty 07 2026
Źródło: DiGi-Electronics
Przeglądaj: 469

ATtiny85 to mały 8-bitowy mikrokontroler zaprojektowany do prostych zadań sterujących, gdzie miejsce i zużycie energii mają znaczenie. Łączy pamięć, timery, analogowe wejście oraz komunikację szeregową w obudowie 8-pinowej. Ten artykuł zawiera szczegółowe informacje o specyfikacji, rozmieszczeniu pinów, wewnętrznej strukturze, ustawieniach zasilania i zegara, programowaniu, układach oraz najczęstszych kwestiach.

Figure 1. ATtiny85

Przegląd ATtiny85 

ATtiny85 to kompaktowy mikrokontroler 8-bitowy, zaprojektowany do prostych zadań sterujących, gdzie przestrzeń, zużycie energii i liczba komponentów muszą być ograniczone. Jego 8-pinowy format pomaga zmniejszyć rozmiar układów, złożoność okablowania i koszty systemu, jednocześnie zapewniając podstawową funkcjonalność sterowania.

Pomimo długiej obecności na rynku, ATtiny85 pozostaje szeroko stosowany dzięki stabilności, solidnej dokumentacji oraz kompatybilności z popularnymi narzędziami programistycznymi. Działa w szerokim zakresie napięć i obsługuje wiele opcji zegara, co czyni go odpowiednim dla kompaktowych, niskoenergooszczędnych konstrukcji wymagających niezawodnego i przewidywalnego zachowania.

Specyfikacje techniczne ATtiny85 

Nie. of Pins8
CPURISC 8-Bit AVR
Napięcie robocze1,8 do 5,5 V
Pamięć programu8K
Typ pamięci programuFlash
RAM512 bajtów
EEPROM512 bajtów
Liczba kanałów ADC ADC10-Bit 4
Komparator1
PakietyPDIP (8-pinowy) SOIC (8-pinowy) TSSOP (8-pinowy) QFN/MLF (20-pinowy)
Oscylatordo 20 MHz
Timer (2)Timery 8-bitowe
Ulepszona moc przy resetowaniuTak
Timer włączenia zasilaniaTak
Piny I/O6
ProducentMikrochip
SPITak
I2CTak
Timer WatchdogTak
Wykrywanie wyłączenia (BOD)Tak
ResetTak
USI (Uniwersalny Interfejs Szeregowy)Tak
Minimalna temperatura pracy-40 C
Maksymalna temperatura pracy125 C

Konfiguracja pinoutu ATtiny85

Figure 2. ATtiny85 Pinout Configuration

PinNazwaGłówne funkcje
1PB5RESET, GPIO (jeśli bezpiecznik zmieniony)
2PB3GPIO, ADC
3PB4GPIO, ADC
4GNDGrunt
5PB0GPIO, PWM, MOSI
6PB1GPIO, PWM, MISO
7PB2GPIO, ADC, SCK
8VCCZasilacz

ATtiny85 jest dostępny w pakietach PDIP-8 oraz QFN/MLF-20. Oba mają ten sam układ wewnętrzny, ale układ pinów różni się. Obudowa PDIP-8 udostępnia jedynie podstawowe piny i jest łatwiejsza w użyciu w podstawowych układach, podczas gdy obudowa QFN/MLF-20 zawiera dodatkowe piny oznaczone jako niepodłączone.

Większość pinów obsługuje wiele funkcji. Pojedynczy pin może pełnić rolę cyfrowego wejścia lub wyjścia, odczytywać sygnały analogowe, generować wyjście PWM lub wspierać komunikację szeregową. Ta wielofunkcyjna konstrukcja pozwala ATtiny85 pozostać małym, jednocześnie oferując elastyczność. Pin RESET można również skonfigurować jako pin poprzez zmianę ustawień bezpiecznika, choć eliminuje to możliwość zewnętrznego resetu.

Diagram blokowy ATtiny85

Figure 3. ATtiny85 Block Diagram

ATtiny85 opiera się na rdzeniu przetwarzającym AVR, który wykonuje instrukcje przechowywane w pamięci Flash. jest używany do tymczasowych danych podczas pracy, natomiast EEPROM przechowuje dane nieulotne, które muszą być przechowywane po odłączeniu zasilania. Licznik programu, wskaźnik stosu oraz rejestry zarządzają przepływem instrukcji i przetwarzaniem danych.

Funkcje czasowe obsługiwane są przez dwa wewnętrzne timery 8-bitowe oraz timer watchdog. Watchdog zwiększa niezawodność, resetując urządzenie w przypadku zatrzymania normalnego wykonywania programu. Wewnętrzny oscylator dostarcza sygnał zegarowy, a scentralizowana kontrola czasu synchronizuje wszystkie moduły wewnętrzne.

Operacje wejściowe i wyjściowe są zarządzane przez rejestry portowe podłączone bezpośrednio do zewnętrznych pinów. Urządzenie integruje także układy analogowe, takie jak ADC i komparator. Wszystkie wewnętrzne bloki są połączone współdzielonymi ścieżkami danych, co umożliwia efektywną komunikację między pamięcią, logiką przetwarzania i operacjami I/O.

Ustawienia zasilania, zegara i bezpieczników ATtiny85

• ATtiny85 wyposażony jest w wewnętrzny oscylator RC, umożliwiający pracę bez zewnętrznych elementów zegara.

• Zewnętrzne źródła zegara lub kryształy mogą być stosowane, gdy wymagana jest większa dokładność pomiaru czasu.

• Ustawienia bezpieczników kontrolują źródło zegara, opóźnienie uruchamiania, poziom wykrywania wyłączenia napięcia oraz zachowanie pinu RESET.

• Praca przy niższych częstotliwościach taktowania zmniejsza zużycie energii i zakłócenia elektryczne.

• Wykrywanie wyłączeń napięcia zwiększa stabilność przy niskich napięciach zasilania, ale nieznacznie zwiększa pobór prądu.

Ograniczenia GPIO ATtiny85 i bezpieczna obsługa

• Piny GPIO są przeznaczone do sterowania sygnałem i nie mogą dostarczać zasilania do zewnętrznych obciążeń.

• LED-y podłączone do pinów GPIO wymagają rezystorów ograniczających prąd, aby zapobiec uszkodzeniom.

• Silniki, przekaźniki i inne urządzenia o wysokim prądzie muszą być sterowane za pomocą zewnętrznych tranzystorów lub MOSFET-ów.

• Wewnętrzne rezystory podciągające mogą być włączone, co ułatwia połączenia przycisków i przełączników.

• Wszystkie napięcia GPIO muszą pozostawać w określonych granicach, aby uniknąć trwałych uszkodzeń.

Możliwości ADC i analogowe ATtiny85

CechaOpis
Rozdzielczość ADC10-bitowy
Kanały wejścioweDo 4
Opcje odniesieniaVCC lub wewnętrzne odniesienie
Tryb specjalnySen ADC z redukcją szumów

ATtiny85 posiada wbudowany przetwornik analogowo-cyfrowy, który mierzy zmieniające się poziomy napięcia i przekształca je w wartości cyfrowe. Jakość pomiaru zależy od stabilnego napięcia odniesienia, czystych połączeń zasilania oraz prawidłowego kierowania sygnału. Użycie trybu ADC Noise Reduction sleep pomaga zmniejszyć wewnętrzne zakłócenia podczas konwersji, co poprawia spójność odczytu i ogólną niezawodność.

Komunikacja szeregowa ATtiny85 z USI

ATtiny85 obsługuje komunikację szeregową za pośrednictwem Uniwersalnego Interfejsu Szeregowego (USI). Ten elastyczny interfejs może być skonfigurowany za pomocą oprogramowania firmware, aby działać w trybie SPI lub wspierać komunikację w stylu I²C. Dzięki użyciu jednego wspólnego bloku sprzętowego urządzenie zachowuje kompaktowy rozmiar, jednocześnie umożliwiając podstawową wymianę danych.

Ponieważ USI w dużej mierze opiera się na sterowaniu oprogramowaniem, konieczne jest staranne zarządzanie czasem. Nadaje się do prostych i niskoszybkich zadań komunikacyjnych, ale oferuje mniej funkcji automatyzacji niż dedykowane peryferia SPI lub I²C stosowane w większych mikrokontrolerach.

Programowanie ATtiny85 przez Arduino IDE

Figure 4. ATtiny85 Programming Through the Arduino IDE

• ATtiny85 można zaprogramować w IDE Arduino po zainstalowaniu rdzenia kompatybilnego z ATtiny.

• Programowanie odbywa się za pomocą programatora USB lub Arduino skonfigurowanego jako ISP.

• Ustawienia płyty w IDE Arduino muszą odpowiadać wybranej częstotliwości zegara i napięciu pracy ATtiny85.

• PIN używany w kodzie różni się od fizycznego układu pinów, dlatego należy je dokładnie sprawdzić przed okablowaniem.

Minimalny niezawodny układ ATtiny85

Figure 5. Minimal Reliable ATtiny85 Circuit

Ten układ wykorzystuje tylko podstawowe komponenty niezbędne do stabilnej pracy. Piny VCC i GND dostarczają zasilanie, co pozwala na prawidłowe działanie logiki wewnętrznej. Wewnętrzny oscylator kontroluje czas, więc nie są potrzebne zewnętrzne elementy zegara.

Dioda LED podłączona przez rezystor 47 Ω demonstruje kontrolę wyjściową, jednocześnie chroniąc zarówno diodę LED, jak i pin GPIO. Pin RESET pozostaje dostępny do ponownego programowania lub restartu urządzenia. Dzięki bardzo niewielkiej liczbie zewnętrznych komponentów, takie rozwiązanie stanowi prostą i niezawodną podstawę do podstawowych zastosowań.

ATtiny85 Typowe problemy i szybkie kontrole

ProblemCo sprawdzić lub poprawić?
Przesyłanie kodu nie powiodłoSprawdź okablowanie ISP i potwierdź ustawienie bezpiecznika RESET
Nieprawidłowe wyczucie czasuWeryfikuj wybrane źródło zegara i konfigurację bezpiecznika
Niestabilne odczyty ADCPopraw uziemienie i dodaj odpowiednie kondensatory rozdzielające
Błędy komunikacyjnePrzejrzyj ustawienia i ustawienia czasowania USI
Przegrzewanie się pinówObniż prąd obciążenia i użyj zewnętrznych komponentów sterujących

Podsumowanie

ATtiny85 łączy podstawowe funkcje sterowania w bardzo kompaktowej formie. Jego specyfikacje, funkcje pinów, wewnętrzne bloki i ustawienia zasilania wyjaśniają, jak działa w rzeczywistych układach. Dzięki odpowiedniej obsłudze GPIO, zastosowaniu ADC, ustawieniu szeregowemu i minimalnemu układowi, ATtiny85 można jasno zrozumieć i zastosować w stabilnych, niskoenergooszczędnych projektach.

Najczęściej zadawane pytania [FAQ]

Ile mocy zużywa ATtiny85?

Zużycie energii zależy od napięcia zasilającego, częstotliwości zegara i aktywnych funkcji. Niższe częstotliwości taktowania i wyłączanie nieużywanych urządzeń peryferyjnych zmniejszają zużycie prądu.

Czy ATtiny85 potrzebuje zewnętrznego zegara?

Nie. ATtiny85 posiada wewnętrzny oscylator RC i może działać bez zewnętrznych elementów zegara. Zewnętrzny zegar jest potrzebny tylko dla większej dokładności pomiaru.

Czy pin RESET może być użyty jako zwykły pin I/O?

Tak. Pin RESET można skonfigurować jako GPIO przy użyciu ustawień bezpiecznika. Wyłącza to standardowe programowanie ISP i wymaga programowania wysokiego napięcia do ponownego przeprogramowania urządzenia.

Czy ATtiny85 może bezpośrednio sterować silnikami lub przekaźnikami?

Nie. Piny GPIO ATtiny85 służą tylko do sterowania sygnałem. Silniki i przekaźniki muszą być napędzane za pomocą zewnętrznych tranzystorów lub MOSFET-ów.

Dlaczego odczyty ADC ATtiny85 są niestabilne?

Niestabilne odczyty ADC zwykle są spowodowane szumem zasilania lub słabym uziemieniem. Dodanie odpowiednich kondensatorów rozdzielających i użycie trybu redukcji szumów ADC poprawiają stabilność.