Está en la página 1de 21

Cuaderno creado por BlindOwl y Tarmo ndice

1- Presentacin de la plataforma Arduino. 2- Instalacin del entorno de pro ramacin IdeArduino en !inu" y #indows. $- Pro ramacin y pr%cticas. &- 'escripcin de los componentes de la placa Arduino ()O r$.

1- Presentacin de la plataforma Arduino*


+uc,as -eces ,emos escuc,ado la pala.ra /Arduino01 pero...23ue es Arduino41 2Como sur i41 2Para 5ue se utili6a4 Arduino es una plataforma de desarrollo de computacin .asada en una placa electrnica y un entorno de pro ramacin encar ado de crear el software para dic,a placa1 compilarlo y ra.arlo en el microcontrolador de esta. Tanto la placa como el entorno de pro ramacin son Open 7ource1 de esta forma tenemos acceso al cdi o del I'8Arduino y a los es5uemas del circuito de la placa 5ue podremos montar nosotros mismos si nos lo planteamos y disponemos de los componentes y ,erramientas necesarias. Arduino nace de la necesidad de un dispositi-o capa6 de interactuar entre el mundo f9sico 5ue nos rodea y el mundo -irtual de los ordenadores1 creando as9 una ,erramienta con muc,o potencial para el desarrollo de proyectos electrnicos controlados1 m%5uinas electrnicas y todo tipo de aparatos 5ue nos podamos ima inar.

2- Instalacin del entorno de pro ramacin IdeArduino en !inu" y #indows.


Instalando y configurando IDEArduino en Linux:
8n la mayor9a de las distri.uciones !inu" podemos instalar el I'8Arduino e:ecutando desde la consola el simple comando * apt-get install arduino 8s la forma mas pr%ctica y f%cil de instalarlo pero tiene el incon-eniente 5ue la -ersin de los repositorios esta al o anticuada y al unas placas no las reconoce adecuadamente1 por lo tanto e"plicare como instalarlo desde el pa5uete oficial1 as9 podremos tener I'8Arduino totalmente actuali6ado. Antes de nada de.emos tener instalado :a-a en nuestro sistema para posteriormente poder correr el I'8Arduino. 7i no sa.es como instalarlo si ue este tutorial ,ttp*;;www.:a-a.com;es;download;,elp;linu"<install."ml 7i no estas se uro de si lo tienes instalado o no1 a.re una terminal y teclea* :a-a --ersion y si lo tienes instalado aparecer% la -ersin 5ue tienes.

!o se undo 5ue ,aremos ser% descar arnos el pro rama en su =ltima -ersin de la p% ina oficial http://arduino.cc/es/Main/Software1 actualmente se encuentra en la -ersin 1.>.1. 'escar amos el pa5uete y lo uardamos en el escritorio. A.rimos una terminal y le pasamos la ruta del 8scritorio partiendo de la ra96 ?esto depende del sistema de fic,eros propio@1 en mi caso* cd /home/BlindOwl/Escritorio 'escomprimimos el contenido del pa5uete con* tar -xvzf arduino-1.0.1-linux.tgz

7e e"traer% todo el contenido en el escritorio en una carpeta llamada arduino-1.>.1 5ue de.eremos cortarla y pe arla en /bin1 o en otro directorio 5ue 5ueramos. A,ora ,acemos clicA derec,o encima de Aplicaciones y en 8ditar +en=s1 se a.rir% un men= principal con el 5ue podemos estionar nuestras aplicaciones. Bamos a crear un lan6ador para nuestro I'8Arduino en la seccin de Pro ramacin 5ue podremos ele ir en la parte i65uierda del men=1 pulsamos 8lemento )ue-o y se a.re una -entana para crear el lan6ador. 8n esta -entana en )om.re pondremos Arduino1 en comando le pasamos la ruta del arc,i-o1 en este caso* /bin/arduino1.0.1/arduino en comentario podemos poner lo 5ue 5ueramos1 una descripcin1 etc1 yo lo de:o en .lanco 5ue 5ueda mas curioso. 8n la parte i65uierda de esta -entana aparece un recuadro para ele ir el icono especificando la ruta donde se encuentra. Cuando ten amos todo seleccionado aceptamos y se crear% el lan6ador.

Confi uracin de I'8Arduino con la placa* Conectamos la placa al pc y a.rimos el pro rama1 en erramientas !ar"eta1 seleccionamos la tar:eta 5ue ten amos1 en el caso de este tutorial esco emos Arduino (no1 en erramientas #uerto $erial de.emos tener marcado al o como ;de-;ttyAC+C o ;tty(7BC ?puede -ariarel numero en C@1 por ultimo en erramientas #rogramador seleccionamos ABDI7P mAll. A,ora ya de.er9amos poder comunicarnos con la placa1 para ase urarnos car aremos un pro rama y nos fi:aremos si los leds TE y DE parpadean al ra.arlo en el microcontrolador.

Instalando y configurando IDEArduino en Windows:


7e da por sentado 5ue ya tenemos instalado :a-a1 si no es as9 ,ay 5ue descar ar el e:ecuta.le desde la pa ina oficial e instalarlo ,ttp*;;www.:a-a.com;es;download; 'escar amos el pro rama en su =ltima -ersin de la p% ina oficial http://arduino.cc/en/Main/Software y lo descomprimimos en el pc1 se creara una carpeta arduino-1.>.11 la a.rimos y ya podemos a.rir nuestro entorno de pro ramacin. Para instalar el dri-er de la placa a.rimos el Administrador de dispositi-os ?con la placa conectada@ y nos aparece en el listado Otros dispositivos %ispositivo desconocido1 ,acemos clicA encima de el y en la pestaFa /Controlador0 pulsamos /Actuali6ar controlador0 y despuGs /Buscar software de controlador en el e5uipo01 especificamos la ruta de la carpeta dri-ers 5ue se encuentra dentro de la arduino-1.>.1 5ue descomprimimos y aceptamos1 autom%ticamente se instala el controlador. A.rimos el entorno de pro ramacin y en erramientas #uerto $erial seleccionamos el puerto CO+C 5ue nos aparece en el administrador de dispositi-os cuando instalamos el dri-er. Pro.amos a ra.ar un pro rama de prue.a y nos fi:amos si parpadean los leds TE y DE1 si lo ,acen y no sale nin =n error en el I'8Arduino esta todo correcto.

$- Pro ramacin y pr%cticas.


(na importante caracter9stica de arduino es su facilidad en el tema de la pro ramacin ya 5ue utili6a una especie de len ua:e C simplificado donde muc,as funciones ,an sido eliminadas creando un len ua:e muy simple pero muy -ers%til racias a la posi.ilidad de aFadir li.rer9as se =n los diferentes proyectos en los 5ue 5uieras em.arcarte. Para empe6ar con la pro ramacin en arduino empe6aremos con el parpadeo de un diodo !8' ?el ,ola mundo de arduino@ para familiari6arnos un poco con la estructura y lue o pasar a un %m.ito mas terico.

-(na cosa23uG es un diodo !8'4 (n diodo led es un tipo de diodo 5ue ,a sido contaminado en su proceso de monta:e para 5ue al pasar corriente elGctrica emita lu6. -Aaaa, mas o menos como una .om.illa )o e"actamente1 ya 5ue los diodos tienen una polari6acin 1es decir 5ue no da i ual su cone"in con la pila ya 5ue la patilla lar a de.e ir al polo positi-o de la pila y la patilla corta a tierra ?Hnodo y c%todo@. -OA me fi:arG en la cone"in del diodo

I------------------'iodos !ed Do:o

(na -e6 aclarado 5ue es un diodo empecemos. -A.rimos Arduino I'8

)os saldr% una -entana similar a esta1 a5u9 es donde escri.iremos el pro rama ?las di-ersas acciones 5ue realice nuestra placa con los distintos componentes electrnicos@. (na -e6 a.ierto el pro rama tenemos 5ue sa.er 5ue ,ace cada .otn 5ue -emos en la interfa6 y como se mete el pro rama en la placa arduino.

Fjense en la imagen de abajo la de los botones numerados!

8l .otn 1 lo 5ue ,ar% es compro.ar si la sinta"is del pro rama es correcta. 8l .otn 2 su.e el pro rama ?si es correcto@ a nuestra placa arduino 5ue de.e estar conectada al ordenador con un ca.le como este* (El USB tipo A al ordenador y el tipo B conectado a nuestra placa)

8l .otn $ es =til para cuando los pro ramas empie6an a ser m%s lar os1 lo 5ue ,ace es a.rir una nue-a ,o:a para se uir con el pro rama. 8l .otn & sir-e para a.rir e:emplos de pro ramas con las di-ersas li.rer9as. 8l .otn J sir-e para uardar nuestro pro rama en el ordenador. 8l .otn K a.re una -entana en la 5ue se pueden -er;interactuar en a5uellos pro ramas 5ue esta.lecen una comunicacin directa con el ordenador. -(n momento -23uG pasa4 -23uG es eso de las li.rer9as4 +uy .uena pre unta aun5ue estamos retrasando .astante el parpadeo de nuestro diodo led. (na cosa muy importante en arduino son las li.rer9as dic,o de manera sencilla son las 5ue ,acen 5ue nuestra placa pueda reali6ar las diferentes acciones 5ue 5ueremos 5ue desarrolle de una forma mas sencilla1 de esta forma reducimos muc,o el cdi o. 8n la pa ina de arduino -iene esto so.re las li.rer9as* Las Libreras proveen funcionalidad extra a nuestro sketch, por e e!plo" al traba ar con hard#are o al !anipular datos$ Arduino de por si trae unas li.rer9as para reali6ar monta:es pero nosotros podemos a re ar nue-as li.rer9as se =n lo 5ue 5ueramos ,acer. Por a,ora no e"plicarG como a re ar nue-as li.rer9as ya 5ue las 5ue trae por defecto nos .astaran para reali6ar los proyectos. (na -e6 dic,o todo esto empecemos con nuestro primer pro rama -oid setup?@ L pin+ode?1$1 O(TP(T@M N -oid loop?@ L di ital#rite?1$1 OIPO@M delay?1>>>@M di ital#rite?1$1 !O#@M delay?1>>>@M N

-23uG es todo esto4 -Qa:a:a esto son las instrucciones 5ue ,ar%n 5ue nuestro diodo led parpadeG -Pues e"plica cada cosa 5ue con esto me ,as matado 8n todo pro rama de arduino ,ay dos partes* void setup&' y void loop&' void setup&' es la parte en la 5ue nosotros diremos a la placa cuales son los pines 5ue de.e utili6ar y de 5ue modo. void loop&' es la parte donde diremos las acciones 5ue tiene 5ue reali6ar la placa con esos pines. 8n este caso en void setup&' estamos diciendo 5ue el pin 1$ de la placa actuG como salida. 8n void loop&' estamos usando la funcin digital(rite&' 5ue lo 5ue ,ace es en-iar una seFal elGctrica si esta en OIPO y si esta en !O# no en-iarla. R dela)&' 5ue lo 5ue ,ace es esperar un tiempo ,asta 5ue se realice la si uiente accin en este caso 1>>> milGsimas de se undo 5ue son 1 se undo ? Esta funci%n se !ide en !il&si!as)$ 8n definiti-a lo 5ue estamos ,aciendo es en-iar una seFal elGctrica al pin 1$ donde ir% conectado el diodo en ese momento se encender% y al se undo se apa ar% as9 c9clicamente. As9 ser9a la cone"in correcta del diodo se =n lo 5ue ,emos escrito. 7lo nos 5uedar9a su.ir el pro rama a la placa con el .otn 2? '!a(en anterior@ conectar el diodo correctamente y esperar resultados. ?La patilla lar(a del diodo en el pin )*) Si no lo entendiste tran+uilo +ue aba o viene el verdadero co!ien,o del tutorial$

Buen Comien6oSS
'espuGs de ,a.er -isto nuestro primer pro rama y familiari6arnos un poco1 -amos a empe6ar por donde tal -e6 de.er9amos ,a.er comen6ado. 8mpecemos anali6ando funciones usuales dentro de -oid setup?@ -pinmode&pin*modo'+ pin es la ranura 5ue -as a utili6ar de tu placa arduino para tus proyectos ?-.-, no todos los pines tienen la !is!a funci%n unos son de entrada y otros de salida@. Por un lado est% pin y por el otro modo 5ue ser% Input (entrada) o output (salida) Input para detectar estados como el de un interruptor si esta encendido o apa ado y output para en-iar seFales a ese pin. -$erial.println&value'+ por otro lado tenemos otra funcin 5ue se encar ar% de mostrar en nuestro monitor un -alor en este caso el ?-alue@. Oay mas funciones pero de momento 5uiero 5ue se entiendan .ien estas para a.ordar contenidos m%s a-an6ados A,ora -eremos funciones dentro de -oid loop?@ -digital,ead&pin'+ !ee un -alor como puede ser el de un interruptor lee o OIPO o !O#. -digital(rite&pin*value'+ 8n pin se selecciona el pin con el 5ue se tra.a:ar% en -alue en-ia una seFal elGctrica OIPO o !O#

Depresentacin de -alores
A -eces 5uieres usar una -aria.le 5ue conten a un -alor ya sea para no usar n=meros y facilitar la lectura del pro rama o para futuras estructuras y funciones 5ue nos ser% de utilidad1 pues .ien Arduino facilita esto racias a lo si uiente* (sando una funcin de la 5ue ,a.laremos a,ora 1de:ando un espacio1 el nom.re 5ue 5uieres dar a una -aria.le y un i ual con el 5ue diremos a 5ue -alor numGrico 5ueremos asi nar arduino ya entiende 5ue esa nue-a -aria.le se refiere a tal n=mero. -3ue lio 2no4 -Bastante "' pero a,ora -eremos 5ue es muy f%cil con un e:emplo

-oid setup?@ int led T 1$M L pin+ode?led1 O(TP(T@M N -oid loop?@ L di ital#rite?led1 OIPO@M delay?1>>>@M di ital#rite?led1 !O#@M delay?1>>>@M N

-O,, el pro rama del diodo led pero cam.iaste el n=mero 1$ por led. -8"acto ya 5ue a,ora led T corresponde al pin 1$ Aun5ue parece una tonter9a por a,ora mas adelante creedme 5ue os ser% =til ImportanteSSSS int es una funcin 5ue no cu.re todos los -alores tiene sus l9mites para otros -alores e"isten otras funciones os las de:arG a5u9 para 5ue os -ayan sonando. -umeric t)pes int unsi ned int lon B)tes 2 2 & ,ango -$2UKV a $2UKUK > a KJJ$J -21&UV$K&V a 21&U&V$K&V &2W&WKU2WJ .so Depresentar -alores positi-os y ne ati-os Depresentar solo -alores positi-os Depresentar -alores positi-os y ne ati-os muy e"tensos Depresentar -alores positi-os muy e"tensos Depresetar n=meros decimales Como float Depresentar -alores -erdaderos o falsos Depresentar un solo car%cter 7imilar a c,ar pero para -alores no asi nados Depresentar con:unto de n=meros tipicamente usado ya 5ue contienen te"to

(nsi ned lon

&

float dou.le .oolean c,ar .yte

& & 1 1 1

$.&>2V2$J8X$V a -$.&>2V2$J8X$V +ismo 5ue float Yalse ?>@ o true?1@ -12V a 12U > a 2JJ

Zstrin

Control de flu:o
Oay diferentes sentencias con las 5ue podemos ,acer los pro ramas m%s comple:os 5ue nos ayudar%n a ,acer funciones 5ue nos ayudar%n en nuestros proyectos. 8mpecemos...

if ) else
!as sentencias if comprue.an si cierta condicin ,a sido alcan6ada y e:ecutan todas las sentencias dentro de las lla-es si la declaracin es cierta. 7i es falsa el pro rama las i nora y e:ecuta las sentencias especificadas dentro de else.

E"emplo con if if?cual5uier-aria.le 44 -alor@ L ,acer al oM N ;; los si(nos // 0 representan s!bolos !ate!1ticos co!o" 2(!ayor +ue),3(!enor +ue),20(!ayor o i(ual +ue),30(!enor o i(ual +ue),00(i(ual +ue) E"emplo con else if?inputPin TT OIPO@ L Oaceral oM 44En el caso de +ue el valor de input5in sea i(ual a 6'76 se e ecuta N 44 la sentencia 6aceral(o else L OacerotracosaM 9

44En caso de no serlo, es decir input5in es i(ual a L-8 se e ecuta la 44 sentencia 6acerotracosa

Tran5uilos 5ue os e"plico otra sentencia y os pon o un code de referencia M@

for
!a sentencia for se usa para repetir un .lo5ue de declaraciones encerradas en lla-es un n=mero espec9fico de -eces. (n contador de incremento se usa a menudo para incrementar y terminar el .ucle. Oay tres partes separadas por punto y coma ?M @1 en la ca.ecera del .ucle. for?iniciali6acionM condicionM e"presin@ L ,aceral oM N !a iniciali6acin de una -aria.le local1 o contador de incremento1 sucede primero y una sola una -e6. Cada -e6 5ue pasa el .ucle1 la condicin si uiente es compro.ada. 7i la condicin de-uel-e TD(81 las declaraciones y e"presiones 5ue si uen se e:ecutan y la condicin se comprue.a de nue-o. Cuando la condicin se -uel-e YA!781 el .ucle termina. E"emplo con for for?int iT>M iI2>M iXX@ L di ital#rite?1$1 OIPO@M delay?2J>@M di ital#rite?1$1 !O#@M delay?2J>@M N

Bueno despu/s de esto empecemos con otra pr0ctica Primero a.re el arduino I'8 y como ya sa.emos insertaremos el pro rama y cuando aca.emos lo su.iremos a la placa como e"pli5uG anteriormente y montaremos el circuito se =n el dia rama 5ue os ,e de:ado a.a:o. #r0ctica 11 Con esta pr%ctica se pretende profundi6ar un poco mas en la pro ramacin de arduino reali6ando el monta:e de & interruptores 5ue ser%n controlados cada uno con su interruptor correspondiente. 7i acti-amos el pulsador presion%ndolo el led se encender%1 sino el led permanecer% apa ado. 23digo4 int inputPins[\ T L21$1&1JNM int ledPins[\ T L1>11111211$NM -oid setup?@ L for?int inde" T >M inde" I &M inde"XX@ L pin+ode?ledPins[inde"\1 O(TP(T@M pin+ode?inputPins[inde"\1 I)P(T@M di ital#rite?inputPins[inde"\1OIPO@M N N -oid loop?@ L for?int inde" T >M inde" I &M inde"XX@ L int -al T di italDead?inputPins[inde"\@M if ?-al TT !O#@ L di ital#rite?ledPins[inde"\1 OIPO@M N else L di ital#rite?ledPins[inde"\1 !O#@M N N N

8"plicacin del cdi o


8mpecemos por las -aria.les int 1 estas contienen un array de pines 5ue la primera ?int input#ins56 7 89*:*;*<=+ @ se encar ar% de los pulsadores y su estado1 y el se undo ?int led#ins56 7 810*11*19*1:=+ @controla la seFal de los leds. !os arrays son colecciones de -aria.les consecuti-as del mismo tipo. Cada -aria.le en la coleccin se llama elemento. 8l n=mero de elementos se llama la dimensin del array. 8l e:emplo anterior muestra un uso com=n de los arrays en el cdi o de Arduino* A5u9 los pins se conectan a pulsadores y !8's . !as partes importantes de este e:emplo son la declaracin de la matri6 y el acceso a los elementos de la matri6. 8n este caso los arrays son de cuatro elementos. 8l primer elemento se fi:a i ual a 21 el se undo a $1 y as9 sucesi-amente* int input#ins 56 T L21$1&1JNM 8sto declara un array de cuatro elementos con el -alor inicial de cada elemento puesto a cero. 8ste array tiene una dimensin de cuatro y puede contener1 como m%"imo1 cuatro -alores. 8l primer elemento del array es el elemento [>\* int primerElemento 7 input#in506+ 44 este es el pri!er ele!ento 8l =ltimo elemento es uno menos 5ue la dimensin1 por lo 5ue en el e:emplo anterior1 con una dimensin de cuatro1 el =ltimo elemento es el elemento $*

int ultimoElemento 7 input#in 5:6+ 44 este es el :lti!o ele!ento Puede parecer e"traFo 5ue una matri6 con una dimensin de cuatro tiene el elemento de =ltimo acceso con arre lo [$\1 pero de.ido a 5ue el primer elemento es array [>\1 los cuatro elementos son* array [>\1 array [1\1 array [2\1 array [$\ 8n el es5uema anterior1 se accede a los cuatro elementos mediante un .ucle for* for &int index 7 0+ index >;+ index ? ?' 44 el index pasa el array por el bucle compro.ando 5ue cumpla con las condiciones esta.lecidas. 8 4 4 -btener el n:!ero de 5'; de acceso a todos los ele!entos de las !atrices de pines pin@ode &led#ins 5index6* O.!#.!'+ 44 declara LE< co!o salida pin@ode &input#ins 5index6* 1-#.!'+ 44 declara pulsador co!o entrada digital(rite&input#ins5index6* 1A '+ 44 activa las resistencias pull=up = 8ste .ucle se despla6ar% por el inde" -aria.le con -alores comen6ando en > y terminando en $. 8s un error com=n es acceder accidentalmente un elemento 5ue est% m%s all% de la actual dimensin de la matri6. 8ste es un error 5ue puede tener muc,os s9ntomas diferentes y de.en tomarse medidas para e-itarlo. (na manera de mantener sus arrays .a:o control es esta.lecer la dimensin del array mediante el uso de una constante de la si uiente manera* const int #1-B2O.-! 7 ;+ 44 se define una constante para el n:!ero de ele!entos for &int index 7 0+ index>#1-B2O.-!* index ? ?' 44en 5';>?-U;@ ya pone!os directa!ente A sin declararlo antes, as reduci!os c%di(o 8l compilador no notificar% un error si accidentalmente se trata de almacenar o leer m%s all% del tamaFo del array. 8 for&int index 7 0+ index > ;+ index??' 44se reali,a de nuevo el bucle 8 int val 7 digital,ead&input#ins5index6'+ 44se lee el estado de los pulsadores if &val 77 CO(' 44co!prueba si el estado del pulsador 8 digital(rite&led#ins5index6* 1A '+ 44enciende el led si el pulsador esta activo (cerrado) = else 8 digital(rite&led#ins5index6* CO('+ 44si el pulsador esta (abierto) el led est1 apa(ado = = =

&- 'escripcin de los componentes de la placa Arduino ()O r$.


8n este apartado tratarG de e"plicar la mayor9a de los componentes de la placa as9 como al unos detalles y recomendaciones a tener en cuenta.

14 Puerto (7B tipo B1 se utili6a para comunicarse con la placa y tam.ien para la alimentacin de esta si la corriente demandada no e"cede de J>>mA1 en el punto $ -eremos por5uG.

Pin 1T] Alimentacin con un -olta:e de JB 'C Pin 2 y $ T] 7ir-en para la transmisin de datos del B(7 Pin & T +asa o tierra

Para conectar la placa al pc de.emos utili6ar un ca.le con cone"in (7B A-B1 en un e"tremo tiene cone"in A ?para PC@ y en otra del tipo B ?para la placa@. 8ste tipo de ca.le es muy com=n en al unos perifGricos de pc como impresoras y escaners1 creo 5ue no nos ser% dif9cil encontrar uno.

94 AT+8PA1K(2 T] 8s el c,ip encar ado de con-ertir la comunicacin del puerto (7B a serie. :4 Yusi.le rearma.le de intensidad m%"ima J>>mA T] Aun5ue la mayor9a de pc^s ya ofrecen proteccin interna se incorpora un fusi.le con la intencin de prote er tanto la placa Arduino como el .us (7B de so.recar as y cortocircuitos. 7i circula una intensidad mayor a J>>mA por el .us (7B?Intensidad m%"ima de funcionamiento@1 el fusi.le salta rompiendo la cone"in de la alimentacin. ;4 Cristal oscilador de 1K+O6 necesario para el funcionamiento del relo: del microcontrolador AT+8PA1K(2. <4 De ulador de -olta:e !P2WVJ de JB a $.$B 5ue proporciona una corriente de alimentacin m%"ima de 1J> mA.

D4 Conector de alimentacin ,em.ra de 211 mm1 de.e suministrarse un -olta:e de entre U-12 B ?l9mites desde KB a 2>B como m%"imo@. Para alimentarla si es un pe5ueFo proyecto como los 5ue ,aremos en este articulo son suficientes los JB 5ue nos proporciona el puerto (7B1 pero si deseamos alimentarla en estos u otros monta:es mayores necesitaremos un ca.le con una cone"in mac,o de 211 mm como la 5ue se muestra en la ima en. E4 Condensadores de &U_Y de capacidad y 1KB F4 'iodo +U en la entrada de alimentacin de la placa. Con este diodo conse uimos esta.lecer el sentido de circulacin de la intensidad1 de esta forma si se produce una contracorriente de.ido a la apertura de un relG u otros mecanismos elGctricos1 el diodo .lo5uear% dic,a corriente impidiendo 5ue afecte a la fuente de alimentacin.

G4 IOD8YT] 8ste pin esta conectado al de JB situado a su lado y sir-e para indicarle a la s,ield el -olta:e de funcionamiento de la placa arduino y en un futuro para esta.lecer la compati.ilidad con placas ABD 5ue funcionan tam.iGn a JB. 104 D878T T] 8sta planteado para trasladar el .otn de reset a al unas s,ields1 pero tam.iGn podremos utili6arlo en al unos proyectos en el 5ue el .otn reset de la placa arduino no estG accesi.le. 7i suministramos en este pin un -alor de >B resetearemos el microcontrolador. 114 8s una fuente de tensin de $.$B ? enerada por el re ulador de -olta:e del punto J@ 5ue como se ,a dic,o en el punto J proporciona una corriente m%"ima de 1J>mA. OQO* !as placas 5ue usan el c,ip YT'I para ,acer la con-ersin de (7B a serial ?como por e:emplo la 'uemilano-e@ tienen un re ulador de tensin interno con salida a $.$B pero proporcionan una intensidad m%"ima de J>mA. 'e.emos de tenerlo en cuenta para no superar dic,a intensidad. 194 8ste pin tiene como salida una tensin de JB re ulada por el re ulador de la placa. OQO* 8l suministro de tensin a tra-Gs de los pines de JB o $.$B no pasa por el re ulador1 y puede daFar la placa. )o es aconse:a.le utili6arlos como alimentacin de la placa1 est%n diseFados como salida de tensin no como entrada. 1:4 Pines de toma de tierra. 1;4 Bin T] Podemos emplear este pin para alimentar la placa si utili6amos una fuente de alimentacin e"terna1 ?no la podemos usar como alimentacin si ya estamos alimentando a tra-Gs del puerto (7B o de otra fuente de tensin por el conector de 211 mm seFalado en el punto K1 entonces en este caso podremos usar esta cla-i:a para acceder al -olta:e de alimentacin@1 es decir1 o usamos Bin e"clusi-amente para alimentacin o si alimentamos por otro medio como toma del -olta:e de alimentacin. 1<4 8ntradas anal icas1 cada una de ellas proporciona 1> .its?1>2& -alores@. Por defecto se mide de tierra a J -oltios1 aun5ue es posi.le cam.iar la cota superior de este ran o usando el pin AD8Y y la funcin analo Deference?@. 8l microcontrolador Atme a$2VP-P( 5ue usa Arduino lle-a inte rado un con-ersor anal ico-di ital ?A;'@ de K canales. Tiene una resolucin de 1> .its1 retornando enteros desde > a 1>2$. +ientras 5ue el uso principal de estos pines por los usuarios de Arduino es para la lectura de sensores anal icos1 estos pines tienen tam.iGn toda la funcionalidad de los pines de entrada-salida de propsito eneral ?PPIO@. Consecuentemente1 si un usuario necesita m%s pines de propsito eneral de entradasalida1 y no se est% usando nin =n pin anal ico1 estos pines pueden usarse como PPIO.

1D4 AT+8PA$2VP-P(T] 8s un microcontrolador de la marca Atmel 5ue constituye el procesador central de la placa. 8ste es el elemento 5ue pro ramamos para manipular sus entradas y salidas. Caracter9sticas* )=meros de pinesT 2V Bolta:e de funcionamientoT JB +emoria Ylas,T $2`.ytes 88PDO+T 1`.ytes 7DA+T 2`.ytes Belocidad del relo:T 1K+O6 Corriente por pin T &> mA

<escripci%n de los pines" 8n este apartado e"plicarG la funcin de los pines del microcontrolador Atme a$2V. !a mayor9a de ellos conectan directamente con las entradas y salidas de la placa y ser%n e"plicados profundamente en su punto correspondiente. PCK 1 * Cuando alimentamos la placa arduino .ien por us. o con alimentacin e"terna en este pin tendremos un -olta:e de apro"imadamente JB ?microcontrolador funcionando@ y se resetea el microcontrolador cuando tenemos un ni-el de -olta:e .a:o durante m%s tiempo 5ue la duracin m9nima del impulso. 8n el caso de la placa arduino se produce el reseteo cuando ponemos la rama de alimentacin a tierra ?>B@ pulsando el .otn de reset. Para ase urarnos de un reseteo correcto pulsaremos el .otn durante un par de se undos. Botn en estado normal )A ?normalmente a.ierto@1 el pin 1 est% a un -olta:e de JB. Botn en estado pulsado ?cerrado@1 el pin 1 est% a un -olta:e de >B. 7e resetea el microcontrolador.

P'> 2 y P'1 $* 7e corresponden con la entrada ?DE@ y la salida ?!E@ para la transmisin de datos TT! ?Transistor Transistor !o ic@. BCC U* Aliementacin del microcontrolador con JB de corriente continua. ABCC2>* 8s la toma de la tensin de alimentacin ?JB@ para el con-ersor A;'. P)'V y P)'22* !a a.re-iatura P)' pro-iene del in lGs ?Pround@1 tierra en espaFol o comunmente conocida en la electrnica como masa. 8s un punto del circuito 5ue se encuentra a un potencial de >B. PBKW y PBU1>* 7on los pines a los 5ue est% conectado el oscilador formado por un resonador de 1K+,6 en paralelo con una resistencia de 1+a. 8l circuito est% conectado de la si uiente forma*

8l recuadro ris representa el resonador cer%mico de 1K +,6. 8ste circuito oscilador enera la .ase de tiempos para el funcionamiento del relo: del microcontrolador. P'2&1 P'&K1 P'U1$1 PB>1&1 PB&1V1 PBJ1W* Pines di itales 5ue pueden ser confi urados como entradas o salidas. P'$J1 P'J111 P'K121 PB11J1 PB21K1 PB$1U* Pines di itales 5ue soportan modulacin por anc,o de pulso1 ?P#+@ del in lGs Pulse #idt, +odulation. AD8Y21* 8s el pin de referencia anal ica para el con-ersor A;' PC>2$1 PC12&1 PC22J1 PC$2K1 PC&2U1 PCJ2V* 8ntradas anal icas. 1E4 IC7P T] 8stos pines sir-en para la pro ramacin del AT+8PA$2VP-P( a tra-Gs del puerto serie1 de a,9 las si las IC7P ?In Circuit 7erial Pro rammin @1 se utili6an para ra.ar el .ootloader en el microcontrolador o modificarlo a tra-Gs de este puerto sin necesidad de sacarlo del 6calo. 8l .ootloader ya -iene ra.ado de f%.rica en este microcontrolador.

Podemos identificar el pin1 del I7CP en la placa fi:%ndonos el pe5ueFo punto .lanco 5ue esta ra.ado so.re ella1 ese punto nos indica 5ue se trata del pin numero 11 i ual ocurre en los c,ips1 microcontroladores y otros circuitos inte rados. 1F4 !ed de color -erde 5ue se enciende cuando la placa esta alimentada. 1G4 DET] 8ntrada de datos TT! 904 TET] 7alida de datos TT! 914 P#+T] Pines di itales con P#+ ?Pulse #idt, +odulation@ o +odulacin por Anc,o de Pulso. 7e pueden confi urar como entradas o salidas 8"plicado .re-emente una seFal P#+ es una onda di ital cuadrada1 donde la frecuencia es constante1 pero la fraccin de tiempo en 5ue la seFal est% encendida ?el ciclo de tra.a:o@ puede -ariar entre el > y el 1>>b. Como -emos en la ima en con analo #rite?@ podemos ir -ariando la frecuencia de la seFal dando los -alores apropiados 5ue -an desde > a 2JJ.

994 Pines di itales 5ue pueden confi urarse como entradas o salidas1 estos no disponen de modulacin por anc,o de pulso. (na particularidad de los pines 2 y $ es 5ue pueden ser confi urados para acti-ar una interrupcin en un -alor .a:o1 un flanco ascendente o descendente1 o un cam.io en el -alor. Con attac,Interrupt ?@ podremos mane:ar esta caracter9stica de dic,os pines. 9:4 Tierra ?>-@ 9;4 !ensi3n de referencia para las entradas anal icas. Podemos controlar dic,o -olta:e con analo Deference?@. 9<4 7'A T] ?7erial 'ata@ linea de datos.

9D4 7C! T] ?7erial ClocA@ linea de relo:. 8stos dos pines 7'A y 7C! sir-en para comunicarse con dispositi-os I2C ; T#I usando la li.rer9a #ire. 9E4 'Y(-IC7PT] Puerto IC7P para el microcontrolador AT+8PA1K(21 como en el caso del AT+8PA$2VP-P( se emplea para comunicarnos con el microcontrolador por el serial1 para reflas,earlo con el .ootloader1 ,acer al unas modificaciones1 ponerlo en modo 'Y(1 etc...

9F4 QP2T] Pines li.res del AT+8PA1K(21 dos entradas y dos salidas para futuras ampliaciones. 9G4 8ncapsulados de resistencias. :04 Pulsador para resetear el microcontrolador central ?AT+8PA$2VP-P(@. 7u funcionamiento ya esta e"plicado en el punto 1K en el 5ue se detallan los pines del AT+8PA$2V. :14 !ed conectado en paralelo entre el pin 1$ y P)'1 cuando este pin tiene un -alor OIPO?JB@ el !8' se enciende y cuando este tiene un -alor !O#?>B@ este se apa a :94 !ed TE ::4 !ed DE 8stos !eds TE y DE se encienden cuando se transmiten datos a tra-es del puerto serie1 es decir cuando estamos ra.ando el pro rama en el microcontrolador. :;4 D878T-8)* 7i nifica Deset ena.led1 en el ,a.la ,ispana reset ,a.ilitado. 8sta ,a.ilitado el auto-reset1 para des,a.ilitarlo por cual5uier tipo de se uridad ?por e:emplo un proyecto 5ue tenemos funcionando y no 5ueremos 5ue nadie lo reinicie@ de.emos desoldar los pads D878T-8) y limpiarlos de forma 5ue estean aislados el uno del otro. :<4 Desonador cer%mico de 1K +,6 para el microcontrolador AT+8PA$2VP-P(. !os resonadores cer%micos son menos precisos 5ue los cristales osciladores1 pero para el caso ,ace perfectamente la funcin y a,orramos .astante espacio en la placa. Como se detalla en el punto 1K1 el resonador enera da .ase de tiempos para el funcionamiento del microcontrolador.

También podría gustarte