Aprender

Arduino Nano pinout: every pin, its chip pin and its limits

Principiante

O mira todas las lecciones.

  • 503componentes en el banco de trabajo
  • 44placas funcionando ahora
  • 1.00xtiempo real, en todas las placas
Arduino Nano: una perilla en A7live0.000 s 0.00x
Haz clic para abrirlo en el editor
Un potenciómetro en A7, un pin solo analógico, define el brillo de un LED en el pin PWM 9.

El Arduino Nano es el ATmega328P de un Uno en una placa que entra en una protoboard, con dos entradas analógicas para las que un Uno no tiene pad. Esta página lista los treinta pines con el pin de puerto del ATmega328P detrás de cada uno, qué pines hacen PWM y en qué temporizador, los pines I2C, SPI y de interrupción, los pines de alimentación y sus límites, y qué pin usar para qué.

El circuito de arriba es un Nano en Mokxi con un potenciómetro en A7, uno de los dos pines solo analógicos, que atenúa un LED en el pin 9. La tabla se lee del mismo modelo de placa que ejecuta el simulador, y donde el simulador hace menos que la placa, la página lo dice.

Cada pin, con su pin del ATmega328P

Con el conector USB arriba, el header izquierdo lee D1, D0, RESET, GND, luego D2 a D12. El derecho lee VIN, GND, RESET, 5V, de A7 hacia A0, AREF, 3V3 y D13. RESET y GND aparecen cada uno dos veces, en ambos extremos de la placa en una sola pista. Los pines 0 a 7 son el puerto D, 8 a 13 son el puerto B y A0 a A5 son el puerto C, igual que en un Uno, así que un sketch a nivel de registros pasa sin cambios.

En el código, los pines digitales son sus números y los pines analógicos son A0 a A7. A0 a A5 también son los pines digitales 14 a 19.

Arduino Nano: el header izquierdo de arriba abajo, luego el derecho, USB arriba
PinPin del chipQué puede hacerTen cuidado con
1PD1TX: Serial de salida, hacia el chip USB a serie.Déjalo libre, o la carga y el monitor serie fallan.
0PD0RX: Serial de entrada, desde el chip USB a serie.Déjalo libre, o la carga y el monitor serie fallan.
RESETPC6Reinicio: en bajo reinicia el chip. Dos orificios, una pista.Not a GPIO.
GND-Tierra. Dos orificios.-
2PD2Digital. INT0: attachInterrupt.Una buena primera opción para un botón.
3PD3PWM en el temporizador 2, 490 Hz. INT1: attachInterrupt.tone() toma el temporizador 2 en una placa real.
4PD4Digital.-
5PD5PWM en el temporizador 0, 976 Hz.El temporizador 0 también maneja millis().
6PD6PWM en el temporizador 0, 976 Hz.El temporizador 0 también maneja millis().
7PD7Digital.-
8PB0Digital.-
9PB1PWM en el temporizador 1, 490 Hz.La biblioteca Servo toma el temporizador 1 en una placa real.
10PB2PWM en el temporizador 1, 490 Hz. SPI SS.La biblioteca Servo toma el temporizador 1 en una placa real.
11PB3PWM en el temporizador 2, 490 Hz. SPI MOSI, también en el header ICSP.tone() toma el temporizador 2 en una placa real.
12PB4Digital. SPI MISO, también en el header ICSP.-
VIN-Entrada de alimentación del regulador integrado, de 7 a 12 V.Not a GPIO.
5V-5 V de salida del USB o del regulador.Not a GPIO.
A7ADC7Solo entrada analógica.Sin lectura ni escritura digital y sin pull-up.
A6ADC6Solo entrada analógica.Sin lectura ni escritura digital y sin pull-up.
A5PC5Analógico. Digital 19. I2C SCL.Lo usa cualquier dispositivo I2C.
A4PC4Analógico. Digital 18. I2C SDA.Lo usa cualquier dispositivo I2C.
A3PC3Analógico. Digital 17.-
A2PC2Analógico. Digital 16.-
A1PC1Analógico. Digital 15.-
A0PC0Analógico. Digital 14.-
AREF-La entrada de referencia analógica.No es un GPIO. Nunca más de 5 V.
3V3-Una pequeña salida de 3.3 V para un sensor.No es para un motor ni un servo.
13PB5Digital. SPI SCK, también en el header ICSP. El LED L, encendido con HIGH.El LED carga el pin, así que es una mala entrada.

Pines de alimentación y sus límites

VIN alimenta el regulador integrado de 5 V, y Arduino recomienda de 7 a 12 V ahí. 5V es el riel regulado, del conector USB o del regulador, y puedes alimentar la placa poniéndole un 5 V limpio. 3V3 es una pequeña salida de 3.3 V, buena para un sensor e inútil para un motor. Los orificios GND son una misma tierra.

Cada pin aguanta unos 20 mA, y el máximo absoluto del ATmega328P es de 40 mA por pin y 200 mA para todo el chip. En Mokxi la placa siempre se alimenta por USB, VIN es una entrada que ignora, y el riel de 5 V es una fuente ideal que no puede caer, así que un circuito que dejaría sin voltaje a un Nano real corre sin problema aquí.

Pines PWM y sus temporizadores

Los pines 3, 5, 6, 9, 10 y 11 hacen PWM con analogWrite, y la serigrafía los marca con una tilde. Cada par comparte un temporizador: 5 y 6 son el temporizador 0 a 976 Hz, 9 y 10 son el temporizador 1 y 3 y 11 son el temporizador 2, ambos a 490 Hz. Mokxi los ejecuta en los mismos temporizadores a las mismas frecuencias.

Los temporizadores explican dos cosas que sorprenden a la gente en un Nano real. La biblioteca Servo toma el temporizador 1, así que analogWrite en 9 y 10 deja de funcionar mientras hay un servo conectado. Y tone() toma el temporizador 2, así que un buzzer que toca una nota detiene el PWM en 3 y 11.

A6 y A7: solo analógicos

El chip del Nano es el ATmega328P en su paquete cuadrado pequeño, que saca dos canales del conversor para los que el chip DIP del Uno no tiene pin. A6 y A7 son los canales 6 y 7 del ADC y nada más: analogRead(A7) funciona, y pinMode, digitalRead, digitalWrite y el pull-up interno no, ni en el chip real ni en Mokxi. Son un buen lugar para una perilla, como en el circuito de arriba, y ningún lugar para un botón.

Cada pin analógico lee diez bits, de 0 a 1023, respecto al riel de 5 V a menos que AREF diga otra cosa. El conversor de Mokxi no tiene ruido, así que un divisor lee la misma cuenta cada vez, donde uno real fluctúa en uno o dos.

Serial, el chip USB, I2C, SPI y el header ICSP

Los pines 0 y 1 son el puerto serie de hardware, y en un Nano real van al chip USB a serie, un FT232RL en un original y un CH340 en la mayoría de los clones. Cualquier cosa conectada a ellos puede interrumpir una carga, así que déjalos libres. Mokxi no modela ese chip: Serial llega directo al monitor serie.

I2C es A4 para SDA y A5 para SCL; no hay orificios SDA y SCL aparte. SPI es 10, 11, 12 y 13 para SS, MOSI, MISO y SCK. El header ICSP de seis pines al final de la placa lleva MISO, SCK, MOSI, RESET, 5V y GND, las mismas señales SPI, para programar el chip directamente. Mokxi no dibuja el header ICSP como pines.

Preguntas

¿Qué pin del Arduino Nano debo usar para un botón?

El pin 2 o 3 si quieres una interrupción, si no cualquiera de 4, 7, 8 o 12, con `INPUT_PULLUP` y el botón a tierra. No A6 ni A7, que no pueden leer en digital, y no el 13, cuyo LED lo jala a bajo.

¿Qué pines del Nano son PWM?

Los pines 3, 5, 6, 9, 10 y 11, los seis con tilde. El 5 y el 6 corren a 976 Hz y los otros cuatro a 490 Hz.

¿Cuáles son los pines I2C del Arduino Nano?

A4 es SDA y A5 es SCL. `Wire.begin()` los usa, y son los mismos dos que en un Uno.

¿Qué voltaje puedo poner en el pin VIN del Nano?

Arduino recomienda de 7 a 12 V. Por debajo, el regulador no puede dar un 5 V estable, y por encima se calienta. Una batería de 9 V funciona; el USB es más fácil.

¿Cuáles son los pines SPI del Nano?

SS es 10, MOSI es 11, MISO es 12 y SCK es 13. Los últimos tres también están en el header ICSP.

¿Qué pin del Nano debo usar para un servo?

El pin 9 es la opción habitual. La biblioteca Servo maneja cualquier pin digital, y en un Nano real toma el temporizador 1 sea cual sea el pin que elijas, que es lo que detiene el PWM en 9 y 10.

¿Puedo usar A6 y A7 como pines digitales?

No. No tienen circuitería digital detrás en el chip. Léelos con `analogRead` y compara el número, si es necesario, como en `analogRead(A6) > 512`.

Ármalo en la vida real

Abre el editor, cambia un valor y mira cómo el número cambia con él. Nada que instalar y sin necesidad de cuenta.