Arduino Due

  • €33,50


Arduino Due es la primera placa Arduino basada en un microcontrolador ARM de 32 bits. Con 54 pines digitales de entrada/salida, 12 entradas analógicas, es la placa perfecta para proyectos potentes de Arduino a gran escala.

El Arduino Due es una placa electronica basada en la  CPU Atmel SAM3X8E ARM Cortex-M3 . Es la primera placa Arduino basada en un microcontrolador de núcleo ARM de 32 bits. Tiene 54 pines digitales de entrada / salida (de los cuales 12 se pueden usar como salidas PWM), 12 entradas analógicas, 4 UART (puertos serie de hardware), un reloj de 84 MHz, una conexión compatible con OTG USB, 2 DAC (digital a analógico) , 2 TWI, un conector de alimentación, un encabezado SPI, un encabezado JTAG, un botón de reinicio y un botón de borrado.

Ten en cuenta que a diferencia de la mayoría de las placas Arduino, la placa Arduino Due funciona a 3.3V. El voltaje máximo que los pines de E / S pueden tolerar es 3.3V. La aplicación de voltajes superiores a 3,3 V en cualquier pin de E / S podría dañar tu placa.

La placa contiene todo lo necesario para soportar el microcontrolador; simplemente conéctelo a una computadora con un cable micro-USB o con un adaptador de CA a CC o batería para comenzar. El Due es compatible con todas las extensiones Arduino que funcionan a 3.3V y sigue el pinout del Arduino 1.0.

  • TWI : pines SDA y SCL que están cerca del pin AREF.
  • IOREF : permite un shield adjunto adaptarse a la tensión proporcionada por la placa. Esto permite la compatibilidad del shield con una placa de 3.3V como las placas Due y AVR que operan a 5V.
  • Un pin no conectado, reservado para uso futuro.

Puede encontrar la información de garantía de su placa  aquí .

Para empezar

En la  sección de Introducción de Arduino, puede encontrar toda la información que necesita para configurar su placa, usar el  software Arduino (IDE) y comenzar a jugar con la codificación y la electrónica.

Si necesitas mas ayuda mira estos enlaces

Especificaciones técnicas

Microcontrolador AT91SAM3X8E
Tensión de funcionamiento 3.3V
Voltaje de entrada (recomendado) 7-12V
Voltaje de entrada (límites) 6-16V
Pines de E / S digitales 54 (de los cuales 12 proporcionan salida PWM)
Pines analógicos 12
Salidas analógicas 2 (DAC)
Corriente CC total de salida en todos las líneas de E / S 130 mA
Corriente DC para 3.3V Pin 800 mA
Corriente DC para Pin de 5V 800 mA
Memoria flash 512 KB todos disponibles para las aplicaciones de usuario
SRAM 96 KB (dos bancos: 64 KB y 32 KB)
Velocidad de reloj 84 MHz
Longitud 101.52 mm
Anchura 53.3 mm
Peso 36 g

Esquemas

¡Arduino Due es hardware de código abierto! Puedes construir tu propio tablero usando los siguientes archivos:

Alimentación

El Arduino Due se puede alimentar a través del conector USB o con una fuente de alimentación externa. La fuente de alimentación se selecciona automáticamente.

La alimentación externa (no USB) puede provenir de un adaptador de CA a CC o batería. El adaptador se puede conectar mediente un conector jack con centro positivo de 2.1 mm en el conector de alimentación de la placa. Los cables de una batería se pueden insertar en los pines GND y Vin del conector POWER.

La placa puede operar con un suministro externo de 6 a 20 voltios. Sin embargo, si se suministra con menos de 7 V, el pin de 5 V puede suministrar menos de cinco voltios y la placa puede ser inestable. Si usa más de 12 V, el regulador de voltaje puede sobrecalentarse y dañar la placa. El rango recomendado es de 7 a 12 voltios.

Los pines de alimentación son los siguientes:

  • Vin.  Voltaje de entrada a la placa Arduino cuando usa una fuente de alimentación externa (a diferencia de 5 voltios de la conexión USB u otra fuente de alimentación regulada). Puede suministrar voltaje a través de este pin, o si suministra voltaje a través del conector de alimentación, acceda a través de este pin.
  • 5V . Este pin produce 5 V regulado desde el regulador en la placa. La placa se puede alimentar con la toma de alimentación de CC (7-12 V), el conector USB (5 V) o el pin VIN de la placa (7-12 V). El suministro de voltaje a través de los pines de 5V o 3.3V evita el regulador y puede dañar su tarjeta. Nosotros no lo aconsejamos
  • 3V3 . Una fuente de 3.3 voltios generada por el regulador de la placa. El consumo máximo de corriente es de 800 mA. Este regulador también proporciona alimentación al microcontrolador SAM3X.
  • GND . Pines de tierra
  • IOREF . Este pin en la placa Arduino proporciona la referencia de voltaje con la que opera el microcontrolador. Un shield correctamente configurado puede leer el voltaje de pin IOREF y seleccionar la fuente de alimentación apropiada o habilitar traductores de voltaje en las salidas para trabajar con 5V o 3.3V.

Memoria

El SAM3X tiene 512 KB (2 bloques de 256 KB) de memoria flash para almacenar el código. El gestor de arranque está precargado desde fábrica en Atmel y se almacena en una memoria ROM dedicada. La SRAM disponible es de 96 KB en dos bancos contiguos de 64 KB y 32 KB. Se puede acceder directamente a toda la memoria disponible (Flash, RAM y ROM) como un espacio de direccionamiento plano.

Es posible borrar la memoria Flash del SAM3X con el botón de borrado a bordo. Esto eliminará el codigo cargado actualmente de la MCU. Para borrar, presione y mantenga presionado el botón de Borrar durante unos segundos mientras la placa está encendida.

Entrada y salida

  • E / S digital: pins de 0 a 53
    • Cada uno de los 54 pines digitales del Due se puede usar como entrada o salida, usando las  funciones pinMode () , digitalWrite ()  digitalRead ()  . Operan a 3,3 voltios. Cada pin puede proporcionar una corriente de 3 mA o 15 mA, dependiendo del pin, o recibir una corriente de 6 mA o 9 mA, dependiendo del pin. También tienen una resistencia interna de pull-up (desconectada por defecto) de 100 KΩ. Además, algunos pines tienen funciones especializadas:
  • Serie: 0 (RX) y 1 (TX)
  • Serie 1: 19 (RX) y 18 (TX)
  • Serie 2: 17 (RX) y 16 (TX)
  • Serie 3: 15 (RX) y 14 (TX) Se usa para recibir (RX) y transmitir (TX) datos en serie TTL (con un nivel de 3,3 V). Los pines 0 y 1 se conectan a los pines correspondientes del chip ATmega16U2 USB-to-TTL Serial.
  • PWM: Pines 2 a 13  Proporcionan salida PWM de 8 bits con la función  analogWrite ()  . la resolución del PWM se puede cambiar con la función  analogWriteResolution ().
  • SPI: encabezado SPI (encabezado ICSP en otras placas Arduino)   Estos pines admiten comunicación SPI utilizando la  biblioteca SPI . Los pines SPI se dividen en los 6 pines centrales, lo que lo hace físicamente compatible con Uno, Leonardo y Mega2560. Los pines SPI solo se puede usar para comunicarse con otros dispositivos SPI, no para programar el SAM3X con la técnica de programación en serie en el circuito. El SPI de Due también ha avanzado características que se pueden utilizar con los  métodos de SPI extendido para Due.
  • CAN: CANRX y CANTX Estos pines admiten el protocolo de comunicación CAN pero aún no son compatibles con las API de Arduino.
  • LED "L": 13  Hay un LED incorporado conectado al pin 13 digital. Cuando el pin es ALTO, el LED está encendido, cuando el pin está BAJO, está apagado. También es posible atenuar el LED porque el pin digital 13 también es una salida PWM.
  • TWI 1: 20 (SDA) y 21 (SCL)
  • TWI 2: SDA1 y SCL1. Soporte de comunicación TWI utilizando la biblioteca Wire. SDA1 y SCL1 se pueden controlar utilizando la clase Wire1 proporcionada por la  biblioteca Wire . Mientras que SDA y SCL tienen resistencias de pullup internas, SDA1 y SCL1 no tienen. Es necesario agregar dos resistencias pullup en las líneas SDA1 y SCL1 para usar Wire1.
  • Entradas analógicas: pines de A0 a A11. El Due tiene 12 entradas analógicas, cada una de las cuales puede proporcionar 12 bits de resolución (es decir, 4096 valores diferentes). Por defecto, la resolución de las lecturas se establece en 10 bits, para compatibilidad con otras placas Arduino. Es posible cambiar la resolución del ADC con analogReadResolution () . Los pines de entradas analógicas de Due miden desde tierra hasta un valor máximo de 3.3V. Aplicar más de 3.3V en los pines Due dañará el chip SAM3X. La función analogReference () se ignora en Due.

El pin AREF se conecta al pin de referencia analógico SAM3X a través de un puente de resistencia. Para usar el pin AREF, la resistencia BR1 debe ser desoldada de la PCB.

  • DAC1 y DAC2 Estos pines proporcionan salidas analógicas verdaderas con resolución de 12 bits (4096 niveles) con la función  analogWrite ()  . Estos pines se pueden usar para crear una salida de audio usando la  biblioteca de audio.

Tenga en cuenta que el rango de salida DAC es realmente de 0.55 V a 2.75 V solamente.

Otros pines inportantes:

  • AREF Voltaje de referencia para las entradas analógicas. Usado con  analogReference () .
  • Reset Ponga esta línea en LOW para restablecer el microcontrolador. Normalmente se usa para agregar un botón de reinicio a los escudos que bloquean el que está en el tablero.

Consulte también la asignación entre los pines Arduino y los puertos SAM3X

Comunicación

El Arduino Due ofrece diferentes métodos para comunicarse con una ordenador, otro Arduino u otros microcontroladores, y diferentes dispositivos como teléfonos, tabletas, cámaras, etc. El SAM3X proporciona un UART de hardware y tres USART de hardware para comunicación serial TTL (3.3V).

El puerto de programación está conectado a un ATmega16U2, que proporciona un puerto COM virtual al software del PC conectado (para reconocer el dispositivo, las máquinas Windows necesitarán un archivo .inf, pero las máquinas OSX y Linux reconocerán el tablero como un puerto COM automáticamente ) El 16U2 también está conectado al hardware UART SAM3X. Los pines RX0 y TX0 proporciona comunicación serie por USB para programar la placa a través del microcontrolador ATmega16U2. El software Arduino incluye un monitor en serie que permite el envío de datos simples desde y hacia la placa. Los LED RX y TX de la placa parpadearán cuando los datos se transmitan a través del chip ATmega16U2 y la conexión USB al PC (pero no para la comunicación serie en los pines 0 y 1).

El puerto USB nativo está conectado al SAM3X. Permite la comunicación en serie (CDC) a través de USB. Esto proporciona una conexión en serie al Monitor Serie u otras aplicaciones en el PC. También permite que Due emule un ratón o teclado USB conectado a un PC. Para usar estas características, consulte las páginas de referencia de la biblioteca del  mouse y del teclado .

El puerto USB nativo también puede actuar como un host USB para periféricos conectados, como ratones, teclados y smartphones. Para utilizar estas funciones, consulte las  páginas de referencia de USBHost .

El SAM3X también es compatible con la comunicación TWI y SPI. El software Arduino incluye una biblioteca Wire para simplificar el uso del bus TWI; ver la  documentación para más detalles. Para la comunicación SPI, use la  biblioteca SPI .

Programación

El Due puede programarse con el software Arduino  Arduino  (IDE). Para más detalles, consulte la  referencia  y  tutoriales .

La carga de codigo en el SAM3X es diferente de los microcontroladores AVR que se encuentran en otras placas Arduino porque la memoria flash debe borrarse antes de reprogramarse. La carga en el chip se administra mediante ROM en el SAM3X, que se ejecuta solo cuando la memoria flash del chip está vacía.

Cualquiera de los puertos USB se puede usar para programar la placa, aunque se recomienda utilizar el puerto de programación debido a la forma en que se maneja el borrado del chip:

  • Puerto de programación: para usar este puerto, seleccione "Arduino Due (ProgrammingPort)" como su placa en el Arduino IDE. Conecte el puerto de programación de Due (el más cercano a la toma de alimentación de CC) a su PC. El puerto de programación utiliza el 16U2 como un chip de USB a serie conectado al primer UART del SAM3X (RX0 y TX0). El 16U2 tiene dos pines conectados a los pines de reinicio y borrado del SAM3X. Al abrir y cerrar el puerto de programación conectado a 1200 bps, se inicia un procedimiento de "borrado duro" del chip SAM3X, que activa las patillas de borrado y reinicio en el SAM3X antes de comunicarse con el UART. Este es el puerto recomendado para programar el Due. Es más confiable que el "borrado suave" que ocurre en el puerto Native, y debería funcionar incluso si la MCU principal se ha bloqueado.
  • Puerto nativo: para usar este puerto, seleccione "Arduino Due (NativeUSBPort)" como su placa en el Arduino IDE. El puerto USB nativo está conectado directamente al SAM3X. Conecte el puerto USB nativo de Due (el más cercano al botón de reinicio) a su PC. Abrir y cerrar el puerto nativo a 1200 bps activa un procedimiento de "borrado suave": la memoria flash se borra y la placa se reinicia con el gestor de arranque. Si la MCU falla por alguna razón, es probable que el procedimiento de borrado suave no funcione ya que este procedimiento ocurre completamente en el software del SAM3X. Abrir y cerrar el puerto nativo a una velocidad de transmisión diferente no restablecerá el SAM3X.

A diferencia de otras placas Arduino que usan avrdude para cargar, Due depende de bossac. Puede usar los pines del ISP con un programador externo (sobrescribiendo el gestor de arranque DFU). Vea este tutorial contribuido por el usuario para más información.

Protección de sobreintensidad USB

El Arduino Due tiene un polifuse reajustable que protege los puertos USB de su PC contra cortocircuitos y/o  sobretensión. Aunque la mayoría de los PC proporcionan su propia protección interna, el fusible proporciona una capa adicional de protección. Si se aplica más de 500 mA al puerto USB, el fusible romperá automáticamente la conexión hasta que se elimine el cortocircuito o la sobretensión.

Características físicas y compatibilidad del Shield

La longitud y el ancho máximos de la PCB Arduino Due son de 10.16 y 5.3 cm respectivamente, con los conectores USB y el conector de alimentación extendiéndose más allá de la dimensión anterior. Tres orificios para tornillos permiten que la placa se una a una superficie o caja. Tenga en cuenta que la distancia entre los pines digitales 7 y 8 es de 160 mil (0.16 "), no es un múltiplo par del espaciado de 100 mil de los otros pines.

Arduino Due está diseñado para ser compatible con la mayoría de los shields diseñados para Uno, Diecimila o Duemilanove. Los pines digitales 0 a 13 (y los pines adyacentes AREF y GND), las entradas analógicas 0 a 5, los pines de alimentación e "ICSP" (SPI) están todos en ubicaciones equivalentes. Además, el UART principal (puerto serie) está ubicado en los mismos pines (0 y 1). Tenga en cuenta que I2C no se encuentra en los mismos pines en el Due (20 y 21) como el Duemilanove / Diecimila (entradas analógicas 4 y 5) .