Diferencia entre revisiones de «NANO»

De ArduWiki
Saltar a: navegación, buscar
(Referencias externas)
 
(No se muestran 23 ediciones intermedias del mismo usuario)
Línea 1: Línea 1:
 
== Descripción ==
 
== Descripción ==
El Arduino Nano es una placa pequeña, compacta y fácil de usar basado en el ATmega328P (como [[UNO]]). Tiene más o menos la misma funcionalidad del Arduino Duemilanove, pero en un paquete diferente. Solo le falta un conector de alimentación VCC y funciona con un cable USB Mini-B en lugar de uno estándar.
+
El Arduino Nano es una placa pequeña, compacta y fácil de usar basado en el ATmega328P (como [[UNO]]). Solo le falta la clavija de alimentación VCC, pero tiene el pin VIN y funciona con un cable USB Mini-B en lugar de uno estándar.
 +
 
 +
Esta basado en el uC ATmega328P de 8 bits a 16 MHz, perteneciente a la familia AVR de arquitectura RISC, 32 registros de trabajo, 3 temporizadores flexibles, UART serie, convertidos ADC de 14 canales de 10 bits. Encapsulado DIP de 28 pines.
  
 
== Características ==
 
== Características ==
Línea 27: Línea 29:
 
|Pines digitales||14 (6 PWM de 8 bits)
 
|Pines digitales||14 (6 PWM de 8 bits)
 
|-
 
|-
|Pines analogicos||8
+
|Pines analógicos||8
 
|-
 
|-
 
|Corriente por pines||40 mA
 
|Corriente por pines||40 mA
 
|-
 
|-
|LED_BUILTIN||13
+
|[[LED_BUILTIN]]||13
 
|}
 
|}
  
== Pines ==
+
== Interrupciones ==
 +
Interrupciones externas: 2 y 3. Estos pines se pueden configurar para activar una interrupción en un valor bajo, un flanco ascendente (RISING) o descendente (FALLING), o un cambio en el valor (CHANGE). Vea la función [[attachInterrupt()]] para más detalles.
  
 
== Pines digitales ==
 
== Pines digitales ==
 
* Existen 14 pines digitales (0~13) que pueden ser configurados como entrada o salida digital.
 
* Existen 14 pines digitales (0~13) que pueden ser configurados como entrada o salida digital.
 
* No debes meter o sacar mas de 40 mA en cada una.
 
* No debes meter o sacar mas de 40 mA en cada una.
* 6 de ellos están marcados con '''~''' y pueden ser usados como [[analogWrite()|PWM]].
+
* 6 de ellos están marcados con '''~''' y pueden ser usados como [[analogWrite()|PWM]]. 3, 5, 6, 9, 10 y 11.
 
* Deben ser previamente configurados con [[pinMode()]].
 
* Deben ser previamente configurados con [[pinMode()]].
  
 
== Pines analógicos ==
 
== Pines analógicos ==
* Los pines marcados A0~A5 se usan para hacer lecturas "analógicas" que son codificadas via un ADC.
+
* Los pines marcados A0~A7 se usan para hacer lecturas "analógicas" que son codificadas via un ADC. No es necesario usar [[pinMode()]].
* Usando la función [[analogRead()]] se obtiene lectura entre 0 (para 0V) y 1023 (para 5V). El rango puede alterarse mediante una programación adecuada y/o suministrando un voltaje diferente al pin AREF.
+
* Cada entrada analógica tiene una resolución de 10 bits. Usando la función [[analogRead()]] se obtiene lectura entre 0 (para 0V) y 1023 (para 5V). El rango puede alterarse fácilmente usando la función [[map()]] y/o suministrando un voltaje diferente al pin AREF.
 
* Aquí puede poner alguna fuente de voltaje (de 0 a 5 V) como una "referencia de voltaje" precisa para las llamadas a la función [[analogRead()]].
 
* Aquí puede poner alguna fuente de voltaje (de 0 a 5 V) como una "referencia de voltaje" precisa para las llamadas a la función [[analogRead()]].
* Los pines analógicos A0~A5 también pueden usarse para lectura/escritura digital. Para este propósito, puede referirse a ellos como pines 14~19.
+
* Los pines analógicos A0~A5 también pueden usarse para lectura/escritura digital. Para este propósito, puede referirse a ellos como pines 14~19. Los pines analógicos A6 y A7 no pueden ser usados como digitales.
  
== LED_BUILTIN ==
+
== LEDs ==
Tiene un LED incorporado en el pin digital 13. Cuando el pin 13 esta en HIGH prende.
+
* Un LED power marcado como ON.
 +
* Tiene un LED incorporado en el pin digital 13 denominado [[LED_BUILTIN]]. Cuando el pin 13 esta en HIGH prende.
 +
* Dos LEDs de transmision serie Tx/Rx.
  
== Puerto serie ==
+
Los LED de Tx y Rx en la placa parpadearán cuando los datos se estén transmitiendo a través del chip FTDI y la conexión USB a la computadora, pero no para la comunicación en serie en los pines 0 y 1.  
Los pines 0 (Rx) y 1 (Tx) se pueden usar para comunicaciones serie asíncronas.
 
  
Estos pines también están conectados internamente a través de resistencias de 1K al chip USB, de modo que los datos de la interfaz USB se pueden enviar/recibir a los pines 0 y 1.
+
== Botones ==
 +
* Tiene un botón reset.
 +
* Adicionalmente tiene un pin RST que con un LOW reiniciar el microcontrolador. Normalmente se usa para agregar un botón de reinicio con los modulos que bloquean el botón incorporado.
  
 
== ICSP ==
 
== ICSP ==
* Exiten dos conectores ICSP uno conectado al ATmega328P y el otro al ATmega16U2.
+
* Exiten un conectores ICSP conectado al ATmega328P.
 
* Se usa para programar el uC ATmega328P principal (el más común) o el procesador de interfaz USB ATmega16U2 (solo si es necesario).
 
* Se usa para programar el uC ATmega328P principal (el más común) o el procesador de interfaz USB ATmega16U2 (solo si es necesario).
 
* El sistema ICSP usa [[SPI]] con un protocolo integrado en los chips.
 
* El sistema ICSP usa [[SPI]] con un protocolo integrado en los chips.
Línea 77: Línea 83:
 
|}
 
|}
  
{{Nota|La programación también se realiza normalmente utilizando la interfaz serie asíncrona (pines D0 / D1) y un programa de gestor de arranque instalado.}}
+
{{Nota|La programación también se realiza normalmente usando la interfaz serie asíncrona (pines D0 / D1) y un programa de gestor de arranque instalado.}}
 +
 
 +
== Puerto serie ==
 +
Los pines 0 (Rx) y 1 (Tx) se pueden usar para comunicaciones serie asíncronas.
 +
 
 +
Estos pines también están conectados internamente a través de resistencias de 1K al chip USB, de modo que los datos de la interfaz USB se pueden enviar/recibir a los pines 0 y 1.
 +
 
 +
Un FTDI FT232RL en la placa canaliza esta comunicación serie a través de USB y los controladores FTDI (incluidos con el software Arduino) proporcionan un puerto de comunicaciones virtual con una computadora.
 +
 
 +
{{Nota|La libreria [[SoftwareSerial]] permite la comunicación en serie por cualquiera de los pines digitales del Nano.}}
 +
 
 +
== Bus I2C ==
 +
Un protocolo '''Inter Integrated Circuit''' (también llamado TWI) usa una línea de reloj (SCL) junto con una línea de datos (SDA) para transferir información. Reloj serie
 +
 
 +
;SCL (Serial Clock Line): La línea de reloj. Pin A5. Usada por I2C para indicar datos está lista en la línea de datos.
 +
;SDA (Serial Data Line): La línea de datos (bidireccional). Pin A4. Usada para datos seriales.
 +
 
 +
{{Nota|Para saber mas consulta la libreria [[Wire]].}}
  
 
== Bus SPI ==
 
== Bus SPI ==
Línea 89: Línea 112:
 
{{Nota|Revisa la libreria [[SPI]] para saber como usarlo.}}
 
{{Nota|Revisa la libreria [[SPI]] para saber como usarlo.}}
  
== Bus I2C ==
+
== Rangos máximos ==
Un protocolo '''Inter Integrated Circuit''' usa una línea de reloj (SCL) junto con una línea de datos (SDA) para transferir información. Reloj serie
+
Los pines IO tienen una calificación máxima absoluta de 40 mA por pin. Sin embargo, en la práctica, debe diseñar para que una clasificación de 20 mA sea segura.
 +
 
 +
Además, los siguientes grupos de pines no deben hundirse más de 100 mA (cada grupo):
 +
* Pines digitales del D0 a D4
 +
* Pines digitales del D5 al D13
 +
* Pines analógicos del A0 a A7
  
;SCL (Serial Clock Line): La línea de reloj. Pin A5. Usada por I2C para indicar datos está lista en la línea de datos.
+
{|class="wikitable col1cen"
;SDA (Serial Data Line): La línea de datos (bidireccional). Pin A4. Usada para datos seriales.
+
|+Banco de puertos ATmega328p
 +
!Puerto!!2<sup>7</sup>!!2<sup>6</sup>!!2<sup>5</sup>!!2<sup>4</sup>!!2<sup>3</sup>!!2<sup>2</sup>!!2<sup>1</sup>!!2<sup>0</sup>
 +
|-
 +
|B||||||D13||D12||D11||D10||D9||D8
 +
|-
 +
|C||A7||A6||A5||A4||A3||A2||A1||A0
 +
|-
 +
|D||D7||D6||D5||D4||D3||D2||D1||D0
 +
|-
 +
!Puerto!!128!!64!!32!!16!!8!!4!!2!!1
 +
|}
  
{{Nota|Para saber mas consulta la libreria [[Wire]].}}
+
Además de eso, todo el chip del procesador tiene una calificación máxima de consumo de corriente de 200 mA.  
  
== Rangos máximos ==
+
Estas cifras generalmente se refieren a los pines en el modo de salida (el modo de entrada no consumirá mucha potencia). De modo que puede ver que, configurados como salidas, solo podría tener 10 pines que suministran 20 mA cada uno (para evitar exceder el máximo del chip) e incluso entonces tendrían que extenderse para que no consuma más de 100 mA de un grupo mencionado anteriormente.
  
 
== Resistencias limitadoras de corriente ==
 
== Resistencias limitadoras de corriente ==
 +
* Como regla general, si conecta un LED a un pin digital configurado como salida, querrá algo así como una resistencia de 330 ohm en serie con el diodo. * Esto se debe a que desea extraer algo así como 10 mA de corriente, con una caída de voltaje de 3V3 (el diodo cae 1V7, por lo que la resistencia suelta los otros 3V3 de un suministro de 5V). Usando la ley de Ohms, 3.3 / 0.010 = 330 ohmios.
 +
 +
{{Nota|Incluso una resistencia de 1K proporciona una salida de LED razonablemente brillante, y solo consume alrededor de 3.3 mA.}}
  
 
== Fuente de alimentación ==
 
== Fuente de alimentación ==
 +
La placa se puede alimentar desde el conector USB para probar mientras está conectado a una computadora o con una fuente de 5V.
 +
 +
Si usa un suministro externo, se recomienda un rango de voltaje entre 7~12V (por ejemplo, se podría usar una batería de 9V) por el pin VIN.
 +
 +
Tenga en cuenta que cuanto mayor sea el voltaje, más trabajo debe hacer el regulador de voltaje para "tirar" el exceso de voltaje, de modo que con un suministro de 12V o mas y alimentando bastantes "periféricos", es probable que el regulador de voltaje se caliente.
 +
 +
Por otro lado, el circuito interno está diseñado para cambiar de USB a externo si el suministro externo excede 6V6, por lo que el suministro de mucho menos de 7V probablemente no funcionará correctamente.
  
 
== Polifusible ==
 
== Polifusible ==
Línea 115: Línea 163:
 
* [[MKR1000]]
 
* [[MKR1000]]
  
== Referencias ==
+
== Referencias externas ==
 
* [https://www.arduino.cc/en/uploads/Main/Arduino_Nano-Rev3.2-SCH.pdf Esquema]
 
* [https://www.arduino.cc/en/uploads/Main/Arduino_Nano-Rev3.2-SCH.pdf Esquema]
 +
* [http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42735-8-bit-AVR-Microcontroller-ATmega328-328P_Datasheet.pdf Datasheat 328P] - Microchip
 +
* [http://www.gammon.com.au/uno Arduino UNO] - Nick Gammon
 +
* [http://manueldelgadocrespo.blogspot.com/p/modelos_29.html Modelos de Arduino] - Manuel Delgado
 +
* [https://descubrearduino.com/elegir-la-placa-arduino-adecuada-para-tu-proyecto-una-introduccion/ Que modelo comprar] - Descubre Arduino
 +
* [https://aprendiendoarduino.wordpress.com/2016/11/06/hw-arduino-a-fondo/ Arduino a fondo] - Enrique Crespo
 +
* [http://diymakers.es/guia-arduino/ Guia Arduino] - Diy Makers
  
[[Category:Tarjetas]]
+
[[Category:Placas]]

Revisión actual del 16:31 4 jul 2019

Descripción

El Arduino Nano es una placa pequeña, compacta y fácil de usar basado en el ATmega328P (como UNO). Solo le falta la clavija de alimentación VCC, pero tiene el pin VIN y funciona con un cable USB Mini-B en lugar de uno estándar.

Esta basado en el uC ATmega328P de 8 bits a 16 MHz, perteneciente a la familia AVR de arquitectura RISC, 32 registros de trabajo, 3 temporizadores flexibles, UART serie, convertidos ADC de 14 canales de 10 bits. Encapsulado DIP de 28 pines.

Características

Especificaciones técnicas
Parámetro Valor
uC ATmega328P
Bus 8 bits
Velocidad 16 Mhz
Memoria flash 32KB (2KB para arranque)
Memoria SRAM 2KB
Memoria EEPROM 1KB
Alimentación 5V
Entrada 7~12V
Entrada limite 6~20V
Pines digitales 14 (6 PWM de 8 bits)
Pines analógicos 8
Corriente por pines 40 mA
LED_BUILTIN 13

Interrupciones

Interrupciones externas: 2 y 3. Estos pines se pueden configurar para activar una interrupción en un valor bajo, un flanco ascendente (RISING) o descendente (FALLING), o un cambio en el valor (CHANGE). Vea la función attachInterrupt() para más detalles.

Pines digitales

  • Existen 14 pines digitales (0~13) que pueden ser configurados como entrada o salida digital.
  • No debes meter o sacar mas de 40 mA en cada una.
  • 6 de ellos están marcados con ~ y pueden ser usados como PWM. 3, 5, 6, 9, 10 y 11.
  • Deben ser previamente configurados con pinMode().

Pines analógicos

  • Los pines marcados A0~A7 se usan para hacer lecturas "analógicas" que son codificadas via un ADC. No es necesario usar pinMode().
  • Cada entrada analógica tiene una resolución de 10 bits. Usando la función analogRead() se obtiene lectura entre 0 (para 0V) y 1023 (para 5V). El rango puede alterarse fácilmente usando la función map() y/o suministrando un voltaje diferente al pin AREF.
  • Aquí puede poner alguna fuente de voltaje (de 0 a 5 V) como una "referencia de voltaje" precisa para las llamadas a la función analogRead().
  • Los pines analógicos A0~A5 también pueden usarse para lectura/escritura digital. Para este propósito, puede referirse a ellos como pines 14~19. Los pines analógicos A6 y A7 no pueden ser usados como digitales.

LEDs

  • Un LED power marcado como ON.
  • Tiene un LED incorporado en el pin digital 13 denominado LED_BUILTIN. Cuando el pin 13 esta en HIGH prende.
  • Dos LEDs de transmision serie Tx/Rx.

Los LED de Tx y Rx en la placa parpadearán cuando los datos se estén transmitiendo a través del chip FTDI y la conexión USB a la computadora, pero no para la comunicación en serie en los pines 0 y 1.

Botones

  • Tiene un botón reset.
  • Adicionalmente tiene un pin RST que con un LOW reiniciar el microcontrolador. Normalmente se usa para agregar un botón de reinicio con los modulos que bloquean el botón incorporado.

ICSP

  • Exiten un conectores ICSP conectado al ATmega328P.
  • Se usa para programar el uC ATmega328P principal (el más común) o el procesador de interfaz USB ATmega16U2 (solo si es necesario).
  • El sistema ICSP usa SPI con un protocolo integrado en los chips.
pin Descripcion
1 MISO
2 5V
3 SCK
4 MOSI
5 RST
6 GND

Nota: La programación también se realiza normalmente usando la interfaz serie asíncrona (pines D0 / D1) y un programa de gestor de arranque instalado.


Puerto serie

Los pines 0 (Rx) y 1 (Tx) se pueden usar para comunicaciones serie asíncronas.

Estos pines también están conectados internamente a través de resistencias de 1K al chip USB, de modo que los datos de la interfaz USB se pueden enviar/recibir a los pines 0 y 1.

Un FTDI FT232RL en la placa canaliza esta comunicación serie a través de USB y los controladores FTDI (incluidos con el software Arduino) proporcionan un puerto de comunicaciones virtual con una computadora.

Nota: La libreria SoftwareSerial permite la comunicación en serie por cualquiera de los pines digitales del Nano.


Bus I2C

Un protocolo Inter Integrated Circuit (también llamado TWI) usa una línea de reloj (SCL) junto con una línea de datos (SDA) para transferir información. Reloj serie

SCL (Serial Clock Line)
La línea de reloj. Pin A5. Usada por I2C para indicar datos está lista en la línea de datos.
SDA (Serial Data Line)
La línea de datos (bidireccional). Pin A4. Usada para datos seriales.

Nota: Para saber mas consulta la libreria Wire.


Bus SPI

Un protocolo Serial Peripheral Interface usa una línea de reloj (SCK) junto con datos de maestro a esclavo (MOSI) y esclavo a maestro (MISO) para transferir información. También se usa comúnmente una línea de selección de esclavos (SS) para seleccionar un esclavo de entre múltiples.

SCK (Serial Clock)
Pin 13. Una línea de reloj generada por el maestro para "reloj" de datos al esclavo.
MOSI (Master Out, Slave In)
Pin 12. Los datos van del maestro al esclavo.
MISO (Master In, Slave Out)
Pin 11. Los datos van del esclavo al maestro.
SS (Slave Select)
Pin 10. Usado para seleccionar un esclavo. Típicamente se baja para estar activo.

Nota: Revisa la libreria SPI para saber como usarlo.


Rangos máximos

Los pines IO tienen una calificación máxima absoluta de 40 mA por pin. Sin embargo, en la práctica, debe diseñar para que una clasificación de 20 mA sea segura.

Además, los siguientes grupos de pines no deben hundirse más de 100 mA (cada grupo):

  • Pines digitales del D0 a D4
  • Pines digitales del D5 al D13
  • Pines analógicos del A0 a A7
Banco de puertos ATmega328p
Puerto 27 26 25 24 23 22 21 20
B D13 D12 D11 D10 D9 D8
C A7 A6 A5 A4 A3 A2 A1 A0
D D7 D6 D5 D4 D3 D2 D1 D0
Puerto 128 64 32 16 8 4 2 1

Además de eso, todo el chip del procesador tiene una calificación máxima de consumo de corriente de 200 mA.

Estas cifras generalmente se refieren a los pines en el modo de salida (el modo de entrada no consumirá mucha potencia). De modo que puede ver que, configurados como salidas, solo podría tener 10 pines que suministran 20 mA cada uno (para evitar exceder el máximo del chip) e incluso entonces tendrían que extenderse para que no consuma más de 100 mA de un grupo mencionado anteriormente.

Resistencias limitadoras de corriente

  • Como regla general, si conecta un LED a un pin digital configurado como salida, querrá algo así como una resistencia de 330 ohm en serie con el diodo. * Esto se debe a que desea extraer algo así como 10 mA de corriente, con una caída de voltaje de 3V3 (el diodo cae 1V7, por lo que la resistencia suelta los otros 3V3 de un suministro de 5V). Usando la ley de Ohms, 3.3 / 0.010 = 330 ohmios.

Nota: Incluso una resistencia de 1K proporciona una salida de LED razonablemente brillante, y solo consume alrededor de 3.3 mA.


Fuente de alimentación

La placa se puede alimentar desde el conector USB para probar mientras está conectado a una computadora o con una fuente de 5V.

Si usa un suministro externo, se recomienda un rango de voltaje entre 7~12V (por ejemplo, se podría usar una batería de 9V) por el pin VIN.

Tenga en cuenta que cuanto mayor sea el voltaje, más trabajo debe hacer el regulador de voltaje para "tirar" el exceso de voltaje, de modo que con un suministro de 12V o mas y alimentando bastantes "periféricos", es probable que el regulador de voltaje se caliente.

Por otro lado, el circuito interno está diseñado para cambiar de USB a externo si el suministro externo excede 6V6, por lo que el suministro de mucho menos de 7V probablemente no funcionará correctamente.

Polifusible

Vea también

Referencias externas