57,00 €
Only 1 in stock
SKU: A000062-MFAT
Arduino Due è la prima scheda Arduino basata su un microcontrollore core ARM a 32 bit. Con 54 pin di ingresso/uscita digitali e 12 ingressi analogici, è la scheda perfetta per potenti progetti Arduino su larga scala.
 Torna a: Arduino Boards

Arduino Due

Arduino Due è una scheda microcontrollore basata sulla  CPU Atmel SAM3X8E ARM Cortex-M3 . È la prima scheda Arduino basata su un microcontrollore ARM core a 32 bit. Ha 54 pin di input/output digitali (di cui 12 possono essere utilizzati come output PWM), 12 input analogici, 4 UART (porte seriali hardware), un clock da 84 MHz, una connessione USB OTG, 2 DAC (digitale-analogico), 2 TWI, un jack di alimentazione, un header SPI, un header JTAG, un pulsante di reset e un pulsante di cancellazione.

Attenzione: a differenza della maggior parte delle schede Arduino, la scheda Arduino Due funziona a 3,3 V. La tensione massima che i pin I/O possono tollerare è 3,3 V. L'applicazione di tensioni superiori a 3,3 V a qualsiasi pin I/O potrebbe danneggiare la scheda.

La scheda contiene tutto il necessario per supportare il microcontrollore; basta collegarla a un computer con un cavo micro-USB o alimentarla con un adattatore AC-DC o una batteria per iniziare. La Due è compatibile con tutti gli shield Arduino che funzionano a 3,3 V e sono conformi al pinout Arduino 1.0.

Il Due segue il pinout 1.0:

  • TWI : pin SDA e SCL che si trovano vicino al pin AREF.
  • IOREF : consente a uno shield collegato con la configurazione corretta di adattarsi alla tensione fornita dalla scheda. Ciò consente la compatibilità dello shield con una scheda da 3,3 V come le schede basate su Due e AVR che funzionano a 5 V.
  • Un pin non collegato, riservato per un uso futuro.

Iniziare

Nella  sezione Introduzione puoi trovare tutte le informazioni necessarie per configurare la tua scheda, utilizzare il  software Arduino (IDE) e iniziare a sperimentare con la codifica e l'elettronica.

 

Specifiche tecniche

Microcontrollore AT91SAM3X8E
Tensione di esercizio 3,3 V
Tensione di ingresso (consigliata) 7-12V
Tensione di ingresso (limiti) 6-16 V
Pin I/O digitali 54 (di cui 12 forniscono uscita PWM)
Pin di ingresso analogici 12
Pin di uscita analogici 2 (DAC)
Corrente di uscita CC totale su tutte le linee I/O 130mA
Corrente CC per pin da 3,3 V 800mA
Corrente CC per pin 5V 800mA
Memoria Flash 512 KB tutti disponibili per le applicazioni utente
SRAM 96 KB (due banche: 64 KB e 32 KB)
Velocità di clock 84MHz
Lunghezza 101,52 millimetri
Larghezza 53,3 millimetri
Peso 36 grammi

Documentazione

OSH: Schemi

Arduino Due è hardware open source! Puoi costruire la tua scheda usando i seguenti file:

FILE EAGLE IN FORMATO .ZIP

SCHEMI IN .PDF

FRITZING IN .FZPZ

DIMENSIONE DELLA SCHEDA IN .PDF

Diagramma dei pinout

Scarica qui lo schema completo dei pinout in formato PDF .

Energia

L'Arduino Due può essere alimentato tramite il connettore USB o con un alimentatore esterno. La fonte di alimentazione viene selezionata automaticamente.

L'alimentazione esterna (non USB) può provenire da un adattatore AC-DC (presa a muro) o da una batteria. L'adattatore può essere collegato inserendo una spina centrale positiva da 2,1 mm nel jack di alimentazione della scheda. I cavi di una batteria possono essere inseriti nei pin header Gnd e Vin del connettore POWER.

La scheda può funzionare con un'alimentazione esterna da 6 a 20 volt. Se alimentata con meno di 7 V, tuttavia, il pin da 5 V potrebbe fornire meno di cinque volt e la scheda potrebbe essere instabile. Se si utilizzano più di 12 V, il regolatore di tensione potrebbe surriscaldarsi e danneggiare la scheda. L'intervallo consigliato è da 7 a 12 volt.

I pin di alimentazione sono i seguenti:

  • Vin.  La tensione di ingresso alla scheda Arduino quando utilizza una fonte di alimentazione esterna (in contrapposizione ai 5 volt della connessione USB o di un'altra fonte di alimentazione regolata). Puoi fornire tensione tramite questo pin oppure, se fornisci tensione tramite il jack di alimentazione, accedervi tramite questo pin.
  • 5V . Questo pin emette 5V regolati dal regolatore sulla scheda. La scheda può essere alimentata tramite il jack di alimentazione CC (7 - 12V), il connettore USB (5V) o il pin VIN della scheda (7-12V). L'alimentazione tramite i pin 5V o 3,3V bypassa il regolatore e può danneggiare la scheda. Lo sconsigliamo.
  • 3V3 . Un'alimentazione da 3,3 volt generata dal regolatore di bordo. L'assorbimento di corrente massimo è di 800 mA. Questo regolatore fornisce anche l'alimentazione al microcontrollore SAM3X.
  • GND . Pin di terra.
  • IOREF . Questo pin sulla scheda Arduino fornisce il riferimento di tensione con cui funziona il microcontrollore. Uno shield configurato correttamente può leggere la tensione del pin IOREF e selezionare la fonte di alimentazione appropriata o abilitare i traduttori di tensione sulle uscite per lavorare con 5 V o 3,3 V.

Memoria

Il SAM3X ha 512 KB (2 blocchi da 256 KB) di memoria flash per l'archiviazione del codice. Il bootloader è pre-masterizzato in fabbrica da Atmel ed è archiviato in una memoria ROM dedicata. La SRAM disponibile è di 96 KB in due banchi contigui da 64 KB e 32 KB. Tutta la memoria disponibile (Flash, RAM e ROM) è accessibile direttamente come uno spazio di indirizzamento piatto.

È possibile cancellare la memoria Flash del SAM3X con il pulsante di cancellazione integrato. Ciò rimuoverà lo sketch attualmente caricato dalla MCU. Per cancellare, premere e tenere premuto il pulsante di cancellazione per alcuni secondi mentre la scheda è alimentata.

Ingresso e uscita

  • I/O digitale: pin da 0 a 53
  • Ognuno dei 54 pin digitali sul Due può essere utilizzato come input o output, utilizzando  le funzioni pinMode() , digitalWrite() e  digitalRead()  . Funzionano a 3,3 volt. Ogni pin può fornire (source) una corrente di 3 mA o 15 mA, a seconda del pin, o ricevere (sink) una corrente di 6 mA o 9 mA, a seconda del pin. Hanno anche una resistenza pull-up interna (scollegata per impostazione predefinita) di 100 KOhm. Inoltre, alcuni pin hanno funzioni specializzate:
  • Seriale: 0 (RX) e 1 (TX)
  • Seriale 1: 19 (RX) e 18 (TX)
  • Seriale 2: 17 (RX) e 16 (TX)
  • Seriale 3: 15 (RX) e 14 (TX)  Utilizzati per ricevere (RX) e trasmettere (TX) dati seriali TTL (con livello 3,3 V). I pin 0 e 1 sono collegati ai pin corrispondenti del chip seriale USB-TTL ATmega16U2.
  • PWM: i pin da 2 a 13  forniscono un'uscita PWM a 8 bit con la  funzione analogWrite()  . La risoluzione del PWM può essere modificata con la  funzione analogWriteResolution().
  • SPI: header SPI (header ICSP su altre schede Arduino)   Questi pin supportano la comunicazione SPI tramite la  libreria SPI . I pin SPI sono suddivisi nell'header centrale a 6 pin, che è fisicamente compatibile con Uno, Leonardo e Mega2560. L'header SPI può essere utilizzato solo per comunicare con altri dispositivi SPI, non per programmare SAM3X con la tecnica In-Circuit-Serial-Programming. L'SPI di Due ha anche funzionalità avanzate che possono essere utilizzate con i  metodi Extended SPI per Due.
  • CAN: CANRX e CANTX Questi pin supportano il protocollo di comunicazione CAN ma non sono ancora supportati dalle API Arduino.
  • LED "L": 13  C'è un LED incorporato collegato al pin digitale 13. Quando il pin è HIGH, il LED è acceso, quando il pin è LOW, è spento. È anche possibile attenuare il LED perché il pin digitale 13 è anche un'uscita PWM.
  • TWI 1: 20 (SDA) e 21 (SCL)
  • TWI 2: SDA1 e SCL1.  Supporta la comunicazione TWI tramite la libreria Wire. SDA1 e SCL1 possono essere controllati tramite la classe Wire1 fornita dalla  libreria Wire . Mentre SDA e SCL hanno resistori pullup interni, SDA1 e SCL1 non ne hanno. Per utilizzare Wire1 è necessario aggiungere due resistori pullup sulle linee SDA1 e SCL1.
  • Ingressi analogici: pin da A0 a A11  La Due ha 12 ingressi analogici, ognuno dei quali può fornire 12 bit di risoluzione (ovvero 4096 valori diversi). Di default, la risoluzione delle letture è impostata a 10 bit, per compatibilità con altre schede Arduino. È possibile modificare la risoluzione dell'ADC con analogReadResolution() . I pin degli ingressi analogici della Due misurano da terra a un valore massimo di 3,3 V. Applicare più di 3,3 V sui pin della Due danneggerà il chip SAM3X. La funzione analogReference() viene ignorata sulla Due.

Il pin AREF è collegato al pin di riferimento analogico SAM3X tramite un ponte di resistori. Per utilizzare il pin AREF, il resistore BR1 deve essere dissaldato dal PCB.

  • DAC1 e DAC2  Questi pin forniscono vere uscite analogiche con risoluzione a 12 bit (4096 livelli) con la funzione analogWrite()  . Questi pin possono essere utilizzati per creare un'uscita audio utilizzando la  libreria Audio.

Si prega di notare che l'intervallo di uscita del DAC è in realtà solo da 0,55 V a 2,75 V.

Altri pin sulla bacheca:

  • AREF  Tensione di riferimento per gli ingressi analogici. Utilizzato con  analogReference() .
  • Reset  Porta questa linea a LOW per resettare il microcontrollore. Solitamente utilizzato per aggiungere un pulsante di reset agli shield che bloccano quello sulla scheda.

Vedere anche la mappatura tra i pin Arduino e le porte SAM3X:

MAPPATURA PIN SAM3X

Comunicazione

L'Arduino Due ha una serie di funzionalità per comunicare con un computer, un altro Arduino o altri microcontrollori e diversi dispositivi come telefoni, tablet, fotocamere e così via. Il SAM3X fornisce un UART hardware e tre USART hardware per la comunicazione seriale TTL (3,3 V).

La porta di programmazione è collegata a un ATmega16U2, che fornisce una porta COM virtuale al software su un computer collegato (per riconoscere il dispositivo, le macchine Windows avranno bisogno di un file .inf, ma le macchine OSX e Linux riconosceranno automaticamente la scheda come una porta COM). Il 16U2 è anche collegato all'hardware UART SAM3X. La seriale sui pin RX0 e TX0 fornisce la comunicazione seriale-USB per la programmazione della scheda tramite il microcontrollore ATmega16U2. Il software Arduino include un monitor seriale che consente di inviare semplici dati testuali da e verso la scheda. I LED RX e TX sulla scheda lampeggeranno quando i dati vengono trasmessi tramite il chip ATmega16U2 e la connessione USB al computer (ma non per la comunicazione seriale sui pin 0 e 1).

La porta USB nativa è collegata al SAM3X. Consente la comunicazione seriale (CDC) tramite USB. Ciò fornisce una connessione seriale al Serial Monitor o ad altre applicazioni sul computer. Consente inoltre al Due di emulare un mouse o una tastiera USB su un computer collegato. Per utilizzare queste funzionalità, vedere le  pagine di riferimento della libreria Mouse e tastiera .

La porta USB nativa può anche fungere da host USB per periferiche connesse come mouse, tastiere e smartphone. Per utilizzare queste funzionalità, vedere le  pagine di riferimento USBHost .

Il SAM3X supporta anche la comunicazione TWI e SPI. Il software Arduino include una libreria Wire per semplificare l'uso del bus TWI; vedere la  documentazione per i dettagli. Per la comunicazione SPI, utilizzare la  libreria SPI .

Programmazione

Il Due può essere programmato con l'Arduino  Arduino Software  (IDE). Per i dettagli, vedere il riferimento  e  i tutorial .

Il caricamento degli sketch sul SAM3X è diverso rispetto ai microcontrollori AVR presenti in altre schede Arduino perché la memoria flash deve essere cancellata prima di essere riprogrammata. Il caricamento sul chip è gestito dalla ROM sul SAM3X, che viene eseguita solo quando la memoria flash del chip è vuota.

Entrambe le porte USB possono essere utilizzate per programmare la scheda, anche se si consiglia di utilizzare la porta di programmazione a causa del modo in cui viene gestita la cancellazione del chip:

  • Porta di programmazione: per utilizzare questa porta, seleziona "Arduino Due (ProgrammingPort)" come scheda nell'IDE Arduino. Collega la porta di programmazione del Due (quella più vicina al jack di alimentazione CC) al tuo computer. La porta di programmazione utilizza il 16U2 come chip USB-seriale collegato al primo UART del SAM3X (RX0 e TX0). Il 16U2 ha due pin collegati ai pin Reset e Erase del SAM3X. L'apertura e la chiusura della porta di programmazione collegata a 1200 bps innesca una procedura di "hard erase" del chip SAM3X, attivando i pin Erase e Reset sul SAM3X prima di comunicare con l'UART. Questa è la porta consigliata per la programmazione del Due. È più affidabile della "soft erase" che si verifica sulla porta nativa e dovrebbe funzionare anche se l'MCU principale si è bloccata.
  • Porta nativa: per usare questa porta, seleziona "Arduino Due (NativeUSBPort)" come scheda nell'IDE Arduino. La porta USB nativa è collegata direttamente al SAM3X. Collega la porta USB nativa del Due (quella più vicina al pulsante di reset) al tuo computer. L'apertura e la chiusura della porta nativa a 1200 bps innesca una procedura di "soft erase": la memoria flash viene cancellata e la scheda viene riavviata con il bootloader. Se l'MCU si è bloccato per qualche motivo, è probabile che la procedura di soft erase non funzioni poiché questa procedura avviene interamente nel software sul SAM3X. L'apertura e la chiusura della porta nativa a una velocità in baud diversa non resetterà il SAM3X.

A differenza di altre schede Arduino che usano avrdude per l'upload, la Due si basa su  bossac . Il codice sorgente del firmware ATmega16U2 è disponibile nel  repository Arduino . Puoi usare l'intestazione ISP con un programmatore esterno (sovrascrivendo il bootloader DFU).  Per maggiori informazioni, vedi questo  tutorial fornito dagli utenti .

Protezione da sovracorrente USB

Arduino Due ha un polifusibile ripristinabile che protegge le porte USB del computer da cortocircuiti e sovracorrenti. Sebbene la maggior parte dei computer fornisca la propria protezione interna, il fusibile fornisce un ulteriore livello di protezione. Se vengono applicati più di 500 mA alla porta USB, il fusibile interromperà automaticamente la connessione finché il cortocircuito o il sovraccarico non vengono rimossi.

Caratteristiche fisiche e compatibilità dello scudo

La lunghezza e la larghezza massime del PCB Arduino Due sono rispettivamente 4 e 2,1 pollici, con i connettori USB e il jack di alimentazione che si estendono oltre la dimensione precedente. Tre fori per viti consentono di fissare la scheda a una superficie o a un case. Si noti che la distanza tra i pin digitali 7 e 8 è di 160 mil (0,16"), non un multiplo pari della spaziatura di 100 mil degli altri pin.

Arduino Due è progettato per essere compatibile con la maggior parte degli shield progettati per Uno, Diecimila o Duemilanove. I pin digitali da 0 a 13 (e i pin adiacenti AREF e GND), gli ingressi analogici da 0 a 5, l'intestazione di alimentazione e l'intestazione "ICSP" (SPI) sono tutti in posizioni equivalenti. Inoltre, l'UART principale (porta seriale) si trova sugli stessi pin (0 e 1).  Si noti che I2C non si trova sugli stessi pin sulla Due (20 e 21) della Duemilanove / Diecimila (ingressi analogici 4 e 5) .