
Historia europejskiego projektu – mikrokontroler AVR
Bardzo popularne obecnie mikrokontrolery z rodziny AVR mają swoją ciekawą i niejako zaskakującą historię, która zaczęła się w latach 90. XX wieku. Początkowo niepozorny projekt obecnie urósł wręcz do lidera w ofercie procesorów do prostych projektów.
Mikrokontrolery AVR są doskonałym przykładem, jak niepozorne marzenia mogą przerodzić się w wielki projekt. Zapewne nie zdawali sobie z tego sprawy dwaj studenci Norweskiego Uniwersytetu Naukowo-Technicznego (fotografia 1, autor: Ssolbergj, licencja: Creative Commons), którzy opracowali platformę AVR. Istnieje sugestia, że symbol AVR pochodzi od pierwszych liter imion twórców (Alf, Vegard oraz RISC jako Reduced Instruction Set Computer – komputer ze zredukowaną listą instrukcji).
Ten projekt później został przejęty przez Atmel Norway, spółkę zależną od Atmel, ulokowaną w Norwegii. To tam był rozwijany w sensie sprzętowym jak i narzędziowym. Później amerykańska firma Atmel doprowadziła do znacznego rozwinięcia oferty. Do dyspozycji użytkowników są modele, różniące się zasobami przede wszystkim w sensie wielkości pamięci Flash, przeznaczonej na program, wewnętrznej pamięci operacyjnej RAM, pamięci nieulotnej EEPROM, jak również podzespołami peryferyjnymi do komunikacji na zewnątrz. Ostatecznie Atmel połączył swoje siły z firmą Microchip. Szeroka gama oferowanych modeli spowodowała, że ten europejski wynalazek stał się popularny na całym świecie.
Konkurencja dla rodziny C51
Trudno oprzeć się wrażeniu, że początkowa oferta mikrokontrolerów AVR była konkurencyjna dla popularnej ówcześnie rodziny mikrokontrolerów określanych jako C51. Flagowe układy tej rodziny to AT89C51 – mikrokontroler posiadający cztery porty wejścia-wyjścia oraz mikrokontroler AT89C2051 – model zredukowany do dwóch portów (układy z tej rodziny są/były produkowane przez wiele firm a podane symbole dotyczą oferty Atmela). Wystarczy popatrzeć na rozkład wyprowadzeń mikrokontrolera AT90S8515 w konfrontacji z AT89C51 (rysunek 2).
Występuje duża zbieżność, ale nie da się wyjąć z konstrukcji procesora AT89C51 i w to miejsce wstawić AT90S8515 (pomijając już kwestię programu, mikrokontroler C51 oraz AVR mają całkowicie inny zestaw wykonywanych instrukcji, ale dysponując programem źródłowym taka adaptacja jest możliwa). Istotną występującą różnicą jest sygnał Reset: dla AVR jest aktywny stanem niskim, natomiast C51 resetuje się stanem wysokim. Dodatkowo występuje odmienne znaczenie pinów o numerach 29…31, jednak w sytuacjach, gdy nie jest używana dodatkowa pamięć, przyłączona do mikrokontrolera, nie mają one znaczenia, gdyż raczej należy uznać, że AVR jest „nadbudową” dla C51. Podobnie jest w przypadku „zredukowanego” modelu zawierającego po dwa porty (rysunek 3). Tu również występuje identyczna różnica dotycząca sygnału Reset.
Mikrokontrolery AVR dały konstruktorom znacząco większe zasoby sprzętowe. O ile klasyczny C51 oferował z istotnych kontrolerów jedynie dwa timery oraz obsługę transmisji szeregowej, to AVR jest znacznie bogatszy we wbudowane układy peryferyjne oraz posiada wewnętrzną pamięć EEPROM.
Inną cechą, która znacząco wpłynęła na popularność mikrokontrolerów AVR jest fakt, że mogą one być programowane w docelowej konstrukcji. Oznacza to, że w przeciwieństwie do C51 nie ma potrzeby wyjmowania układu z płytki i umieszczania go w odpowiednim programatorze, by w jego pamięci Flash umieścić nasz nowy program (z czasem taką cechę zyskały również układy C51). Znacząco komplikuje to proces opracowania docelowego programu i zmusza do stosowania podstawek w przypadku obudów typu DIP lub PLCC. Mikrokontrolery AVR mają możliwość wpisania do nich kodu programu w docelowej konstrukcji. Coraz większe ich możliwości niosą za sobą „zapotrzebowanie” na większą liczbę wyprowadzeń i to wymusza stosowanie obudów przewidzianych do lutowania powierzchniowego. Pozwala to na zastosowanie ich nawet w konstrukcjach hobbystycznych, gdyż przeniesienie kodu programu z komputera PC do pamięci mikrokontrolera nie wymaga skomplikowanego wyposażenia sprzętowego.
(…)
——– ciach! ——–
To jest tylko fragment artykułu, którego pełna wersja ukazała się w lipcowym numerze czasopisma Zrozumieć Elektronikę (ZE 7/2025). Pełną wersję czasopisma znajdziesz pod tym linkiem. Natomiast niepełna, okrojona wersja, pozwalająca zapoznać się z zawartością numeru ZE 7/2025 znajduje się tutaj.
Andrzej Pawluczuk
apawluczuk@vp.pl
Uwaga! Osoby, które nie są (jeszcze) stałymi Patronami ZE, mogą nabyć PDF-y z pełną wersję tego numeru oraz wszystkich innych numerów czasopisma wydanych od stycznia 2023, „stawiając kawę” (10 złotych za jeden numer czasopisma w postaci pliku PDF).
W tym celu należy kliknąć link (https://buycoffee.to/piotr-gorecki), lub poniższy obrazek
Następnie wybrać – Postaw kawę za:
– jeśli jeden numer ZE – 10 zł,
– jeśli kilka numerów ZE – Własna kwota. I tu wpisać kwotę zależną od liczby zamawianych numerów – wydań (N x 10 zł),
Wpisać imię nazwisko.
Podać adres e-mail.
Koniecznie zaznaczyć: „Chcę dodać dedykację/Wiadomość dla Twórcy” i tu zawsze trzeba wpisać, który numer lub numery ZE mamy wysłać na podany adres e-mailowy. Jeśli ma to być numer z tym artykułem trzeba zaznaczyć, że chodzi o ZE 7/2025.
UWAGA!!! E-mail z linkiem do materiałów (Smash) wysyłamy zazwyczaj w ciągu 24 godzin. Czasem zdarza się jednak, że trafia do spamu. Jeśli więc nie pojawi się w ciągu 48 godzin prosimy sprawdzić w folderze spam, a ewentualny problem zgłosić na adres: kontakt@piotr-gorecki.pl.