Arduino Due
⚡ L’essentiel en 60 secondes
- mcu — Microchip (ex-Atmel) AT91SAM3X8E (a.k.a. SAM3X8E), single-core ARM Cortex-M3, 84 MHz (official tech-specs; build.f_cpu=84000000L in boards.txt). Board main oscillator: 12 MHz (VARIANT_MAINOSC in variant.h). The chip datasheet is the Atmel 11057 SAM3X/SAM3A combined datasheet (PDF) (the link used by the store page).
- gpu_radios_storage — none — bare-metal MCU board. No WiFi/BT/Ethernet, no filesystem; network or graphics need external modules/shields (board page).
- memory — 512 KB flash, 96 KB SRAM, 0 KB EEPROM (official tech-specs, Wikipedia). Sketch space per the core: upload.maximum_size=524288 bytes (boards.txt).
- digital_i_o — 54 pins at 3.3 V logic. Official warning: "Unlike most Arduino boards, the Arduino Due board runs at 3.3V. The maximum voltage that the I/O pins can tolerate is 3.3V. Applying voltages higher than 3.3V to any I/O pin could damage the board." (store product JSON).
- per_pin_drive_current_much_lower_than_avr_boards — 9 mA (group 1) / 3 mA (group 2) per I/O pin, and 130 mA total across all I/O lines (official tech-specs).
- pwm — 12 pins (digital 2–13; PWM peripheral channels + TC channels per variant.cpp). Default analogWrite is 8-bit at 1 kHz (PWM_RESOLUTION 8, PWM_FREQUENCY 1000 in variant.h); resolution/frequency are software-configurable via analogWriteResolution (wiring_analog.c).
- Sur cette fiche : 9 tutoriels · 10 codes
L'Arduino Due, lancée officiellement le 22 octobre 2012, marque un tournant décisif dans l'histoire de la plateforme Arduino. Elle fut en effet la première carte de développement basée sur un microcontrôleur à cœur ARM 32 bits, rompant avec la tradition des puces AVR 8 bits qui équipaient les modèles précédents comme l'Uno ou le Mega. Cette transition technologique offre une puissance de calcul nettement supérieure, idéale pour les projets nécessitant une gestion rapide des données ou des algorithmes complexes. Le cœur de cette carte est le microcontrôleur AT91SAM3X8E, fabriqué par Microchip (anciennement Atmel). Ce composant intègre un processeur ARM Cortex-M3 fonctionnant à une fréquence de 84 MHz. Pour comprendre cette fréquence, il faut savoir qu'elle représente le nombre de cycles d'horloge que le processeur peut exécuter chaque seconde. À 84 millions de cycles par seconde, la Due est capable de traiter les instructions beaucoup plus vite que ses prédécesseurs, ce qui se traduit par une réactivité accrue dans les applications temps réel. En termes de mémoire, la carte dispose de 512 Ko de mémoire Flash pour stocker le programme utilisateur, soit environ trente fois plus que l'Uno, et de 96 Ko de mémoire vive SRAM, offrant une marge confortable pour manipuler des tableaux de données ou des variables volumineuses. Il est important de noter que cette carte ne possède pas de mémoire EEPROM dédiée, un type de mémoire non volatile utilisé pour conserver des données simples lors de l'extinction de l'alimentation ; les utilisateurs doivent donc recourir à des astuces logicielles ou à des composants externes pour sauvegarder des paramètrès.
Un aspect crucial et souvent source de confusion pour les débutants est le niveau de tension logique de la Due. Contrairement à la majorité des cartes Arduino classiques qui fonctionnent en 5 Volts, la Due opère en 3,3 Volts. Cela signifie que la tension maximale tolérée par ses broches d'entrée et de sortie est de 3,3 V. Appliquer une tension supérieure, comme celle d'un capteur ou d'un module conçu pour 5 V, risque d'endommager irréversiblement la carte. Bien que le format physique des connecteurs soit compatible avec les boucliers (shields) standard, une adaptation de niveau logique est souvent nécessaire pour connecter des périphériques 5 V. De plus, le courant que chaque broche peut fournir est relativement faible, limité à 9 mA ou 3 mA selon le groupe de broches, avec un total de 130 mA pour l'ensemble des sorties. Cette limitation impose l'utilisation de transistors ou de pilotes de courant pour commander des composants énergivores comme des relais ou des moteurs.
Sur le plan des interfaces analogiques, la Due se distingue par des capacités avancées. Elle intègre un convertisseur analogique-numérique (ADC) de 12 bits, offrant une précision supérieure aux 10 bits habituels des cartes AVR. Cependant, par souci de compatibilité logicielle, la fonction de lecture analogique par défaut renvoie des valeurs sur 10 bits. Pour exploiter toute la précision du matériel, il est nécessaire d'appeler une commande spécifique pour configurer la résolution sur 12 bits, permettant ainsi de distinguer des variations de tension beaucoup plus fines. À l'inverse, la carte propose deux sorties analogiques réelles, appelées DAC (convertisseur numérique-analogique), capables de générer une tension continue variable sur 12 bits. Cette fonctionnalité est unique dans la gamme classique Arduino, où les autres modèles ne disposent que de signaux PWM (modulation de largeur d'impulsion) qui nécessitent un filtrage externe pour obtenir une tension lisse. Les DAC de la Due permettent de générer directement des signaux audio ou de contrôle précis sans composants supplémentaires.
La connectivité et les communications sont également enrichies. La carte dispose de quatre ports série matériels indépendants, en plus du port série virtuel utilisé pour la communication avec l'ordinateur. Elle intègre également deux contrôleurs CAN (Controller Area Network), un protocole de communication robuste largement utilisé dans l'automobile et l'industrie. Il est toutefois essentiel de préciser que la carte ne fournit pas les transceivers physiques nécessaires pour se connecter à un bus CAN ; l'utilisateur doit ajouter ces composants externes. La gestion du USB est particulièrement intéressante avec une architecture double. D'une part, un port Micro-USB sert à la programmation et au débogage via un pont série. D'autre part, un second port USB natif, piloté directement par le microcontrôleur, permet à la Due de se comporter comme un périphérique USB complet, comme une souris ou un clavier, grâce à la bibliothèque USBHost. Cette capacité de hôte USB ouvre des perspectives créatives, comme la création de contrôleurs personnalisés lisant des périphériques standards.
L'alimentation de la carte peut se faire via le port USB ou par une prise jack d'alimentation externe acceptant une tension nominale de 7 à 12 Volts. La taille de la carte, de 101,5 sur 53,3 millimètrès, reprend le format du Mega, offrant un grand nombre de broches d'entrée/sortie : 54 numériques et 12 analogiques. Bien que la plateforme soit toujours en production et disponible à l'achat, son écosystème logiciel a évolué. Le noyau officiel est maintenu en mode maintenance, et des environnements modernes comme MicroPython ou CircuitPython ne sont pas officiellement portés sur cette architecture. Néanmoins, la Due reste une référence solide pour les projets nécessitant une grande rapidité, une mémoire importante et des interfaces analogiques de haute précision, à condition de respecter scrupuleusement les contraintes de tension de 3,3 V et de gérer la faible capacité de courant de sortie.


Schéma de brochage (pinout)


| Attr | Specs | vérifié |
|---|---|---|
mcu | Microchip (ex-Atmel) AT91SAM3X8E (a.k.a. SAM3X8E), single-core ARM Cortex-M3, 84 MHz (official tech-specs; build.f_cpu=84000000L in boards.txt). Board main oscillator: 12 MHz (VARIANT_MAINOSC in variant.h). The chip datasheet is the Atmel 11057 SAM3X/SAM3A combined datasheet (PDF) (the link used by the store page). | ✔ |
gpu_radios_storage | none — bare-metal MCU board. No WiFi/BT/Ethernet, no filesystem; network or graphics need external modules/shields (board page). | ✔ |
memory | 512 KB flash, 96 KB SRAM, 0 KB EEPROM (official tech-specs, Wikipedia). Sketch space per the core: upload.maximum_size=524288 bytes (boards.txt). | ✔ |
digital_i_o | 54 pins at 3.3 V logic. Official warning: "Unlike most Arduino boards, the Arduino Due board runs at 3.3V. The maximum voltage that the I/O pins can tolerate is 3.3V. Applying voltages higher than 3.3V to any I/O pin could damage the board." (store product JSON). | ✔ |
per_pin_drive_current_much_lower_than_avr_boards | 9 mA (group 1) / 3 mA (group 2) per I/O pin, and 130 mA total across all I/O lines (official tech-specs). | ✔ |
pwm | 12 pins (digital 2–13; PWM peripheral channels + TC channels per variant.cpp). Default analogWrite is 8-bit at 1 kHz (PWM_RESOLUTION 8, PWM_FREQUENCY 1000 in variant.h); resolution/frequency are software-configurable via analogWriteResolution (wiring_analog.c). | ✔ |
analog_in | 12 inputs, hardware 12-bit ADC (ADC_RESOLUTION 12 in variant.h) — but analogRead defaults to 10-bit output for AVR compatibility (static int _readResolution = 10; in wiring_analog.c); use analogReadResolution(12) to get full resolution. | ✔ |
analog_out | 2 true DAC outputs (12-bit DACC, DACC_RESOLUTION 12 in variant.h) on pins DAC0 = digital pin 66 (PB15) and DAC1 = 67 (PB16) (variant.cpp pin table); driven through analogWrite (wiring_analog.c). | ✔ |
serial | 4 hardware UART/USARTs — Serial = SAM3X UART on pins 0/1 (PA8/PA9), wired to the Programming Port (ATmega16U2 bridge); Serial1 = USART0 on 18/19; Serial2 = USART1 on 16/17; Serial3 = USART3 on 14/15 (variant.cpp, variant.h). Plus SerialUSB, the CDC-ACM virtual port on the native USB (variant.h SERIAL_PORT_USBVIRTUAL). | ✔ |
i_c | 2 TWI controllers. Wire = TWI1 on pins 20 (SDA) / 21 (SCL) (near AREF, R3-style header); Wire1 = TWI0 on pins 70/71 (PA17/PA18), the 4-pin header near RESET (variant.h Wire Interfaces block). Note the inverted numbering: Wire→TWI1, Wire1→TWI0. | ✔ |
spi | SPI0 — MISO=74 (PA25), MOSI=75 (PA26), SCK=76 (PA27), hardware NPCS0/1/2 on pins 10/4/52 (NPCS3 pin 78 is unconnected) (variant.h, variant.cpp). | ✔ |
can | 2 CAN controllers in the silicon; official spec: "CAN: Yes (ext. transceiver needed)" — the board has no CAN transceivers (official tech-specs, board page "CAN support"). CAN0 signals are defined in the core as pins 68/69 (CANRX0/CANTX0 = PA1/PA0) and CAN1 as 88/89 (variant.h). | ✔ |
usb | Micro-USB connector for the Programming Port (16U2 serial bridge) plus a second native USB OTG port driven by the SAM3X itself (official tech-specs, board page). USB IDs: Programming Port 0x2341/0x2A03 : 0x003D, Native 0x2341/0x2A03 : 0x003E (boards.txt). Wikipedia's board table summarizes the host interface as "16U2 + native" (Wikipedia). | ✔ |
debug | JTAG header on board; reset and erase buttons (features.md). | ✔ |
power | USB or barrel-plug jack (the official feature list even suggests a 9 V battery on the barrel plug); input voltage (nominal) 7–12 V, I/O voltage 3.3 V (official tech-specs, features.md). | ✔ |
size_weight | 101.5 × 53.3 mm (Mega form factor footprint), 36 g (official tech-specs; Wikipedia lists 101.6 × 53.3 mm). | ✔ |
- Fabricant : Arduino (arduino.cc / Arduino AG). La page de la carte et la fiche produit de la boutique sont des propriétés officielles d'Arduino (page de la carte, JSON produit de la boutique).
- Année : lancée le 22 octobre 2012 (Wikipedia — Liste des cartes Arduino et systèmes compatibles). Ce fut la première carte Arduino basée sur un microcontrôleur ARM 32 bits (page de la carte).
- Statut : Active — toujours référencée sur la boutique officielle à 52,50 € (SKU A000062, JSON produit récupéré en direct ; le bloc de prix de la page affichée n'expose pas le prix aux robots d'indexation) (JSON produit de la boutique), et Microchip liste le MCU ATSAM3X8E comme "Status: In Production" (page produit Microchip).
- Prix de lancement :
- Variantes : - SKU A000062 (actuel, connecteurs soudés) et ancien SKU A000056 — tous deux listés dans les métadonnées produit officielles (docs-content product.md). - Arduino Due without headers — même carte vendue avec des connecteurs à souder (lien boutique référencé dans la description du produit). - Vendue sous le nom "Genuino Due" hors des États-Unis pendant la scission de la marque en 2015–2016 ; la marque Genuino a ensuite été abandonnée (Wikipedia — Arduino). Le core conserve le VID USB Genuino 0x2A03 aux côtés du 0x2341 d'Arduino (boards.txt). - Un important marché de clones tiers existe ; le core et le firmware officiels fonctionnent dessus, mais la qualité des composants varie (voir Problems).
+ Points forts
- Première Arduino 32 bits : Cortex-M3 à 84 MHz avec 512 KB de flash / 96 KB de SRAM — environ 30× la flash et 12× la SRAM de l'ATmega328P de l'Uno (page de la carte, tech-specs officielles).
- Deux vraies sorties DAC 12 bits (DAC0/DAC1) — toujours uniques dans la gamme Arduino classique ; l'Uno/le Mega n'en ont aucune (page de la carte, variant.h).
- ADC 12 bits (contre 10 bits sur les cartes AVR), utilisable de bout en bout avec analogReadResolution(12) (variant.h, wiring_analog.c).
- Deux contrôleurs CAN sur la puce (transceiver externe requis) — la façon classique de mettre une Arduino sur un bus CAN automobile/industriel (tech-specs officielles, bibliothèque due_can).
- Capacité de maître USB : le port natif est OTG ; la liste officielle des fonctionnalités annonce « Use the Due as USB host for peripherals such as mice », avec un tutoriel officiel d'hôte clavier et la bibliothèque USBHost (features.md, bibliothèque USBHost).
- Architecture double USB : un Programming Port « sûr » (pont 16U2, toujours récupérable) plus un port Native capable de présenter n'importe quelle classe de périphérique USB via le stack core/USBHost (boards.txt).
- Nombre d'E/S de classe Mega dans un format plus fin : 54 numériques + 12 analogiques + 2 DAC + 4 UART + 2 TWI + SPI + CAN, suivant le pinout shield Arduino 1.0 avec IOREF pour l'adaptation des shields 3,3 V (JSON produit de la boutique).
- Connecteur JTAG + bouton erase pour la récupération et le débogage de bas niveau (features.md).
- Silicium timer/PWM riche : canaux du périphérique PWM plus 9 canaux TC (timer counter) répartis sur les broches 2–13, permettant un PWM plus rapide ou à phase précise au-delà des préréglages AVR (variant.cpp).
− Points faibles
- 3,3 V uniquement — non tolérant 5 V. La page produit officielle affiche un avertissement explicite en gras indiquant qu'appliquer plus de 3,3 V à n'importe quelle broche d'E/S peut endommager la carte ; les shields/signaux 5 V nécessitent une adaptation de niveau même si l'empreinte shield s'adapte physiquement (JSON produit de la boutique).
- Faible courant de commande par broche. 9 mA / 3 mA par groupe de broches et 130 mA au total sur toutes les lignes d'E/S — bien loin des 20–40 mA des cartes AVR — donc LED, relais et solénoïdes nécessitent fréquemment des pilotes (tech-specs officielles).
- analogRead renvoie silencieusement des valeurs 10 bits alors que l'ADC est 12 bits (défaut _readResolution = 10) ; beaucoup de tutoriels supposent 0–4095 et obtiennent 0–1023 tant qu'ils n'appellent pas analogReadResolution(12) (wiring_analog.c).
- Particularités CDC du port natif. SerialUSB n'existe qu'une fois que l'hôte USB a énuméré la classe CDC ; les sketches qui se bloquent dessus sans hôte connecté, ou qui se ré-énumèrent au reset, sont un sujet de forum récurrent (sujet de forum 1183292 — CDC sur les Arduino USB natif).
- Carte invisible sur les deux ports. Mode de défaillance classique : ni le Programming Port ni le port Native ne s'énumèrent (mauvais câble / puce de clone / bootloader briqué) ; la récupération passe par le bouton erase + SAM-BA (sujet de forum 1161811).
- La flash doit être effacée avant toute re-programmation. Le code de boot du SAM3X exige un effacement complet de la flash quand un sketch tourne déjà ; le touch automatique à 1200 bauds s'en charge, mais quand l'état du bootloader est perdu, il faut maintenir le bouton erase et retéléverser manuellement (sujet de forum 1278587).
- Numérotation des contrôleurs I²C source de confusion. Wire correspond à TWI1 (broches 20/21) alors que Wire1 correspond à TWI0 (le connecteur 4 broches, broches 70/71) — les références TWI0/TWI1 au niveau de la fiche technique ne correspondent pas aux noms Arduino (variant.h).
- CAN annoncée, transceiver non embarqué. La page marketing parle de « two CAN buses », mais le tableau des specs officielles ajoute « ext. transceiver needed » — il faut ajouter un transceiver CAN 3,3 V (et vérifier que les signaux sont accessibles sur votre clone/révision) avant que quoi que ce soit n'apparaisse sur le bus (tech-specs officielles vs page de la carte).
- Pas d'EEPROM. 0 KB d'EEPROM contre 1 KB sur l'Uno — persister des données de calibration exige des astuces d'écriture en flash ou une EEPROM externe I²C/SPI (tableau des cartes Wikipedia).
- Plateforme vieillissante / dérive de l'écosystème. Le core SAM est en mode maintenance pendant qu'Arduino pousse les plateformes mbed/renesas ; MicroPython/CircuitPython n'ont jamais eu de port SAM3X, et Mbed (qui supportait la Due) a été arrêté en juillet 2026 (liste des ports MicroPython, annonce du sunset Mbed).
- Retour d'expérience expert expert — expert-arduino
- Petit retour d'experience sur la Due après plusieurs mois d'utilisation. Les specs sont solides : premier 32-bit avec ses 84 MHz et surtout les deux sorties DAC 12-bit reelles, un vrai plus pour la generation analogique propre. Par contre, attention aux pieges classiques. D'abord le 3.3V exclusif, … — expert-arduino
- Merci pour ce resumee très clair. Je debute avec la Due pour un projet audio et je confirme le souci du courant faible, j'ai du mettre des transistors pour mes amplis. Par contre, je bloque completement sur la partie USB. Quand je branche le cable en micro-usb, ni le port Programming ni le Native n… — maker-debutant
- Salut maker-debutant, ne panique pas, c'est un classique. Si les deux ports sont invisibles, c'est souvent un bootloader bloque ou un mauvais cable (certains cables chargeurs ne font pas de data). Essaie deja de maintenir le bouton Erase enfonce pendant que tu branches l'USB, puis relache-le pour v… — bricoleur-75
Retours et projets de la communauté
- Sharing a fully working DUE based scope + AWG project, with fully automated self test/measurement suite and cross-platform GUI forum.arduino.cc
- Arduino Due bad Analog/digital conversion results forum.arduino.cc
- Building your own Custom ARDUINO DUE and Programming Firmware onto it forum.arduino.cc
- Arduino Due / SAM3X8E: enabling ADC channel 15 (internal temp sensor) conflicts with digital output pin 13 forum.arduino.cc
- Official board page
- Official store page / product JSON
- Official tech specs (source of docs.arduino.cc spec table)
- MCU datasheet
- Microchip product page (status)
- boards.txt
- variant.h
- variant.cpp
- wiring_analog.c
- Core / bootloader / variant sources
- features.md
- USBHost library
- Official USB-host tutorial
- Community CAN library
- product.md
- Forum category
- Wikipedia board comparison table
- 3,3 V uniquement — non tolérant 5 V. La page produit officielle affiche un avertissement explicite en gras indiquant qu'appliquer plus de 3,3 V à n'importe quelle broche d'E/S peut endommager la carte ; les shields/signaux 5 V nécessitent une adaptation de niveau même si l'empreinte shield s'adapte physiquement (JSON produit de la boutique).
- Faible courant de commande par broche. 9 mA / 3 mA par groupe de broches et 130 mA au total sur toutes les lignes d'E/S — bien loin des 20–40 mA des cartes AVR — donc LED, relais et solénoïdes nécessitent fréquemment des pilotes (tech-specs officielles).
- analogRead renvoie silencieusement des valeurs 10 bits alors que l'ADC est 12 bits (défaut _readResolution = 10) ; beaucoup de tutoriels supposent 0–4095 et obtiennent 0–1023 tant qu'ils n'appellent pas analogReadResolution(12) (wiring_analog.c).
- Particularités CDC du port natif. SerialUSB n'existe qu'une fois que l'hôte USB a énuméré la classe CDC ; les sketches qui se bloquent dessus sans hôte connecté, ou qui se ré-énumèrent au reset, sont un sujet de forum récurrent (sujet de forum 1183292 — CDC sur les Arduino USB natif).
- Carte invisible sur les deux ports. Mode de défaillance classique : ni le Programming Port ni le port Native ne s'énumèrent (mauvais câble / puce de clone / bootloader briqué) ; la récupération passe par le bouton erase + SAM-BA (sujet de forum 1161811).
- La flash doit être effacée avant toute re-programmation. Le code de boot du SAM3X exige un effacement complet de la flash quand un sketch tourne déjà ; le touch automatique à 1200 bauds s'en charge, mais quand l'état du bootloader est perdu, il faut maintenir le bouton erase et retéléverser manuellement (sujet de forum 1278587).
- Numérotation des contrôleurs I²C source de confusion. Wire correspond à TWI1 (broches 20/21) alors que Wire1 correspond à TWI0 (le connecteur 4 broches, broches 70/71) — les références TWI0/TWI1 au niveau de la fiche technique ne correspondent pas aux noms Arduino (variant.h).
- CAN annoncée, transceiver non embarqué. La page marketing parle de « two CAN buses », mais le tableau des specs officielles ajoute « ext. transceiver needed » — il faut ajouter un transceiver CAN 3,3 V (et vérifier que les signaux sont accessibles sur votre clone/révision) avant que quoi que ce soit n'apparaisse sur le bus (tech-specs officielles vs page de la carte).
- Pas d'EEPROM. 0 KB d'EEPROM contre 1 KB sur l'Uno — persister des données de calibration exige des astuces d'écriture en flash ou une EEPROM externe I²C/SPI (tableau des cartes Wikipedia).
- Plateforme vieillissante / dérive de l'écosystème. Le core SAM est en mode maintenance pendant qu'Arduino pousse les plateformes mbed/renesas ; MicroPython/CircuitPython n'ont jamais eu de port SAM3X, et Mbed (qui supportait la Due) a été arrêté en juillet 2026 (liste des ports MicroPython, annonce du sunset Mbed).
- Faire clignoter la LED de l'Arduino Due et apprivoiser ses deux ports USB debutant Schéma : IMG-due-debutant-1-clignoter-led-due.svg — Arduino Due vue de dessus, LED L (broche 13) surlignée près du connecteur JTAG, les deux connecteurs micro-USB « Programming » (16U2) et « Native » (SAM3X) annotés, badge d'avertissement 3,3 V.
- Lire un potentiomètre avec le vrai ADC 12 bits de la Due debutant Schéma : IMG-due-debutant-2-potentiometre-adc-12-bits.svg — Arduino Due avec un potentiomètre 10 kΩ câblé sur A0 (3,3 V / A0 / GND), moniteur série affichant des valeurs 0–4095 après analogReadResolution(12), puce ADC 12 bits annotée.
- Allumer une LED externe en respectant les broches 3,3 V et 9 mA de la Due debutant Schéma : IMG-due-debutant-3-led-externe-resistance-3v3.svg — Arduino Due, broche 9 reliée via une résistance 100 Ω à une LED rouge dont la cathode va à GND, encart de calcul (3,3 V − 2 V)/10 mA ≈ 130 Ω et rappel des groupes 9 mA / 3 mA.
- Générer une vraie tension analogique avec les DAC 12 bits (broches 66 et 67) intermediaire Schéma : IMG-due-intermediaire-1-dac-veritable-sortie-analogique.svg — Arduino Due, broche DAC0 (66) sortant vers l'entrée d'un oscilloscope affichant une rampe en dents de scie, puce DACC 12 bits annotée, broche DAC1 (67) disponible à côté.
- Dialoguer avec un GPS (ou tout module TTL) sur Serial1 sans bloquer la boucle intermediaire Schéma : IMG-due-intermediaire-2-gps-non-bloquant-serial1.svg — module GPS connecté à l'Arduino Due sur Serial1 (RX=18, TX=19, GND, 3,3 V), encart « logique 3,3 V : niveau-baisseur requis pour un module 5 V », trame NMEA affichée.
- Scanner les deux bus I2C de la Due (Wire sur 20/21, Wire1 sur 70/71) intermediaire Schéma : IMG-due-intermediaire-2-scanner-deux-bus-i2c.svg — Arduino Due avec deux bus I2C distincts : Wire/TWI1 sur les broches 20 (SDA) et 21 (SCL) près de AREF, Wire1/TWI0 sur le connecteur 4 broches 70/71 près du RESET, résistances de pull-up 4,7 kΩ annotées.
- Monter la Due sur un bus CAN 500 kbit/s avec un transceiver externe avance Schéma : IMG-due-avance-1-can-bus-500k-due-can.svg — signaux CAN0 (broches 68 RX / 69 TX) de l'Arduino Due reliés à un module transceiver CAN 3,3 V (TJA1050/SN65HVD230) connecté au bus CAN_H/CAN_L avec résistance de terminaison 120 Ω, mention « transceiver externe requis ».
- Utiliser la Due en hôte USB : lire un clavier sur le port Native avance Schéma : IMG-due-avance-2-usb-host-clavier-usbhost.svg — clavier USB branché via un hub alimenté sur le connecteur micro-USB Native de l'Arduino Due, bibliothèque USBHost annotée, moniteur série affichant les touches reçues.
- Sauver une Due invisible : bouton Erase, SAM-BA et bossac en secours avance Schéma : IMG-due-avance-3-reparer-due-bouton-erase-sam-ba.svg — Arduino Due vue de dessus avec les boutons RESET et ERASE surlignés près du connecteur ICSP/JTAG, port Programming relié au PC, étapes numérotées maintenir ERASE puis téléverser, et outil SAM-BA en secours.
Bibliothèque de code — exemples écrits pour cette carte
clignotante.inoArduinobouton-led.inoArduinodac-onde.inoArduinoadc-12-bits.inoArduinopwm-12-bits.inoArduinogps-serial1.inoArduinopont-usb-serial1.inoArduinoservo-balayage.inoArduinotest-can.inoArduinousb-native.inoArduino
Exemples et dépôts trouvés en ligne
- arduino/ArduinoCore-sam github.com
- sdroege/arduino-due-rust github.com
- openenergymonitor/ArduinoDue_3phase github.com
- Gadgetoid/Arduino-DueVGA-Tools github.com
- christation/Arduino-Due-ADC-DMA github.com