ATmega328P jedan je od najpopularnijih DIY mikrokontrolera na svijetu. Ovaj mikrokontroler s jednim čipom dobar je izbor za one koji se upuštaju u DIY elektroniku i nalazi se na posljednjoj generaciji Arduino Unosa (zajedno s drugim mikrokontrolerskim pločama). Ali što trebate znati o ATmega328P prije nego počnete koristiti svoj Arduino?

Što je ATmega328P mikrokontroler?

Kreiran od strane Atmela, ATmega328P je mikrokontroler s jednim čipom temeljen na 8-bitnoj RISC procesorskoj jezgri. Ovaj mali mikrokontroler ima malu potrošnju energije i pristupačan je, što ga čini izvrsnim izborom za različite primjene, uključujući DIY projekte koje želite napraviti.

Čip ATmega328P godinama je istaknut kao istaknuti dio Arduina. Arduino Uno koristi ovaj mikrokontroler, zajedno s Arduino Pro Mini i Arduino Nano pločama. Zbog toga je iznimno uobičajena u prostoru DIY elektronike i vrijedi naučiti o njenim mogućnostima ako planirate koristiti ove ploče.

Arduino ploče koje koriste mikrokontroler ATmega328P

instagram viewer
Kredit za sliku: Arduino trgovina

ATmega328P nalazi se na Arduino Uno i Arduino Nano mikrokontrolerskim pločama, dva najpopularnija Arduino proizvoda. Ovaj čip također možete kupiti kao samostalni proizvod ako ga želite testirati bez ploče mikrokontrolera, iako će to biti izazovan način za početak. Možete koristiti naš praktični vodič da biste saznali više o različite vrste Arduino mikrokontrolerskih ploča.

Specifikacije podatkovne tablice ATmega328P

ATmega328P ima iznenađujuće gustu podatkovnu tablicu za tako mali čip. Postoji niz specifikacija kojih morate biti svjesni prije nego što počnete pisati kod za svoj mikrokontroler. Rastavili smo ih kako bismo lakše razumjeli ograničenja i ograničenja ovog čipa. Počnimo s osnovnim specifikacijama kako bismo vam dali ideju o tome kako izgleda ATmega328P.

  • CPU: 8-bitni AVR s maksimalnom brzinom od 20MHz
  • Brza memorija: 32kB ugrađena bljeskalica
  • SRAM: 2kB
  • EEPROM: 1kB
  • Broj pinova: 28 ili 32 (ovisno o vrsti paketa)
  • Kapacitivni dodirni kanali: 16
  • Maksimalni I/O pinovi: 23
  • Vanjski prekidi: 2

Svaka od ovih različitih specifikacija igra svoju ulogu u stvaranju ATmega328P tako dobro prilagođenog za korištenje s razvojnim pločama poput Arduina. Ali što išta od toga zapravo znači?

  • CPU: CPU na ATmega328P čipu je 8-bitni CPU temeljen na AVR RISC. RISC je kratica za "računalo sa smanjenim skupom instrukcija" i vrsta je procesora dizajniranog da pojednostavi pojedinačne zadatke koje računalo obavlja. Nasuprot tome, Intel ili AMD CPU vašeg računala vjerojatno je CISC (complex instruction set computer) procesor.
  • Brza memorija: Flash je vrsta trajne memorije koja se koristi za trajnu pohranu. ATmega328P je opremljen sa samo 32kB flash memorije, iako je to dovoljno za dosta koda. Možete naučiti o razlike između hlapljive i postojane memorije na web stranici MUO.
  • SRAM: SRAM je kratica za "statičku memoriju s izravnim pristupom". Ova memorija igra istu ulogu kao RAM u vašem računalu, osiguravajući ATmega328P čipu privremenu memoriju za pohranu podataka i varijabli dok prolazi kroz kod.
  • EEPROM: Ovo je vrsta bajt-brisive memorije koja se koristi za pohranjivanje malih količina podataka. Za razliku od SRAM-a, EEPROM je postojan i zadržat će svoje podatke kada se ATmega328P čip ne napaja.

ATmega328P Pinout dijagram

Gornji dijagram pinouta ATmega328P prikazuje različite pinove na ATmega328P DIP čipu i pinove na Arduino Uno ploči. Ovo bi vam trebalo dati dobru ideju o tome kako ovaj čip i popularna mikrokontrolerska ploča rade zajedno.

ATmega328P je svestran čip s raznim primjenama. Kao takav, dostupan je niz različitih pakiranja za ovaj čip, sva u različitim oblicima i s različitim vrstama olova. TQFP (quad-flat package), MLF/VQFN (micro leadframe ili quad-flat no-leads) i DIP (dual in-line package) najčešći su od ovih paketa.

Originalne Arduino Uno ploče koriste DIP varijantu ATmega328P čipa (aka ATmega328P-PU), a to znači da se čip može ukloniti i zamijeniti (za razliku od ATmega328P-AU). Druge vrste Arduino ploča koriste različite ATmega čipove tipa quad-flat paketa i oni se ne mogu ukloniti.

ATmega328P i Arduino Uno ograničenja

Kao i svaki mikrokontrolerski čip, ATmega328P dolazi s određenim ograničenjima koja morate uzeti u obzir prije nego što odlučite raditi s njim. Ova ograničenja također se odnose na Arduino ploče koje koriste ove čipove.

Mali SRAM proračun

Čip ATmega328P dolazi s 2 kB SRAM-a, a to je dovoljno za većinu projekata. Međutim, za one koji žele koristiti više biblioteka i kod s puno varijabli, može biti lako ostati bez SRAM-a, uzrokujući kvar vašeg programa.

Programeri koji rade s Arduino pločama imaju veliku kontrolu nad upravljanjem memorijom zahvaljujući upotrebi C++. Tekst, slike i druga unaprijed izrađena sredstva mogu se pohraniti u flash memoriju kao način da se oslobodi dodatna memorija za programe koje izvodite, poboljšavajući svoj SRAM proračun.

Ograničena snaga obrade

CPU od 20 Hz koji se nalazi na ATmega328P čipu izvrstan je za pokretanje jednostavnog koda, ali nudi ograničenu procesorsku snagu za složene aplikacije. To znači da nije prikladan za stvari poput prepoznavanja govora, dubokog učenja ili drugih uobičajenih zadataka mikrokontrolera.

Rješavanje ovog problema nije moguće s ATmega328P. Ako trebate više snage, morat ćete potražiti prikladniju ploču mikrokontrolera za vaš zadatak želi izvesti, ali na tržištu postoji mnogo opcija koje vam daju pristup onome što vam je potrebno.

Prednosti ATmega328P i Arduino Uno

Uz ograničenja ATmega328P, postoje i prednosti koje dolaze s korištenjem ovakvog čipa. To će često nadmašiti ograničenja mikrokontrolera za jednostavne projekte, osobito ako tek počinjete raditi s mikrokontrolerima.

  • Pristupačnost: ATmega328P čip je pristupačan i lako ga je pronaći, što ga čini idealnim za jeftine DIY projekte. Zahvaljujući velikoj vrijednosti ovog čipa, Arduino Uno je također vrlo pristupačna ploča.
  • Jednostavnost korištenja: Napravljen imajući na umu potrošače, ATmega328P jednostavan je za korištenje u usporedbi s drugim mikrokontrolerskim čipovima, što ga čini idealnim za one koji počinju s vlastitim DIY projektima.
  • Samostalni čip: Čip ATmega328P može se koristiti samostalno ili s mikrokontrolerskom pločom poput Arduino Uno.

Učenje o ATmega328P i Arduino Uno

Na webu postoji mnogo resursa koji su dizajnirani da vam pomognu da počnete koristiti Arduino Uno i ATmega328P koji koristi. Isplati se potrošiti vrijeme na učenje o ovom hardveru prije nego što započnete svoj sljedeći projekt mikrokontrolera, dajući si ideju o ograničenjima i izazovima s kojima biste se mogli susresti na tom putu.