Arduino Zero ha spiegato

Arduino Zero ha spiegato
La piattaforma Arduino è diventata popolare per lo sviluppo di progetti elettronici. Le schede Arduino sono facili da usare e la programmazione è semplice, anche per i principianti. La scheda Arduino Zero è una potente tavola che offre caratteristiche avanzate che lo distinguono da altre schede della famiglia Arduino. Questo articolo è una panoramica della scheda Arduino Zero, delle sue specifiche, delle caratteristiche, dell'ambiente di programmazione e delle applicazioni.
  1. Cos'è Arduino Zero
  2. Specifiche di Arduino Zero
  3. Caratteristiche di Arduino Zero
  4. Linguaggio di programmazione per Arduino zero
  5. Programmazione della scheda Arduino Zero
  6. Benefici del braccio
  7. Debugger incorporato Atmel
  8. Energia
  9. Pin di alimentazione Arduino zero
  10. Memoria
  11. Ingresso e uscita
  12. Conclusione

1. Cos'è Arduino Zero

La scheda Arduino Zero è una scheda basata su Atmel Samd21, che è la prima scheda Arduino a 32 bit. È stato introdotto nel 2015 ed è progettato per fornire una potente piattaforma per gli sviluppatori per creare applicazioni IoT. La scheda è compatibile con il software Arduino (IDE) e può essere programmata utilizzando la stessa sintassi di Arduino delle altre schede Arduino. È una scheda altamente versatile che può essere utilizzata per una vasta gamma di applicazioni, tra cui robotica, automazione e altro ancora.

2. Specifiche di Arduino Zero

La scheda Arduino Zero ha le seguenti specifiche:

Microcontrollore ATSAMD21G18, ARM® BIT Cortex® M0+
Tensione operativa 3.3v
Pin digitali I/O 20
Pin pwm 3, 4, 5, 6, 8, 9, 10, 11, 12, 13
Uart 2 (nativo e programmazione)
Pin di ingresso analogici 6, canali ADC a 12 bit
Pin di uscita analogici 1, DAC a 10 bit
Interrupt esterni Tutti i pin tranne il pin 4
Corrente dc per pin i/o 7 Ma
Memoria flash 256 kb
Sram 32 kb
Eeprom Nessuno. Vedi documentazione
LED_BUILTIN 13
Velocità di orologio 48 MHz
Lunghezza 68 mm
Larghezza 53 mm
Peso 12 gr.

3. Caratteristiche di Arduino Zero

L'Arduino Zero Board offre diverse funzionalità che lo rendono una scheda altamente versatile e potente:

  • ARM ARM Cortex-M0+ Core
  • Ha una memoria flash da 256 kb e un 32 kb di SRAM
  • Output ADC a 12 bit e 12 pwm
  • USB 2.0 porta host/dispositivo
  • 3.Livello logico 3V
  • Interfaccia di debug EDBG

4. Linguaggio di programmazione per Arduino zero

Il linguaggio di programmazione utilizzato per la programmazione della scheda Arduino Zero è C++. La scheda Arduino Zero può essere programmata utilizzando il software Arduino (IDE), disponibile per Windows, MacOS e Linux. Il software fornisce un editor di codice, un compilatore e un monitor seriale, che semplifica la scrittura, la compilazione e il debug.

5. Programmazione della scheda Arduino Zero

Il caricamento del codice su Arduino Zero è diverso dalle normali schede Arduino. Poiché Arduino Zero si basa su SAMD21 che è diverso dal microcontrollore AVR, poiché la maggior parte delle popolari schede Arduino si basano sulla struttura AVR.

Arduino Zero viene fornito con due porte UART, una lo è nativo E l'altro è un porta di programmazione. Per caricare gli schizzi su bordo si consiglia di utilizzare la porta di programmazione anziché la porta nativa. Ciò è dovuto alla sua capacità di cancellare i dati su chip una volta caricato il codice.

  • Porta di programmazione: In Arduino Zero questa porta utilizza EDBG e può programmare la scheda utilizzando USB-to-SWD. Per programmare Arduino Zero utilizzando questa porta selezionarlo dalla sezione porta IDE e collegare questa porta con il PC utilizzando un cavo USB. Per riferimento questa porta è più vicina al jack DC come evidenziato nell'immagine sopra.
  • Porta nativa: La porta nativa è collegata direttamente al microcontrollore SAMD21 sulla scheda. Per utilizzare la porta nativa, selezionarlo dalla sezione della porta IDE e successivamente utilizzare il cavo USB per creare la connessione di Arduino Zero con il PC utilizzando questa porta. Questa porta si trova sul lato sinistro del pulsante di ripristino come evidenziato nell'immagine sopra.

Come altre schede basate su Avrdude Per il caricamento del codice su MicroController. Arduino Zero si basa Bossac e la porta di programmazione Arduino Zero utilizza openocd.

6. Benefici del braccio

L'Arduino Zero si basa su un nucleo del braccio a 32 bit mentre altri microcontrollori usano la struttura AVR a 8 bit. Il nucleo del braccio è più avanzato nel lavoro della struttura AVR. Ecco alcuni punti salienti principali:

  • Il core del braccio ha un orologio CPU a 48MHz.
  • Arduino Zero Arm Core ha un controller DMA di 12 canali che aiuta la CPU in attività ad alta intensità di memoria.
  • Arduino Zero può gestire i dati a 4 byte molto facilmente utilizzando il core del braccio a 32 bit sopra il singolo orologio CPU.
  • Ha 32 bit RTC Con supporto dell'orologio/calendario.
  • Viene fornito con un 32 bit CRC Generatore.
  • Il nucleo del braccio ha un due canali (I2s) interfaccia.
  • Ha un controller touch periferico integrato (PTC).

7. Debugger incorporato Atmel

La scheda Arduino Zero include un Debugger incorporato Atmel (EDBG) Chip che fornisce una serie di funzioni di debug e programmazione.

Il chip EDBG sulla scheda Arduino Zero può essere utilizzato per programmare e eseguire il debug del consiglio di amministrazione tramite il porta di programmazione, che è la porta più vicina al jack di alimentazione DC. La porta di programmazione utilizza il chip EDBG come convertitore USB-to-SWD (Serial Wire Debug), che consente di programmare e eseguire il debug del microcontrollore SAMD21 utilizzando il protocollo SWD.

Oltre alle funzionalità di programmazione e debug, il chip EDBG sulla scheda Arduino Zero fornisce anche un'interfaccia di porta COM virtuale, che consente di comunicare con la scheda tramite la porta USB nativa, che è la porta più vicina al pulsante di ripristino. Questa interfaccia può essere utilizzata per diversi protocolli in Arduino zero come UART, SPI e I2C.

8. Energia

Arduino Zero ha due diverse fonti di potere proprio come Arduino Uno:

  • Connettore USB
  • Alimentazione esterna

La scheda è abbastanza intelligente da selezionare automaticamente la fonte di alimentazione, rendendo facile il passaggio da una modalità di alimentazione.

Fonti di potenza esterna per Arduino Zero

Le fonti di alimentazione esterne per Arduino Zero possono provenire da un adattatore o una batteria da AC a DC. Per collegare una fonte di alimentazione esterna, un 2.La spina positiva da 1 mm può essere utilizzata con un jack a barile Arduino Zero DC. Possiamo anche collegare le fonti di alimentazione esterne direttamente con il perno Vin come facciamo in Arduino Uno. Questo ti dà la flessibilità di scegliere la fonte di alimentazione più adatta per il tuo progetto.

Gamma di tensione per Arduino Zero

La tensione zero Arduino che può prendere come menzionato nel foglio dati è compresa tra 6 e 20 volt, ma si consiglia di non utilizzare più di 12 V in quanto può causare un surriscaldamento sul regolatore di tensione a seguito della perdita di tensione in eccesso durante la conversione in 3.3v.

Operando al di fuori di questo intervallo potrebbe causare danni al consiglio di amministrazione o sottoperformance del progetto. È importante notare che la tensione della fonte di alimentazione esterna influenzerà le prestazioni della scheda, quindi è essenziale scegliere la fonte di alimentazione giusta per il tuo progetto.

9. Pin di alimentazione Arduino zero

Arduino Zero ha una vasta gamma di fonti di potenza. Può essere potenziato utilizzando le seguenti fonti diverse:

Vin Pin: alimentare la scheda

Quando si utilizza una fonte di alimentazione esterna per utilizzare la scheda Arduino Zero, il perno VIN è utile. Questo pin è responsabile della ricezione dell'ingresso di tensione alla scheda. Inoltre, se stai fornendo tensione tramite il jack di alimentazione, puoi accedervi anche tramite questo pin.

Pin 5V: uscita di tensione regolata

La scheda Arduino Zero ha un regolatore incorporato che emette un 5 V regolato tramite il pin 5V. Arduino zero può essere collegato direttamente a 7v a 12V utilizzando un jack DC o un pin VIN. Questa tensione viene quindi passata attraverso un regolatore che lo converte in 5V. Questi 5 V possono essere utilizzati come fonte di alimentazione per sensori operativi 5V. Tuttavia, fai attenzione a non fornire la tensione tramite 5V o 3.Pin da 3V in quanto può bypassare il regolatore e causare danni alla scheda.

3.Pin 3V: regolatore di bordo

Il regolatore di bordo genera un 3.3v Fornitura per il consiglio. Questo 3.3v viene somministrato alle periferiche a bordo incluso il microcontrollore SAMD21. Questo 3.3v può anche essere emesso dal bordo 3.Pin 3V e la quantità massima di corrente che possiamo trarre da Arduino Zero 3.Il pin da 3V è 800 mA.

Pin GND: messa a terra

La scheda zero ha più perni di terra (GND) che aiutano a stabilire una connessione a terra. Puoi usarli per mettere a terra i componenti che stai collegando alla scheda.

Pin Ioref: riferimento di tensione

Il pin Ioref fornisce il riferimento di tensione per il funzionamento del microcontrollore. Questo pin aiuta la scheda Arduino Zero a selezionare la migliore fonte di alimentazione per il suo lavoro. Abilita anche il traduttore di tensione che aiuta la scheda Arduino a lavorare con 3.3v.

10. Memoria

La distribuzione della memoria di Arduino Zero (SAMD21) è la seguente:

Memoria Valore
Memoria flash 256 kb
Sram 32 kb
Eeprom 16 kb

11. Ingresso e uscita

L'Arduino Zero ha un totale di 20 pin per scopi generici. Di seguito sono riportate alcune specifiche di questi pin GPIO:

  • I pin Arduino Zero possono essere controllati con le funzioni di programmazione Arduino come PinMode (), DigitalWrite () e DigitalRead ().
  • I pin Arduino Zero PWM sono 3, 4, 5, 6, 8, 9, 10, 11, 12, 13. Per accedere a questi pin AnalogWrite () viene utilizzata la funzione.
  • Tutti questi pin operano a 3.3 volt.
  • Ognuno di questi pin ha una capacità massima di affondare la corrente fino a 7 Ma. Questi perni hanno anche un resistore di pull-up interno di 20-50 kohms. Questi resistori sono disconnessi per impostazione predefinita su Arduino Zero.

Perché sono alcuni pin aggiuntivi di Arduino Zero con funzione specializzata:

  • Ingni analogici: A0 a A5 (6 canali). Ognuno di questi pin ha 12 bit di risoluzione. Per impostazione predefinita, il riferimento è impostato da terra a 3.3v, tuttavia il limite superiore per ADC può essere regolato usando la funzione AnalogReference ().
  • Pin di output di input digitale: Da 0 a 13.
  • Pin di output PWM: Da 0 a 13.
  • Interfaccia SPI: SPI MOSI (PIN 11), SPI Miso (PIN 12), SPI SCK (PIN 13).
  • Interfaccia I2C: SDA (PIN 20) e SCL (PIN 21).
  • Interfaccia UART: RX (pin 0) e TX (pin 1).
  • Interfaccia USB nativa: Porta USB nativa (porta di programmazione).
  • Output DAC: DAC0 e DAC1.
  • Interfaccia di debug SWD: Swdio e swclk.
  • RESET PIN: RESET PIN.
  • Interrupt esterni: È disponibile su tutto il pin Arduino zero tranne il pin 4.
  • TWI: Pin SDA/SCL. Ha supporto per la comunicazione TWI. Per stabilire TWI, viene utilizzata una libreria di filo Arduino.
  • Aref: Pin di tensione di riferimento per valori analogici. Può essere controllato usando la funzione AnalogReference ().
  • Ripristina: Questo è ripristinato per una linea o una scheda. Può reimpostare il microcontrollore portando la sua linea in basso.

Si noti che alcuni dei pin sopra hanno anche una doppia funzione. Ad esempio, i pin 0 e 1 possono essere usati come I/O digitale o come interfaccia UART. Allo stesso modo, i pin 11, 12 e 13 possono essere utilizzati come interfaccia SPI o come I/O digitale.

Conclusione

La scheda Arduino Zero è una tavola potente e versatile perfetta per i principianti e gli utenti avanzati. Con le sue caratteristiche avanzate, la compatibilità con il software Arduino (IDE) e l'ampia gamma di applicazioni, l'Arduino Zero Board è un'ottima scelta per chiunque cerchi di costruire progetti elettronici. Seguendo i passaggi delineati in questa guida, puoi facilmente iniziare con l'Arduino Zero Board e iniziare a costruire i tuoi progetti.