Diferencia entre revisiones de «UNO»
(→Bus SPI) |
(→Referencias externas) |
||
(No se muestran 31 ediciones intermedias del mismo usuario) | |||
Línea 27: | Línea 27: | ||
|Entrada limite||6~20V | |Entrada limite||6~20V | ||
|- | |- | ||
− | |Pines digitales||14 (6 PWM) | + | |Pines digitales||14 (6 PWM de 8 bits) |
|- | |- | ||
− | |Pines | + | |Pines analógicos||6 |
|- | |- | ||
|Corriente por pines||20 mA | |Corriente por pines||20 mA | ||
|- | |- | ||
− | |LED_BUILTIN||13 | + | |[[LED_BUILTIN]]||13 |
|} | |} | ||
== Pines == | == Pines == | ||
− | ;PWM: Algunos pines, marcados con un símbolo "~" en la placa, admiten PWM, es decir, impulsos rápidos que se pueden usar para controlar motores a varias velocidades o reproducir música (variando la frecuencia de pulso, modulación de ancho de pulso ). Son 3, 5, 6, 9, 10 y 11. | + | ;PWM: Algunos pines, marcados con un símbolo "~" en la placa, admiten [[analogWrite()|PWM]], es decir, impulsos rápidos que se pueden usar para controlar motores a varias velocidades o reproducir música (variando la frecuencia de pulso, modulación de ancho de pulso ). Son 3, 5, 6, 9, 10 y 11. Los pines 5 y 6 tienen una frecuencia de 980 Hz el resto de pines tienen una frecuencia de 490 Hz. |
;USB: Universal Serial Bus. Se usa para comunicarse a través del protocolo USB con una computadora host (para programar o enviar / recibir datos en serie). Son Rx (0) y Tx (1), por lo que no se recomienda reasignarlos para otra función si requeriras usan el monitor serie por ejemplo. | ;USB: Universal Serial Bus. Se usa para comunicarse a través del protocolo USB con una computadora host (para programar o enviar / recibir datos en serie). Son Rx (0) y Tx (1), por lo que no se recomienda reasignarlos para otra función si requeriras usan el monitor serie por ejemplo. | ||
;VCC: La línea de "potencia". Generalmente + 5V en el Arduino Uno. | ;VCC: La línea de "potencia". Generalmente + 5V en el Arduino Uno. | ||
;Vin: El voltaje en la placa. En general, esto será aproximadamente 0V7 menos que el voltaje suministrado la "clavija de alimentación" debido al diodo de protección de polaridad inversa. No se recomienda extraer energía de Vin si está alimentando el Arduino desde el puerto USB. | ;Vin: El voltaje en la placa. En general, esto será aproximadamente 0V7 menos que el voltaje suministrado la "clavija de alimentación" debido al diodo de protección de polaridad inversa. No se recomienda extraer energía de Vin si está alimentando el Arduino desde el puerto USB. | ||
− | ;5V: | + | ;5V:Fuente de maximo 50 mA |
− | ;3.3V: Fuente de maximo 50 mA | + | ;3.3V:Fuente de maximo 50 mA |
− | ;GND: Tierra. | + | ;GND:Tierra. |
− | ;RESET: Pin de reset | + | ;RESET:Pin de reset |
− | ;IOREF: La referencia de tensión IO (conectada a + 5V). Destinado a permitir que los escudos (Sheeld) vean si la placa Arduino está funcionando a 5V o 3V3. | + | ;IOREF:La referencia de tensión IO (conectada a + 5V). Destinado a permitir que los escudos (Sheeld) vean si la placa Arduino está funcionando a 5V o 3V3. |
− | ;AREF: Referencia de lectura analógica. | + | ;AREF:Referencia de lectura analógica. |
− | ;ISCP: | + | ;ISCP:Esta placa Arduino posee una entrada ICSP (In Chip Serial Programmer) que tiene acceso a la memoria de programa del AVR (Flash), ésto es, que puede grabar directamente desde el PC al microcontrolador cualquier programa sin usar el puerto USB. Uno de ellos, el mismo Bootloader de Arduino. |
+ | ;Interrupciones:Los pines digitales 2 y 3 corresponden a INT0 e INT1. | ||
== 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 [[PWM]]. | + | * 6 de ellos están marcados con '''~''' y pueden ser usados como [[analogWrite()|PWM]]. |
− | * Deben ser previamente configurados | + | * Deben ser previamente configurados con [[pinMode()]]. |
− | |||
− | pinMode( | ||
− | |||
− | |||
− | |||
== Pines analógicos == | == Pines analógicos == | ||
Línea 67: | Línea 63: | ||
<pre> | <pre> | ||
+ | pinMode(19, OUTPUT); | ||
digitalWrite(19, HIGH); | digitalWrite(19, HIGH); | ||
</pre> | </pre> | ||
− | == | + | == LEDs == |
− | + | * Tiene un LED incorporado llamado [[LED_BUILTIN]] en el pin digital 13. Cuando el pin 13 esta en HIGH prende. | |
+ | * Dos LEDs de transmision serie Tx/Rx. | ||
− | + | == 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 == | ||
Línea 98: | Línea 98: | ||
{{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 utilizando 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. | ||
− | + | {{Nota|La libreria [[SoftwareSerial]] permite la comunicación en serie por cualquiera de los pines digitales del Nano.}} | |
− | |||
− | |||
− | |||
== Bus I2C == | == Bus I2C == | ||
− | Un protocolo | + | 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: La línea de reloj | + | ;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: La línea de datos (bidireccional) | + | ;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 == | == Rangos máximos == | ||
Línea 124: | Línea 135: | ||
!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> | !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||||||A5||A4||A3||A2||A1||A0 | ||
|- | |- | ||
− | | | + | |D||D7||D6||D5||D4||D3||D2||D1||D0 |
|- | |- | ||
− | + | !Puerto!!128!!64!!32!!16!!8!!4!!2!!1 | |
|} | |} | ||
Línea 143: | Línea 156: | ||
La placa se puede alimentar desde el conector USB para probar mientras está conectado a una computadora o con una fuente de 5V. | 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). | + | 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). Use la clavija. |
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. | 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. | 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 == | ||
+ | El Arduino UNO R3 tiene un polifusible reseteable que protege el puerto USB (pin 1 de +5V) de su computadora contra cortos y sobrecargas. Si se extrae más de 500 mA del puerto USB, el fusible se cortara automáticamente hasta que se elimine el cortocircuito o la sobrecarga. Tipo MSMF050-2. | ||
== Vea también == | == Vea también == | ||
+ | * [[MINI]] | ||
+ | * [[MICRO]] | ||
+ | * [[NANO]] | ||
* [[MEGA]] | * [[MEGA]] | ||
+ | * [[DUE]] | ||
+ | * [[101]] | ||
+ | * [[LEONARDO]] | ||
* [[MKR1000]] | * [[MKR1000]] | ||
+ | * [[NodeMCU]] - ESP8266 | ||
− | == Referencias == | + | == Referencias externas == |
* [https://www.arduino.cc/en/uploads/Main/Arduino_Uno_Rev3-schematic.pdf Esquema] | * [https://www.arduino.cc/en/uploads/Main/Arduino_Uno_Rev3-schematic.pdf Esquema] | ||
− | * [http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42735-8-bit-AVR-Microcontroller-ATmega328-328P_Datasheet.pdf Datasheat 328P] | + | * [https://www.arduino.cc/en/Hacking/Atmega168Hardware ATmega168 pin mapping] - Arduino |
− | * [http://www.gammon.com.au/uno Nick Gammon] | + | * [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 | ||
+ | * [https://www.luisllamas.es/esquema-de-patillaje-de-arduino-pinout/ Esquema de patillaje de Arduino] - Luis Llamas | ||
+ | * [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:Placas]] |
Revisión actual del 16:10 26 sep 2019
Contenido
Descripción
Arduino UNO es la mejor placa para comenzar a usar la electrónica y la codificación. Si esta es tu primera experiencia jugando con la plataforma Arduino, la UNO es la placa más robusta, usada y documentada de la familia.
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
Parámetro | Valor |
---|---|
uC | ATmega328P |
Bus | 8 bits |
Velocidad | 16Mhz |
Memoria flash | 32KB (0.5KB 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 | 6 |
Corriente por pines | 20 mA |
LED_BUILTIN | 13 |
Pines
- PWM
- Algunos pines, marcados con un símbolo "~" en la placa, admiten PWM, es decir, impulsos rápidos que se pueden usar para controlar motores a varias velocidades o reproducir música (variando la frecuencia de pulso, modulación de ancho de pulso ). Son 3, 5, 6, 9, 10 y 11. Los pines 5 y 6 tienen una frecuencia de 980 Hz el resto de pines tienen una frecuencia de 490 Hz.
- USB
- Universal Serial Bus. Se usa para comunicarse a través del protocolo USB con una computadora host (para programar o enviar / recibir datos en serie). Son Rx (0) y Tx (1), por lo que no se recomienda reasignarlos para otra función si requeriras usan el monitor serie por ejemplo.
- VCC
- La línea de "potencia". Generalmente + 5V en el Arduino Uno.
- Vin
- El voltaje en la placa. En general, esto será aproximadamente 0V7 menos que el voltaje suministrado la "clavija de alimentación" debido al diodo de protección de polaridad inversa. No se recomienda extraer energía de Vin si está alimentando el Arduino desde el puerto USB.
- 5V
- Fuente de maximo 50 mA
- 3.3V
- Fuente de maximo 50 mA
- GND
- Tierra.
- RESET
- Pin de reset
- IOREF
- La referencia de tensión IO (conectada a + 5V). Destinado a permitir que los escudos (Sheeld) vean si la placa Arduino está funcionando a 5V o 3V3.
- AREF
- Referencia de lectura analógica.
- ISCP
- Esta placa Arduino posee una entrada ICSP (In Chip Serial Programmer) que tiene acceso a la memoria de programa del AVR (Flash), ésto es, que puede grabar directamente desde el PC al microcontrolador cualquier programa sin usar el puerto USB. Uno de ellos, el mismo Bootloader de Arduino.
- Interrupciones
- Los pines digitales 2 y 3 corresponden a INT0 e INT1.
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.
- Deben ser previamente configurados con pinMode().
Pines analógicos
- Los pines marcados A0~A5 se usan para hacer lecturas "analógicas" que son codificadas via un ADC.
- 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.
- 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 a 19.
pinMode(19, OUTPUT); digitalWrite(19, HIGH);
LEDs
- Tiene un LED incorporado llamado LED_BUILTIN en el pin digital 13. Cuando el pin 13 esta en HIGH prende.
- Dos LEDs de transmision serie Tx/Rx.
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 dos conectores ICSP uno conectado al ATmega328P y el otro al ATmega16U2.
- 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 utilizando 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.
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 A5
Puerto | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 |
---|---|---|---|---|---|---|---|---|
B | D13 | D12 | D11 | D10 | D9 | D8 | ||
C | 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). Use la clavija.
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
El Arduino UNO R3 tiene un polifusible reseteable que protege el puerto USB (pin 1 de +5V) de su computadora contra cortos y sobrecargas. Si se extrae más de 500 mA del puerto USB, el fusible se cortara automáticamente hasta que se elimine el cortocircuito o la sobrecarga. Tipo MSMF050-2.
Vea también
Referencias externas
- Esquema
- ATmega168 pin mapping - Arduino
- Datasheat 328P - Microchip
- Arduino UNO - Nick Gammon
- Esquema de patillaje de Arduino - Luis Llamas
- Modelos de Arduino - Manuel Delgado
- Que modelo comprar - Descubre Arduino
- Arduino a fondo - Enrique Crespo
- Guia Arduino - Diy Makers