Witam wszystkich!
Mam nadzieję, że u was wszystko w porządku i będziecie się dobrze bawić.
Dzisiaj, zamierzam przedstawić wam szczegółowe wprowadzenie do ATmega328. ATmega328 jest mikrokontrolerem typu AVR (Advanced Virtual RISC). Obsługuje on 8-bitowe przetwarzanie danych. ATmega328 posiada 32 KB wewnętrznej pamięci flash.
ATmega328 posiada 1 KB pamięci EEPROM (Electrically Erasable Programmable Read-Only Memory). Ta właściwość pokazuje, że jeśli zasilanie elektryczne dostarczane do mikrokontrolera jest usunięte, nawet wtedy może on przechowywać dane i może dostarczać wyniki po dostarczeniu mu zasilania elektrycznego. Ponadto ATmega328 posiada 2 KB pamięci SRAM (Static Random Access Memory). Inne cechy zostaną wyjaśnione później. ATmega328 posiada kilka różnych cech, które sprawiają, że jest to najpopularniejsze urządzenie na dzisiejszym rynku. Cechy te składają się z zaawansowanej architektury RISC, dobrej wydajności, niskiego zużycia energii, timera czasu rzeczywistego z oddzielnym oscylatorem, sześciu pinów PWM, programowalnego szeregowego USART, blokady programowania dla bezpieczeństwa oprogramowania, przepustowości do 20 MIPS itp. Kolejne szczegóły dotyczące ATmega 328 zostaną podane w dalszej części tego rozdziału.
Uwaga: Podaję tu link do pobrania specyfikacji Atmega328, chociaż po przeczytaniu tego artykułu nie będzie on potrzebny.
Wprowadzenie do ATmega328
ATmega328 jest 8-bitowym, 28-pinowym mikrokontrolerem AVR, produkowanym przez firmę Microchip, pracującym w architekturze RISC i posiadającym pamięć programową typu flash o pojemności 32 KB.
Atmega328 jest mikrokontrolerem, wykorzystywanym w podstawowych płytkach Arduino tj. Arduino UNO, Arduino Pro Mini oraz Arduino Nano.
Posiada pamięć EEPROM 1 KB, a jego SRAM posiada pamięć 2 KB.
Posiada osiem pinów dla operacji ADC, które wszystkie razem tworzą PortA (PA0 – PA7).
Posiada również trzy wbudowane timery, dwa z nich to timery 8-bitowe, podczas gdy trzeci to timer 16-bitowy.
Zapewne słyszałeś o Arduino UNO, UNO jest oparte na mikrokontrolerze Atmega328. Jest to serce UNO.
Pracuje w zakresie napięć od 3,3 V do 5,5 V, ale standardowo używamy napięcia 5 V.
Jego doskonałe cechy to ekonomiczność, niskie zużycie energii, blokada programowania dla celów bezpieczeństwa, timer czasu rzeczywistego z oddzielnym oscylatorem.
Zwykle jest używany w aplikacjach systemów wbudowanych. Powinieneś rzucić okiem na te z życia wzięte przykłady z systemów wbudowanych. Wszystkie z nich możemy zaprojektować używając tego mikrokontrolera.
Poniższa tabela przedstawia kompletne funkcje ATmega328:
Piny ATmega328
ATmega-328 to Mikrokontroler AVR posiadający w sumie dwadzieścia osiem (28) pinów.
Wszystkie piny w kolejności chronologicznej, są wymienione w tabeli pokazanej na rysunku poniżej.
Teraz przyjrzyjmy się szczegółowo rozmieszczeniu pinów w Atmega328.
Rozkład pinów ATmega328
Poprzez schemat rozkładu pinów, możemy zrozumieć konfigurację pinów dowolnego urządzenia elektronicznego, więc kiedy pracujesz nad dowolnym projekcie inżynierskim, musisz najpierw przeczytać rozkład pinów komponentów.
Schemat wyprowadzeń ATmega328 jest przedstawiony na poniższym rysunku:
Opis pinów ATmega328
Funkcje przypisane do poszczególnych pinów muszą być znane, aby móc właściwie korzystać z urządzenia.
Piny ATmega-328 są podzielone na różne porty, które są szczegółowo opisane poniżej.
VCC jest cyfrowym napięciem zasilania.
AVCC to pin napięcia zasilania dla przetwornika analogowo-cyfrowego.
GND oznacza masę i ma wartość 0 V.
- Port A składa się z pinów od PA0 do PA7. Piny te służą jako wejście analogowe do przetworników analogowo-cyfrowych. Jeśli nie jest używany konwerter analogowo-cyfrowy, port A działa jako ośmio (8) bitowy dwukierunkowy port wejścia/wyjścia.
- Port B składa się z pinów od PB0 do PB7. Ten port jest 8-bitowym portem dwukierunkowym z wewnętrznym rezystorem podciągającym.
- Port C składa się z pinów od PC0 do PC7. Bufory wyjściowe portu C mają symetryczną charakterystykę wysterowania z możliwością pracy jako źródło jak i z możliwością pracy jako upust.
- Port D składa się z pinów od PD0 do PD7.Jest to również 8-bitowy port wejścia/wyjścia posiadający wewnętrzny rezystor podciągający.
Wszystkie porty AVR pokazane są na rysunku poniżej.
AREF jest analogowym pinem referencyjnym dla przetwornika analogowo-cyfrowego.
Tak w skrócie wyglądają wszystkie piny w mikrokontrolerze AVR ATmega328.
Architektura ATmega328
Architektura urządzenia prezentuje informacje na temat danego urządzenia.
Architektura ATmega-328 została przedstawiona na rysunku poniżej.
Pamięć ATmega328
ATmega 328 posiada trzy rodzaje pamięci o nazwach:
- Pamięć Flash: 32 KB. Jest to programowalna pamięć ROM (Read-Only Memory). Jest to pamięć nieulotna.
- SRAM: 2 KB. Skrót od Static Random Access Memory. Jest to pamięć ulotna, tzn. dane zostaną usunięte po odłączeniu zasilania.
- EEPROM: 1 KB. Skrót od Electrically Erasable Programmable Read-Only Memory (elektrycznie kasowalna programowalna pamięć tylko do odczytu).
Przestrzenie pamięci AVR pokazane są na poniższym rysunku.
Rejestry ATmega328
ATmega-328 posiada trzydzieści dwa (32) rejestry ogólnego przeznaczenia (GP).
Wszystkie te rejestry są częścią pamięci SRAM (Static Random Access Memory).
Wszystkie rejestry przedstawione są na rysunku poniżej.
Pakiety ATmega328
Różne wersje tego samego urządzenia są oznaczane przez różne pakiety tego urządzenia.
Każdy pakiet ma inne wymiary, w celu łatwego rozróżnienia.
Pakiety ATmega 328 podane są w tabeli przedstawionej na rysunku poniżej.
Schemat blokowy ATmega328
Schemat blokowy pokazuje wewnętrzne obwody i przepływ programu dowolnego urządzenia.
Schemat blokowy układu ATmega 328 przedstawiony jest na rysunku poniżej.
Funkcje ATmega328
Do wykonania dowolnego zadania możemy wybrać urządzenie na podstawie jego funkcji, tzn. czy jego funkcje pasują do uzyskania pożądanych rezultatów, czy też nie.
Niektóre z głównych funkcji Mikrokontrolera AVR ATmega328 są przedstawione w tabeli na rysunku poniżej.
ATmega328 i Arduino
ATmega328 jest mikrokontrolerem zastosowanym w płytce Arduino UNO.
Kiedy wgrywamy kod w Arduino UNO, jest on tak naprawdę wgrywany do mikrokontrolera Atmega328.
W pamięci flash mikrokontrolera Atmega328 preinstalowany jest sterownik programowy zwany bootloaderem, dzięki czemu jest on kompatybilny z Arduino IDE.
AVR Atmega328 podłączony do Arduino jest pokazany na poniższym zdjęciu:
Piny ATmega328 i Arduino
Piny ATmega328 są podłączone do odpowiednich pinów Arduino.
Ich wzajemne połączenie przedstawia schemat rozkładu pinów zobrazowany na rysunku poniżej.
W oznaczonej sekcji pinów analogowych znajdują się piny Arduino które są połączone z odpowiednimi pinami mikrokontrolera AVR ATmega-328.
Opisałem oba piny przed sobą, pomoże to w łatwiejszym zrozumieniu.
Jeśli chcesz pracować na tej płytce Arduino, musisz spróbować tych projektów Arduino dla początkujących. Pomogą ci one w opanowaniu Arduino.
Zastosowania Atmega328
Kompletny pakiet zawierający ATmega 328 i Arduino może być użyty w kilku różnych codziennych aplikacjach.
Może być stosowany w projektach systemów wbudowanych.
Może być również stosowany w robotyce.
Za jego pomocą może być również zaprojektowany quadcopter, a nawet mały samolot.
Za pomocą tego urządzenia można również przygotować systemy monitorowania i zarządzania energią.
Zaprojektowałem ten system bezpieczeństwa domowego przy użyciu Arduino UNO. Powinieneś rzucić na niego okiem.
Jak rozpocząć pracę na Atmega328
Jeśli chcesz zacząć pracować na tym mikrokontrolerze, to proponuję zrobić to za pomocą Arduino.
Zaletą używania Arduino jest to, że możesz korzystać z wszystkich wbudowanych bibliotek, co znacznie ułatwi pracę.
Po zaprojektowaniu projektu na Arduino, następnie zaprojektuj podstawowy obwód Atmega-328, który jest dość prosty i który omówiłem powyżej.
Teraz musisz być ostrożny podczas korzystania z jego pinów. Piny Atmega328 i Arduino są omówione powyżej.
Kolejną rzeczą, o której należy wspomnieć jest to, że przed rozpoczęciem pracy na sprzęcie, należy najpierw zaprojektować jego symulację w programie Proteus.
Pobierz bibliotekę Arduino dla Proteusa, a następnie zaprojektuj na niej swój projekt.
Po potwierdzeniu, że wszystko jest poprawne, a następnie zaprojektować jego obwody na Wero Board lub PCB (Printed Circuit Board) i masz gotowy projekt.
Poradnik Wprowadzenie do ATmega328 zawiera szczegółowe omówienie podstawowych zastosowań ATmega 328. W pełni przedstawiłem wszystkie niezbędne szczegóły dotyczące użycia mikrokontrolera AVR. Jeśli masz jakieś problemy, pisz. Nasz zespół jest zawsze tutaj, aby wam pomóc.
W kolejnych poradnikach będę dzielił się z wami innymi niesamowitymi tematami.
Tak więc, do tego czasu, uważajcie na siebie