Arduino ATMEGA328 SMD Breadboard Manual de utilizare
Pesteview
Arduino Uno este o placă de microcontroler bazată pe ATmega328 (fișă de date). Are 14 pini de intrare/ieșire digitale (dintre care 6 pot fi utilizați ca ieșiri PWM), 6 intrări analogice, un oscilator cu cristal de 16 MHz, o conexiune USB, o mufă de alimentare, un antet ICSP și un buton de resetare. Conține tot ce este necesar pentru a susține microcontrolerul; pur și simplu conectați-l la un computer cu un cablu USB sau alimentați-l cu un adaptor AC-DC sau baterie pentru a începe. Uno diferă de toate plăcile precedente prin faptul că nu folosește cipul driverului FTDI USB-to-serial. În schimb, are Atmega8U2 programat ca un convertor USB-la-serial. „Uno” înseamnă unul în italiană și este numit pentru a marca viitoarea lansare a Arduino 1.0. Uno și versiunea 1.0 vor fi versiunile de referință ale Arduino, mergând mai departe. Uno este cel mai recent dintr-o serie de plăci USB Arduino și modelul de referință pentru platforma Arduino; pentru o comparație cu versiunile anterioare, consultați indexul plăcilor Arduino.
Rezumat
- Microcontroler ATmega328
- Vol. De operaretage 5V
- Vol. De intraretage (recomandat) 7-12V
- Vol. De intraretage (limite) 6-20V
- Pini I/O digitale 14 (dintre care 6 furnizează ieșire PWM)
- Pini de intrare analogică 6
- Curent DC per pin I/O 40 mA
- Curent DC pentru pin de 3.3 V 50 mA
- Memorie flash 32 KB (ATmega328) din care 0.5 KB sunt folosite de bootloader
- SRAM 2 KB (ATmega328)
- EEPROM 1 KB (ATmega328)
- Viteza ceasului 16 MHz
Proiectare schematică și de referință
VULTUR files: Arduino-uno-reference-design.zip
Schema: arduino-uno-schematic.pdf
Putere
Arduino Uno poate fi alimentat printr-o conexiune USB sau cu o sursă de alimentare externă. Puterea sursei este selectată automat. Alimentarea externă (non-USB) poate proveni fie de la un adaptor AC-DC (de perete), fie de la o baterie. Adaptorul poate fi conectat prin conectarea unei mufe centrale pozitive de 2.1 mm la mufa de alimentare a plăcii. Cablurile de la o baterie pot fi introduse în anteturile pinului Gnd și Vin ale conectorului POWER. Placa poate funcționa pe o sursă externă de 6 până la 20 volți. Cu toate acestea, dacă este furnizat cu mai puțin de 7V, pinul de 5V poate furniza mai puțin de cinci volți și placa poate fi instabilă. Dacă utilizați mai mult de 12 V, volumul voltagRegulatorul se poate supraîncălzi și poate deteriora placa. Intervalul recomandat este de la 7 la 12 volți.
Pinii de alimentare sunt după cum urmează:
- VIN. Volumul de intraretage la placa Arduino atunci când folosește o sursă de alimentare externă (spre deosebire de 5 volți de la conexiunea USB sau altă sursă de alimentare reglată). Puteți furniza voltage prin acest pin, sau, dacă se furnizează voltage prin mufa de alimentare, accesați-l prin acest pin.
- 5V. Sursa de alimentare reglată este utilizată pentru a alimenta microcontrolerul și alte componente de pe placă. Acesta poate proveni fie de la VIN printr-un regulator de bord, fie poate fi alimentat prin USB sau altă sursă de 5V reglată.
- 3V3. O sursă de 3.3 volți este generată de regulatorul de bord. Consumul maxim de curent este de 50 mA.
- GND. Știfturi de împământare.
Memorie
ATmega328 are 32 KB (cu 0.5 KB folosit pentru bootloader). De asemenea, are 2 KB de SRAM și 1 KB de EEPROM (care poate fi citită și scrisă cu biblioteca EEPROM).
Intrare și ieșire
Fiecare dintre cei 14 pini digitali de pe Uno poate fi folosit ca intrare sau ieșire, folosind funcțiile pinMode(), digitalWrite() și digitalRead(). Ele funcționează la 5 volți. Fiecare pin poate furniza sau recepționa maximum 40 mA și are un rezistor intern pull-up (deconectat implicit) de 20-50 kOhmi. În plus, unele ace au
functii specializate:
- Serial: 0 (RX) și 1 (TX). Folosit pentru a primi (RX) și a transmite (TX) date seriale TTL. Acești pini sunt conectați la pinii corespunzători ai cipul serial ATmega8U2 USB-to-TTL.
- Întreruperi externe: 2 și 3. Acești pini pot fi configurați pentru a declanșa o întrerupere la o valoare scăzută, o margine ascendentă sau descendentă sau o modificare a valorii. Consultați funcția attachInterrupt() pentru detalii.
- PWM: 3, 5, 6, 9, 10 și 11. Furnizați ieșire PWM pe 8 biți cu funcția analogWrite().
- SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Acești pini acceptă comunicarea SPI folosind biblioteca SPI.
- LED: 13. Există un LED încorporat conectat la pinul digital 13. Când pinul are valoare HIGH, LED-ul este aprins, când pinul este LOW, este stins.
Uno are 6 intrări analogice, etichetate de la A0 la A5, fiecare dintre acestea oferind 10 biți de rezoluție (adică 1024 de valori diferite). În mod implicit, măsoară de la masă la 5 volți, deși este posibil să se schimbe capătul superior al intervalului lor folosind pinul AREF și funcția analogReference()? În plus, unii pini au funcționalități specializate:
- I2C: 4 (SDA) și 5 (SCL). Sprijină comunicarea I2C (TWI) folosind biblioteca Wire. Mai sunt câțiva pini pe placă:
- AREF. Vol. de referinţătage pentru intrările analogice. Folosit cu analogReference().
- Resetați. Aduceți această linie LOW pentru a reseta microcontrolerul. De obicei, este folosit pentru a adăuga un buton de resetare la scuturile care îl blochează pe cel de pe placă.
- Vedeți și maparea dintre pinii Arduino și porturile ATmega328?.
Comunicare
Arduino UNO are o serie de facilități pentru comunicarea cu un computer, un alt Arduino sau alte microcontrolere. ATmega328 oferă comunicație serială UART TTL (5V), care este disponibilă pe pinii digitali 0 (RX) și 1 (TX). Un ATmega8U2 de pe placă canalizează această comunicare serială prin USB și apare ca un port de comunicație virtual către software-ul de pe computer. Firmware-ul '8U2 utilizează driverele standard USB COM și nu este nevoie de un driver extern. Cu toate acestea, pe Windows, un .inf file este necesară. Software-ul Arduino include un monitor serial care permite trimiterea de date textuale simple către și de la placa Arduino. LED-urile RX și TX de pe placă vor clipi când datele sunt transmise prin cipul USB-la-serial și prin conexiunea USB la computer (dar nu pentru comunicarea în serie pe pinii 0 și 1). O bibliotecă SoftwareSerial permite comunicarea în serie pe oricare dintre pinurile digitale ale Uno. ATmega328 acceptă, de asemenea, comunicații I2C (TWI) și SPI. Software-ul Arduino include o bibliotecă Wire pentru a simplifica utilizarea magistralei I2C; consultați documentația pentru detalii. Pentru comunicarea SPI, utilizați biblioteca SPI.
Programare
Arduino Uno poate fi programat cu software-ul Arduino (descărcare). Selectați „Arduino Uno din meniul Instrumente > Placă (în funcție de microcontrolerul de pe placă). Pentru detalii, consultați referința și tutorialele. ATmega328 de pe Arduino Uno vine pre-ars cu un bootloader care vă permite să încărcați cod nou pe acesta fără a utiliza un programator hardware extern. Comunică folosind protocolul original STK500 (referință, antet C files). De asemenea, puteți ocoli bootloader-ul și programa microcontrolerul prin antetul ICSP (In-Circuit Serial Programming); consultați aceste instrucțiuni pentru detalii. Codul sursă firmware ATmega8U2 este disponibil. ATmega8U2 este încărcat cu un bootloader DFU, care poate fi activat prin conectarea jumperului de lipit de pe spatele plăcii (lângă harta Italiei) și apoi resetarea 8U2. Puteți utiliza apoi software-ul FLIP de la Atmel (Windows) sau programatorul DFU (Mac OS X și Linux) pentru a încărca firmware nou. Sau puteți utiliza antetul ISP cu un programator extern (suprascriind bootloader-ul DFU). Consultați acest tutorial contribuit de utilizatori pentru mai multe informații.
Resetare automată (software).
În loc să necesite o apăsare fizică a butonului de resetare înainte de încărcare, Arduino Uno este proiectat într-un mod care îi permite să fie resetat de software-ul care rulează pe un computer conectat. Una dintre liniile hardware de control al fluxului (DTR) ale ATmega8U2 este conectată la linia de resetare a ATmega328 printr-un condensator de 100 nano farad. Când această linie este afirmată (luată la nivel scăzut), linia de resetare scade suficient de mult pentru a reseta cipul. Software-ul Arduino folosește această capacitate pentru a vă permite să încărcați codul prin simpla apăsare a butonului de încărcare în mediul Arduino. Aceasta înseamnă că bootloader-ul poate avea un timeout mai scurt, deoarece scăderea DTR poate fi bine coordonată cu începerea încărcării.
Această configurație are alte implicații. Când Uno este conectat fie la un computer care rulează Mac OS X, fie Linux, se resetează de fiecare dată când se face o conexiune la acesta din software (prin USB). În următoarea jumătate de secundă, bootloader-ul rulează pe Uno. Deși este programat să ignore datele malformate (adică orice în afară de încărcarea unui cod nou), va intercepta primii câțiva octeți de date trimiși pe placă după deschiderea conexiunii. Dacă o schiță care rulează pe placă primește o configurare unică sau alte date la prima pornire, asigurați-vă că software-ul cu care comunică așteaptă o secundă după deschiderea conexiunii și înainte de a trimite aceste date. Uno conține o urmă care poate fi tăiată pentru a dezactiva resetarea automată. Tampoanele de pe ambele părți ale urmei pot fi lipite împreună pentru a o reactiva. Este etichetat „RESET-EN”. De asemenea, este posibil să puteți dezactiva resetarea automată conectând un rezistor de 110 ohmi de la 5V la linia de resetare; vezi acest subiect pe forum pentru detalii.
Protecție la supracurent USB
Arduino Uno are o siguranță resetabilă care protejează porturile USB ale computerului de scurtcircuit și supracurent. Deși majoritatea computerelor oferă propria protecție internă, siguranța oferă un strat suplimentar de protecție. Dacă se aplică mai mult de 500 mA la portul USB, siguranța va întrerupe automat conexiunea până când scurtcircuitul sau suprasarcina sunt eliminate.
Caracteristici fizice
Lungimea și lățimea maximă ale PCB-ului Uno sunt de 2.7 și, respectiv, 2.1 inci, conectorul USB și mufa de alimentare extinzându-se dincolo de dimensiunea anterioară. Patru găuri pentru șuruburi permit atașarea plăcii de o suprafață sau carcasă. Rețineți că distanța dintre pinii digitali 7 și 8 este de 160 mil (0.16 inchi), nu este un multiplu par al distanței de 100 mil a celorlalți pini.
Arduino UNO Design de referință
Modelele de referință SUNT FURNIZATE „CA AȘA ESTE” ȘI „CU TOATE DEFECTELE”. Arduino RENUNȚĂ TOATE ALTE GARANȚII, EXPRESE SAU IMPLICITE, Arduino poate face modificări ale specificațiilor și descrierilor produselor în orice moment, fără notificare. Clientul nu trebuie să ia în considerare PRODUSE, INCLUSIV, DAR FĂRĂ A SE LIMITA LA, ORICE GARANȚII IMPLICITE DE VANTABILITATE SAU ADECVENȚĂ PENTRU UN ANUMIT SCOP, să se bazeze pe absența sau caracteristicile oricăror caracteristici sau instrucțiuni marcate „rezervat” sau „nedefinit”. Arduino își rezervă acestea pentru definiții viitoare și nu va avea nicio responsabilitate pentru conflictele sau incompatibilitățile care decurg din modificările viitoare ale acestora. Informațiile despre produs de pe Web Site-ul sau Materialele pot fi modificate fără notificare. Nu finalizați un design cu aceste informații.
Descărcare PDF: Arduino ATMEGA328 SMD Breadboard Manual de utilizare