0% encontró este documento útil (0 votos)
214 vistas31 páginas

Ejercicios de Arduino Resueltos

Este documento presenta varios ejercicios resueltos utilizando Arduino. Incluye ejercicios como hacer parpadear un LED, encender y apagar LEDs secuencialmente, simular un semáforo y transmitir código Morse con un buzzer. Explica cómo instalar el entorno de programación de Arduino y proporciona el código para cada ejercicio con el objetivo de familiarizarse con la plataforma y aprender conceptos básicos de programación.

Cargado por

corazto
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
214 vistas31 páginas

Ejercicios de Arduino Resueltos

Este documento presenta varios ejercicios resueltos utilizando Arduino. Incluye ejercicios como hacer parpadear un LED, encender y apagar LEDs secuencialmente, simular un semáforo y transmitir código Morse con un buzzer. Explica cómo instalar el entorno de programación de Arduino y proporciona el código para cada ejercicio con el objetivo de familiarizarse con la plataforma y aprender conceptos básicos de programación.

Cargado por

corazto
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 31

EJERCICIOS DE ARDUINO RESUELTOS

Grupo Sabika

Revisado: 20/11/2010
Ejercicios de Arduino resueltos, Grupo Sabika 1

Instalar Entorno de Programacin Arduino en U untu !"#$"#% "#$#&% '$"# ( '$#&)


Para la instalacin de Arduino se requieren ciertos paquetes para su funcionamiento... librxtx- ava // Librera para comunicacin serial avr-libc ! "cc-avr // Pa uete de compiladores para la pro!ramacin de "icrocontroladores Atmel con Len!uaje # sun- ava#- re // "otor $a%a 1$ Puede instalar estos paquetes desde %&naptic como si"ue: %istema ' Administracin ' (estor de Paquetes %&naptic )n la ventana del %&naptic proceda a seleccionar cada uno de los paquetes mencionados desde una consola *terminal$ escribiendo lo si"uiente: sudo apt&!et install libr't'&ja%a a%r&libc !cc&a%r sun&ja%a(& jre 2$ +escar"ue arduino desde su pa"ina ,eb en -ttp://arduino.cc/ o abra una terminal & escriba lo si"uiente: Para versiones de .2 bits *i./#$ )!et *ttp+//arduino,!oo!lecode,com/-iles/arduino&../1,t!0 Para versiones de #0 bits *amd#0$ )!et *ttp+//-iles,arduino,cc/do)nloads/arduino&../1&/,t!0 .$ +escomprimalo... Reali1ando doble clic sobre el arc-ivador o en una terminal con tar '%- arduino&../1,t!0 0$ 2b3quese en la carpeta... 4on el nave"ador de arc-ivos o mediante una terminal cd arduino&../1 5$ ) ec6telo 7 Reali1ando doble clic sobre el arc-ivo llamado arduino o mediante un terminal ,/arduino 8tra forma mu& sencilla de 9nstalar Arduino en 2buntu :.10 & 10.00 es a trav;s del repositorio de Arduino para 2buntu< para ello se"uimos los si"uientes pasos en un terminal de =inux< >men6 Aplicaciones ' Accesorios ' ?erminal@: 1$ >sudo add-apt-repositor& ppa:arduino-ubuntu-team*. AAade el repositorio de ubuntu a las or3"enes de soft,are de tu equipo. 2$ >sudo apt-"et update@. Actutali1a los or3"enes de soft,are de tu equipo & por tanto los repositorios. .$ >sudo apt-"et install arduino@. 9nstala Arduino con todas sus dependencias. 0$ Arduino aparece en el >men6 Aplicaciones ' Pro"ramacin ' Arduino@. Bota: las ordenes que ten"an >sudo@ delante requieren permisos de administrador & por tanto pedirC la contraseAa de adminsitrador. )n la actual 2buntu 10.10 desde el >centro de soft,are de 2buntu@ se instala directamente.

Ejercicios de Arduino resueltos, Grupo Sabika

EJERCICIOS DE ARDUI+O$
Led parpadeante$
%e trata de conectar un led al pin1.< -aciendo que lu1ca durante 500 ms & que se apa"ue durante 100 ms< este proceso se repetirC c3clicamente. 8b etivos: Reconocer partes de la placa. Aprender a conexionar leds a la placa. Damiliari1arse con el entorno de pro"ramacin. Reconocer las partes de un pro"rama de arduino. 4onocer rdenes como: pinEode< di"italFrite & dela&.

1deo

%olucin: %oid setup23 4 //comien0a la con-i!uracion pin"ode215, 678P7839 //con-i!ura el pin 15 como de salida : //termina la con-i!uracion %oid loop23 4 //comien0a el bucle principal del pro!rama di!ital;rite215, <=G<39 //en%ia >1 al pin 2salida3 15 dela? 2>..39 //espera >.. ms pin 15 con >1
Ejercicios de Arduino resueltos, Grupo Sabika 5

di!ital;rite215, L6;39 //en%ia .1 al pin 2salida3 15 dela? 21..39 //espera 1.. ms pin 15 con .1 :

Secuencia de leds$
%e trata de encender & apa"ar 0 leds secuencialmente. =os leds deben estar conectados a los pines 5<#<G & /. %e deben encender & posteriormente apa"ar los leds desde el pin 5 al /< con un tiempo de duracin de encendido & apa"ado de 200 milise"undos. Bota: la secuencia principal del pro"rama debe estar reproducida en una funcin a la que llamarC el pro"rama principal. 8b etivos: Damiliari1arse con el entorno de pro"ramacin. Aprender a declarar variables tipo lista de valores. Aprender a declarar una funcin & llamarla cuando sea necesario.

1ideo %olucin 1: int tiempo@/..9 //declara una %ariable como entero ? de %alor /.. %oid setup23 4 //comien0a la con-i!uracion pin"ode2>,678P7839 pin"ode2(,678P7839 pin"ode2A,678P7839 pin"ode2B,678P7839 : %oid loop23 4 //comien0a el bucle principal del pro!rama di!ital;rite2>,<=G<39 dela?2tiempo39 di!ital;rite2>,L6;39 dela?2tiempo39 di!ital;rite2(,<=G<39 dela?2tiempo39 di!ital;rite2(,L6;39 dela?2tiempo39 di!ital;rite2A,<=G<39 dela?2tiempo39
Ejercicios de Arduino resueltos, Grupo Sabika C

di!ital;rite2A,L6;39 dela?2tiempo39 di!ital;rite2B,<=G<39 dela?2tiempo39 di!ital;rite2B,L6;39 dela?2tiempo39 : %olucin 2: int tiempo@/..9 int n9 %oid setup23 4 //comien0a la con-i!uracion -or 2n@>9nDE9nFF3 4 pin"ode 2n, 678P7839 : : %oid secuencia23 4 -or 2n@>9nDE9nFF3 4 di!ital;rite 2n, <=G<39 dela? 2tiempo39 di!ital;rite 2n, L6;39 dela? 2tiempo39 : : %oid loop23 4 secuencia239 : %olucin .: int ledsGH@4>,(,A,B:9// Ieclara %ariables tipo lista de %alores int tiempo@/..9 int n@.9 %oid setup23 4 //comien0a la con-i!uracion -or 2n@.9nDC9nFF3 4 pin"ode 2ledsGnH, 678P7839 : : %oid secuencia23 4 -or 2n@.9nDC9nFF3 4 di!ital;rite 2ledsGnH, <=G<39 dela? 2tiempo39 di!ital;rite 2ledsGnH, L6;39 dela? 2tiempo39 : : %oid loop23 4 secuencia239 :

Cruce de sem,-oros$
%e trata de un cruce de semCforos controlado por arduino< para ello utili1aremos en el primer semCforo los pines . *led ro o$< 0 *led ambar$< 5 *led verde$< en el se"undo semCforo utili1aremos los pines # *led ro o$< G *led ambar$ & / *led verde$. =a secuencia de funcionamiento debe ser : ro o 1 H verde 2 durante . se"undos< ro o 1 H ambar 2 durante 500 ms< verde 1 H ro o 2 durante . se"undos< ambar 1 - < ro o 2 durante 500 ms.

Ejercicios de Arduino resueltos, Grupo Sabika

>

8b etivos: Damiliari1arse con el entorno de pro"ramacin. Aprender a declarar variables tipo lista de valores. %olucin: int ledsGH@45,C,>,(,A,B39 int tiempo1@5...9 int tiempo/@>..9 int n9 %oid setup23 4 -or 2n@.9nD(9nFF3 4 pin"ode 2ledsGnH,678P7839 : : %oid loop 23 4 di!ital;rite 2ledsG.H,<=G<39 di!ital;rite 2ledsG>H,<=G<39 dela? 2tiempo139 di!ital;rite 2ledsG>H,L6;39 di!ital;rite 2ledsGCH,<=G<39 dela? 2tiempo/39 di-ital;riteGledsG.H,L6;39 di!ital;rite 2ledsG/H,<=G<39 di!ital;rite 2ledsGCH,L6;39 di!ital;rite 2ledsG5H,<=G<39 dela? 2tiempo139 di!ital;rite 2ledsG/H,L6;39 di!ital;rite2ledsG1H,<=G<39 dela? 2tiempo/39 :

SOS con .um ador$


%e trata de un 1umbador que en cdi"o morse *pitidos lar"os/cortos$ especifica una palabra< en nuestro caso %8%. Para el que no lo sepa< la % son tres seAales ac6sticas de corta duracin & la 8 tres seAales ac6stica de lar"a duracin. )l 1umbador debe estar conectado al pin 1.< los pitidos cortos tendrCn una duracin de 100 ms & los lar"os .00 ms. )ntre letra & letra debe pasar un tiempo de .00 ms & entre %8%s debe -aber un tiempo de 1000 ms. Bota: +ebes usar variables para "uardar los tiempos que vas a usar. 8b etivos: Reconocer partes de la placa. Aprender a conexionar un 1umbador a la placa. Damiliari1arse con el entorno de pro"ramacin. Reconocer las partes de un pro"rama de arduino. Aprender a como declarar variables. 4onocer rdenes de control de pro"rama como: for.

Ejercicios de Arduino resueltos, Grupo Sabika

1ideo %olucin: int corto@1..9 //Ieclara la %ariable de ar!umento entero JcortoJ ? la iniciali0a con el %alor 1.. 2letra S3 int pausa@5..9//tiempo entre letra ? letra int lar!o@5..9 //%ariable de ar!umento entero Jlar!oJ ? la iniciali0a con el %alor 5.. 2letra 63 int espera@1...9//%ariable ar!umento entero JesperaJ ? la iniciali0a con el %alor 1... 2tiempo entre S6S & S6S3 int n@.9 int 0umb@159 //P=K di!ital al ue conectamos el 0umbador %oid setup234 //comien0a la con-i!uracion pin"ode20umb,678P7839 : %oid loop234 -or2n@.9nD59nFF34 //=teracion en la ue la %ariable n comien0a con el %alor . di!ital;rite20umb, <=G<39 // ? %a aumentando en 1 en cada ciclo *asta ue toma el %alor /, dela?2corto39 // con lo ue las instrucciones comprendidas entre los corc*etes di!ital;rite20umb,L6;39 // se repiten 5 %eces dela?2corto39 : dela?2pausa39 //8iempo entre letras -or2n@.9nD59nFF34 //A ui esta la 6 di!ital;rite20umb, <=G<39 dela?2lar!o39 di!ital;rite20umb,L6;39 dela?2lar!o39 : dela?2pausa39 -or2n@.9nD59nFF34 di!ital;rite20umb, <=G<39 dela?2corto39 di!ital;rite20umb,L6;39 dela?2corto39 : dela?2espera39 //8iempo *asta repetir S6S de nue%o : %olucin 2:

Ejercicios de Arduino resueltos, Grupo Sabika

int tcorto@1..9 int tlar!o@5..9 int pausa@5..9 int espera@1...9 int n@.9 %oid setup234 //comien0a la con-i!uracion pin"ode215,678P7839 : %oid s234 //comien0a el bucle para la letra S -or2n@.9nD59nFF3 4 di!ital;rite 215,<=G<39 dela? 2tcorto39 di!ital;rite 215,L6;39 dela? 2tcorto39 : : %oid o234 //comien0a el bucle para la letra 6 -or2n@.9nD59nFF3 4 di!ital;rite 215,<=G<39 dela? 2tlar!o39 di!ital;rite 215,L6;39 dela? 2tlar!o39 : : %oid loop234 //se ejecuta el bucle principal en el orden si!uiente s239 dela?2pausa39 o239 dela?2pausa39 s239 dela?2espera39 :

Coc/e 0ant,stico.
%e trata de encender & apa"ar G leds secuencialmente. =os leds deben estar conectados a los pines 5<#<G</<:<10 & 11. %e deben encender & apa"ar los leds desde el pin 5 al 11< con un tiempo de encendido & apa"ado de 50 ms< mCs tarde se deben encender & apa"ar los leds desde el pin 11 al 5< con un tiempo de encendido & apa"ado de 50 ms. =a secuencia se debe repetir indefinidamente. )l efecto del pro"rama es el de las luces delanteras de nuestro querido I4oc-e fantCsticoI. 8b etivos: Damiliari1arse con el entorno de pro"ramacin. Repasar declaracin de variables tipo lista de valores. Repasar rdenes de control de pro"rama como: for.

Ejercicios de Arduino resueltos, Grupo Sabika

1ideo %olucin: int ledsGH@4>,(,A,B,E,1.,11:9 int n@.9 int tiempo@>.9 %oid setup23 4 //comien0a la con-i!uracin -or 2n@.9nDA9nFF3 4 pin"ode2ledsGnH,678P7839 : : %oid loop23 4 -or 2n@.9nDA9nFF3 4 di!ital;rite 2ledsGnH,<=G<39 dela?2tiempo39 di!ital;rite 2ledsGnH,L6;39 dela?2tiempo39 : -or 2n@(9nL@.9n&&3 4 di!ital;rite 2ledsGnH,<=G<39 dela?2tiempo39 di!ital;rite 2ledsGnH,L6;39 dela?2tiempo39 : : %olucin 2 *sin variable de listas de valores *arra&$$: int n@.9 int tiempo@>.9 %oid setup23 4 //comien0a la con-i!uracin -or 2n@>9nD1/9nFF3 4 pin"ode2n,678P7839 : :

Ejercicios de Arduino resueltos, Grupo Sabika

%oid loop23 4 -or 2n@>9nD1/9nFF3 4 di!ital;rite 2n,<=G<39 dela?2tiempo39 di!ital;rite 2n,L6;39 dela?2tiempo39 : -or 2n@119nL@>9n&&3 4 di!ital;rite 2n,<=G<39 dela?2tiempo39 di!ital;rite 2n,L6;39 dela?2tiempo39 : : %olucin . *Ee orando el efecto visual$: int ledsGH@4>,(,A,B,E,1.,11:9 int n@.9 int tiempo@5.9 %oid setup23 4 //comien0a la con-i!uracin -or 2n@.9nDA9nFF3 4 pin"ode2ledsGnH,678P7839 : : %oid loop23 4 -or 2n@.9nDA9nFF3 4 di!ital;rite 2ledsGnH,<=G<39 dela?2tiempo39 di!ital;rite2ledsGnF1H,<=G<39 dela?2tiempo39 di!ital;rite 2ledsGnH,L6;39 dela?2tiempoM/39 : -or 2n@(9nL@.9n&&3 4 di!ital;rite 2ledsGnH,<=G<39 dela?2tiempo39 di!ital;rite2ledsGn&1H,<=G<39 dela?2tiempo39 di!ital;rite 2ledsGnH,L6;39 dela?2tiempoM/39 : :

Secuencia de leds con pulsador$


%e trata de encender & apa"ar 0 leds secuencialmente al accionar un pulsador. )l pulsador debe estar conectado al pin 0< & los leds a los pines 5<#<G & /. %e deben encender & posteriormente apa"ar los leds desde el pin 5 al /< con un tiempo de duracin de encendido & apa"ado de 200 milise"undos. Bota: la secuencia principal del pro"rama debe estar reproducida en una funcin a la que llamarC el pro"rama principal. 8b etivos: Damiliari1arse con el entorno de pro"ramacin. Aprender a conectar una entrada di"ital a arduino *pulsador$. Aprender a declarar variables tipo lista de valores. Aprender a declarar una funcin & llamarla cuando sea necesario.
Ejercicios de Arduino resueltos, Grupo Sabika 1.

4onocer rdenes como: di"italRead. 4onocer rdenes de control de pro"rama como: 9f.

1ideo %olucin:

Ejercicios de Arduino resueltos, Grupo Sabika

11

int cadenaledsGH@4>,(,A,B:9 int pulsador@C9 int tiempo@/..9 int n@.9 %oid setup23 4 -or2n@.9nDC9nFF3 4 pin"ode 2cadenaledsGnH,678P7839 : pin"ode 2pulsador,=KP7839 : %oid -las*23 4 -or 2n@.9nDC9nFF3 4 di!ital;rite 2cadenaledsGnH,<=G<39 dela? 2tiempo39 di!ital;rite 2cadenaledsGnH,L6;39 dela? 2tiempo39 : : %oid loop23 4 i- 2di!italNead2pulsador3@@<=G<3 4 -las* 239 : : %olucin 2: int ledsGH@4>,(,A,B:9 int tiempo@/..9 int pulsador@C9 int n@.9 int %alorpulsador@.9
Ejercicios de Arduino resueltos, Grupo Sabika 1/

%oid setup234 -or2n@.9nDC9nFF34 pin"ode2ledsGnH,678P7839 : pin"ode2pulsador,=KP7839 Serial,be!in2E(..39 : %oid monitori0a234 Serial,print2JEl %alor del pulsador es ,,,J39 Serial,println2%alorpulsador39 dela?21...39 : %oid secuencia234 -or2n@.9nDC9nFF34 di!ital;rite2ledsGnH,<=G<39 dela?2tiempo39 di!ital;rite2ledsGnH,L6;39 dela?2tiempo39 : : %oid loop234 %alorpulsador@di!italNead2pulsador39 monitori0a239 i- 2%alorpulsador@@134 secuencia239 : :

Ruleta de la -ortuna$
%e trata de cinco leds que se van encendiendo & apa"ando formando una secuencia< el u"ador debe dar al pulsador cuando el led intermedio se enciende< si acierta funciona un 1umbador & la velocidad de la secuencia aumenta. =os leds deben estar conectados de los pines 5 a : *inclusives$< el 1umbador al pin 10< el pulsador al pin 11. )l tiempo inicial entre encendido & encendido de leds debe ser 200 ms< si se acierta se decrementa el tiempo en 20 ms< si el tiempo entre encendidos lle"ase a 10 ms< se devuelve el tiempo a 200 ms. 8b etivos: Repaso de conexin de entrada di"ital a arduino *pulsador$. Repaso de variables tipo lista de valores. Repaso de declarar una funcin & llamarla cuando sea necesario. Repaso de rdenes como: di"italRead. Repaso de rdenes de control de pro"rama como: Dor< 9f.

Ejercicios de Arduino resueltos, Grupo Sabika

15

1deo %olucin: int ledsGH@4>,(,A,B,E:9 int n@.9 int tiempo@/..9 int 0umbador@1.9 int pulsador@119 %oid setup 234 -or2n@.9nD>9nFF3 4 pin"ode2ledsGnH,678P7839 : pin"ode20umbador,678P7839 pin"ode2pulsador,=KP7839 : %oid compruebaacierto234 i-2di!italNead2pulsador3@@<=G< OO n@@/3 4 di!ital;rite20umbador,<=G<39 dela? 21...39 di!ital;rite20umbador,L6;39 tiempo@tiempo&/.9 i-2tiempoD1.34 tiempo@/..9: : : %oid loop 23 4 -or2n@.9nD>9nFF3 4 di!ital;rite2ledsGnH,<=G<39 dela?2tiempo39 compruebaacierto239 di!ital;rite2ledsGnH,L6;39 dela?2tiempo39 : :
Ejercicios de Arduino resueltos, Grupo Sabika 1C

Termostato$
%e trata de un dispositivo que -a"a funcionar un motor & un led cuando la temperatura supera cierto umbral. Para ello conectaremos una ntc a la entrada anal"ica 0< un led al pin 5 & un motor de corriente continua al pin 10. 4uando la temperatura lle"ue a cierto umbral de volta e *entre 0 & 1020$ que nosotros decidamos< se conectarCn a la ve1 el diodo led & el motor que puede tener unas aspas de ventilador en su e e para enfriar la ntc. AdemCs se deberC visionar el valor de volta e en la entrada anal"ica *valor entre 0 & 1020$ en una consola en el P4. 8b etivos: 4onexin de entrada anal"ica a arduino *ntc$. Jrdenes como: analo"Read. Kisuali1ar datos en consola de puerto serie< con rdenes como: %erial.be"in< %erial.print. Repaso de rdenes de control de pro"rama como: 9f else.

1deo %olucin:

Ejercicios de Arduino resueltos, Grupo Sabika

1>

int led@>9 int ntc@.9 int motor@1.9 int medida@.9 int ni%el@A..9 //%ariable ue !uarda el lmite de temperatura al ue se acti%a el %entilador %oid setup234 pin"ode2led,678P7839 pin"ode2motor,678P7839 Serial,be!in2E(..39 : %oid monitori0a234 //procedimiento ue en%a al puerto serie, para ser ledo en el monitor, Serial,print2JLa medida es ,,,J39 Serial,println2medida39 Serial,print239 dela?21...39 //para e%itar saturar el puerto serie : %oid loop234 medida@analo!Nead2ntc39 monitori0a239 i-2medidaLni%el34 //si la sePal del sensor supera el ni%el marcado+ di!ital;rite2led,<=G<39 //se enciende un a%iso luminoso di!ital;rite2motor,<=G<39 //arranca el motor : else4 // si la sePal estQ por debajo del ni%el marcado di!ital;rite2led,L6;39 di!ital;rite2motor,L6;39 // el motor se para : :

Aumentar ( disminuir intensidad luminosa de led !-ading)$


%e trata aumentar & disminuir la luminosidad de un led usando la capacidad de ofrecer una tensin variable que da una salida anal"ica. Para ello se conecta un led al pin 11 & se provoca que su luminosidad pase de m3nima a mCxima< para lue"o ir de mCxima a m3nima. =os valores de salidas anal"icas van del m3nimo 0 al mCximo 255. %olucin: int luminosidad @ .9 // %ariable para asi!nar la luminosidad al led int led @ 119 // pin del led %oid setup23 4 // en el setup no *a? ue con-i!urar nada : %oid loop23 4 -or 2luminosidad @ . 9 luminosidad D@ />>9 luminosidad@luminosidadF53 // -ade in 2-rom min to ma'3 4 analo!;rite2led, luminosidad39 // ilumina el led con el %alor asi!nado a luminosidad 2entre . ? />>3 dela?25.39 // espera 5. ms para ue se %ea el e-ecto : -or 2luminosidad @ />>9 luminosidad L@.9 luminosidad@luminosidad&53 // -ade out 2-rom ma' to min3 4 analo!;rite2led, luminosidad39
Ejercicios de Arduino resueltos, Grupo Sabika 1(

dela?25.39 : :

Lu. de led en -uncin de la lu.$


%e trata de un dispositivo que -a"a lucir un led mCs o menos en funcin de la lu1 externa. Para ello conectaremos una ldr a la entrada anal"ica 0 & un led al pin :. 4uando la lu1 se encuentre entre 0 & 512 el led debe colocarse en el nivel de potencia mCxima *255$< si la lu1 se encuentra entre valores 512 & 1020 el debe lucir al nivel de potencia #0. AdemCs se deberC visionar el valor de volta e en la entrada anal"ica *valor entre 0 & 1020$ en una consola en el P4. 8b etivos: Repaso conexin de entrada anal"ica a arduino *ldr$. 4onexionado de salidas anal"icas. Jrdenes como: analo"Frite. Repaso de visuali1ar datos en consola de puerto serie< con rdenes como: %erial.be"in< %erial.print. Repaso de rdenes de control de pro"rama como: 9f else.

1deo %olucin: int led@E9 int ldr@.9 int lu0@.9 %oid setup234 pin"ode2E,678P7839 Serial,be!in2E(..39 : %oid monitori0a234 Serial,print2JEl %alor de lu0 es ,,,J39 Serial,println2lu039 dela?21...39 :
Ejercicios de Arduino resueltos, Grupo Sabika 1A

%oid loop234 lu0@analo!Nead2ldr39 monitori0a239 i-2lu0D>1/ OO lu0L@.34 analo!;rite2led,/>>39 : i-2lu0L@>1/ OO lu0D@1./C3 4 analo!;rite2led,(C39 : :

Lu. de leds en -uncin de la lu.$ 1ersin 2$


%e trata de un dispositivo que -a"a lucir tres leds mCs o menos en funcin de la lu1 externa. Para ello conectaremos una ldr a la entrada anal"ica 0 & los leds a los pines :<10 & 11. 4uando la lu1 se encuentre entre G#/ & 102. los leds debe colocarse en el nivel de potencia #0< si la lu1 se encuentra entre valores 512 & G#G los leds deben lucir al nivel de potencia 12G< si la lu1 se encuentra entre valores 25# & 511 los leds deben lucir al nivel de potencia 1:1< si la lu1 se encuentra entre valores 0 & 255 los leds deben lucir al nivel de potencia 255. AdemCs se deberC visionar el valor de volta e en la entrada anal"ica *valor entre 0 & 1020$ en una consola en el P4. 8b etivos: Repaso conexin de entrada anal"ica a arduino *ldr$. Repaso conexionado de salidas anal"icas. Repaso rdenes como: analo"Frite. Repaso de visuali1ar datos en consola de puerto serie< con rdenes como: %erial.be"in< %erial.print. Repaso de rdenes de control de pro"rama como: 9f else.

1deo %olucin: int ledsGH@4E,1.,11:9 int tiempo@5..9 int ldr@.9 int n@.9 int lu0@.9 %oid setup234 -or2n@.9n@/9nFF3 4 pin"ode2ledsGnH,678P7839 : Serial,be!in2E(..39
Ejercicios de Arduino resueltos, Grupo Sabika 1B

: %oid monitori0a23 4 Serial,print2JEl %alor de la lu0 es ,,,J39 Serial,println2lu039 dela?21...39 : %oid loop234 lu0@analo!Nead2ldr39 monitori0a239 i- 2lu0D@1./5 OO lu0L@A(B3 4 -or 2n@.9n@/9nFF3 4 analo!;rite2ledsGnH,(C39 dela?2tiempo39 : : i- 2lu0D@A(A OO lu0L@>1/3 4 -or 2n@.9n@/9nFF3 4 analo!;rite2ledsGnH,1/A39 dela?2tiempo39 : : i- 2lu0D@>11 OO lu0L@/>(3 4 -or 2n@.9n@/9nFF3 4 analo!;rite2ledsGnH,1E139 dela?2tiempo39 : : i- 2lu0D@/>> OO lu0L@.3 4 -or 2n@.9n@/9nFF3 4 analo!;rite2ledsGnH,/>>39 dela?2tiempo39 : : :

Lu. de leds en -uncin de la lu.$ 1ersin 3$


%e trata de un dispositivo que -a"a lucir tres leds mCs o menos en funcin de la lu1 externa. Para ello conectaremos una ldr a la entrada anal"ica 0 & los leds a los pines :<10 & 11. )l valor de la entrada anal"ica 0 estC comprendido entre 0 & 1020< & el valor de la luminosidad de los leds entre 0 & 255. =os leds deben lucir entre 0 & 255 en funcin del valor de la entrada anal"ica 0< siendo su valor inversamente proporcional al valor de la entrada anal"ica 0 *de 0 a 1020$< o sea a mCs lu1 menor intensidad luminosa de los leds. 8b etivos: Repaso conexin de entrada anal"ica a arduino *ldr$. Repaso conexionado de salidas anal"icas. Repaso rdenes como: analo"Frite. Repaso de visuali1ar datos en consola de puerto serie< con rdenes como: %erial.be"in< %erial.print. Repaso de rdenes de control de pro"rama como: 9f else.

Ejercicios de Arduino resueltos, Grupo Sabika

1E

1deo %olucin:

int ldr@.9 int ledsGH@4E,1.,11:9 int n@.9 int medida@.9 int lu0led@.9 %oid setup234 -or 2n@.9nD59nFF3 4 pin"ode2ledsGnH,678P7839 : Serial,be!in2E(..39 : %oid monitori0a234
Ejercicios de Arduino resueltos, Grupo Sabika /.

Serial,print2JLa medida de lu0 es ,,,J39 Serial,println2medida39 Serial,print2JLa lu0 a dar en los leds es ,,,J39 Serial,println2lu0led39 dela?21...39 : %oid loop234 medida@analo!Nead2ldr39 lu0led@/>>&2medida/C39 monitori0a239 -or 2n@.9nD59nFF34 analo!;rite2ledsGnH,lu0led39 dela?2/..39 : :

Termostato con 4elocidad de motor 4aria le$


%e trata de diseAar un dispositivo que -a"a lucir un led & funcionar el motor de un ventilador cuando la temperatura lle"ue a cierto valor umbral *entre 0 & 1020$. Para ello conectaremos una ntc a la entrada anal"ica 0< el led al pin 1. & el motor al pin :. )l motor debe funcionar a cierto nivel de potencia a ele"ir entre 0 & 255. AdemCs se deberC visionar el valor de volta e en la entrada anal"ica *valor entre 0 & 1020$ en una consola en el P4. 8b etivos: Repaso conexin de entrada anal"ica a arduino *ntc$. Repaso conexionado de salidas anal"icas. Repaso rdenes como: analo"Frite. Repaso de visuali1ar datos en consola de puerto serie< con rdenes como: %erial.be"in< %erial.print. Repaso de rdenes de control de pro"rama como: 9f else. %olucin: int motor@E9 int led@159 int ntc@.9 int temperatura@.9 %oid setup234 pin"ode2led,678P7839 pin"ode2motor,678P7839 Serial,be!in2E(..39 : %oid monitori0a234 Serial,print2JEl %alor de temperatura es ,,,J39 Serial,println2temperatura39 dela?21...39 : %oid loop234 temperatura@analo!Nead2ntc39 monitori0a239 i-2temperaturaL>5.34 di!ital;rite2led,<=G<39 analo!;rite2motor,/..39 :
Ejercicios de Arduino resueltos, Grupo Sabika /1

else 4 di!ital;rite2led,L6;39 di!ital;rite2motor,L6;39 : :

Termostato con 4elocidad de motor 4aria le !1ersin 2)$


%e trata de un dispositivo que -a"a "irar un motor mCs o menos rCpido en funcin de la temperatura. Para ello conectaremos una ntc a la entrada anal"ica 0 & un led al pin : & el motor al pin 10. )l valor de la entrada anal"ica 0 estC comprendido entre 0 & 1020< & el valor del la tensin del pin 10 entre 0 & 5 voltios *entre 0 & 255$. )l motor debe "irar a una velocidad entre 0 & 255 en funcin del valor de la entrada anal"ica 0< siendo su valor directamente proporcional al valor de la entrada anal"ica 0 *de 0 a 1020$< o sea a mCs temperatura mCs velocidad del motor. AdemCs el led del pin : debe encenderse. 8b etivos: Repaso conexin de entrada anal"ica a arduino *ntc$. Repaso conexionado de salidas anal"icas. Repaso rdenes como: analo"Frite. Repaso de visuali1ar datos en consola de puerto serie< con rdenes como: %erial.be"in< %erial.print. Repaso de rdenes de control de pro"rama como: 9f else. %olucin:

Ejercicios de Arduino resueltos, Grupo Sabika

//

int ntc@.9 int led@159 int motor@E9 int n@.9 int temperatura@.9 int %elocidadmotor@.9 %oid setup234 pin"ode2led,678P7839 pin"ode2motor,678P7839 Serial,be!in2E(..39 : %oid monitori0a234 Serial,print2JEl %alor de la temperatura es ,,,J39 Serial,println2temperatura39 dela?21...39 : %oid loop234 temperatura@analo!Nead2ntc39 monitori0a239 %elocidadmotor@temperatura/C9 di!ital;rite2led,<=G<39 analo!;rite2motor,%elocidadmotor39 :

Aumentar luminosidad de led con pulsador !-ading)$


%e trata de aumentar la luminosidad de un diodo led conectado al pin 11 a trav;s de la activacin de un pulsador. )l pulsador debe estar conectado al pin 2. Eientras el pulsador estC conectado aumenta la luminosidad del led -asta lle"ar a su valor mCximo *255$< si el pulsador se desactiva se mantendrC su luminosidad -asta que el valor de luminosidad lle"ue a su mCximo *255$ pulsando nuevas veces< si esto ocurre la luminosidad pasarC a valor nulo *0$. %olucin: int led @ 119 // ele!imos el pin del led int pulsador @ /9 // ele!imos el pin del pulsador int '@.9 // con-i!uramos la %ariable para incrementar el %alor de luminosidad %oid setup23 4 pin"ode2led, 678P7839 // declaramos led como salida pin"ode2pulsador, =KP7839 // declaramos pulsador como entrada : %oid loop23 4 )*ile 2di!italNead2pulsador3 @@ <=G< OO 'D@/>>3 // c*e uea si el pulsador estQ pulsado ? ' es menor de />> 4 analo!;rite2led,'39 // aumenta la luminosidad del led en -uncin del tiempo de acti%acin de pulsador dela?2/.39 '@'F59 : i- 2'L/>>3 4 '@.9 // asi!na el %alor . a ' analo!;rite2led, .39 // apa!a el led
Ejercicios de Arduino resueltos, Grupo Sabika /5

: :

Termmetro de leds$
/ leds lucen o se apa"an e erciendo de escala termom;trica. )n funcin de la temperatura lucen mCs cantidad de leds o menos. ?ambi;n se monitori1a en tiempo real *cada se"undo$< el valor de la temperatura en "rados 4elsius.

1deo Antes del pro"rama al"unas consideraciones: a$ ?ras -acer varias medidas sobre la variacin de temperatura & resistencia de la ntc< =oren1o 8lmo extra o la si"uiente ecuacin emp3rica< que pone en relacin ambas ma"nitudes de la ntc < a&udado de 8pen8ffice 4alc< su -orno< su fri"or3fico & su buen -acer. b$ Lemos conexionado la B?4 a las entradas anal"icas de la si"uiente manera reali1ando un divisor de tensin.
Ejercicios de Arduino resueltos, Grupo Sabika /C

?eniendo en cuenta que un divisor de tensin "en;rico tiene el si"uiente conexionado<& atiende a la expresin:

c$ 8perando en nuestro caso:

sustitu&endo Kout por su valor:

sustitu&endo Rntc por su valor:

%olucin 1: int 0umbador@C9 //asi!na a la %ariable 0umbador el %alor C int ledsGH@4>,(,A,B,E,1.,11,1/:9 //de-ine %ariable en -orma de lista llamada leds con B %alores int ntc@.9 //asi!na a la %ariable ntc el %alor . int temperatura@.9 //asi!na a la %ariable temperatura el %alor . int n@.9 //asi!na a la %ariable n el %alor . int m@.9 //asi!na a la %ariable m el %alor . -loat temperatura/@.9 -loat temperatura5@.9 %oid setup234 //comien0a la con-i!uracin -or 2n@.9nDB9nFF3 4 pin"ode2ledsGnH,678P7839 : //*ace ue los %alores de la lista de la %ariable leds del . al A 2del > al 1/3 lo asi!ne a los pines ? los declara como de salida pin"ode20umbador,678P7839 //la %ariable 0umbador 2C3 es el pin ue pone como de salida Serial,be!in2E(..39 // *ace ue comience la comunicacin con el puerto serie 2pantalla de salida3 : %oid monitori0a234 //-uncin monitori0a sir%e para mostrar la temperatura de la K8# en %alores desde . a 1./C Serial,print2JEl %alor de temperatura en !rados #elsius es ,,,J39 //Serial,println2temperatura39
Ejercicios de Arduino resueltos, Grupo Sabika />

//Serial,println2temperatura/39 Serial,println2temperatura539 dela?21...39 : %oid apa!aleds234 // -uncin ue sir%e para apa!ar todos los leds -or 2m@.9mDB9mFF3 4 di!ital;rite2ledsGmH,L6;39 : : %oid loop234 //blo ue principal del pro!rama, ue se repite *asta el in-inito ? mQs alla temperatura@analo!Nead2ntc39 // lee el %alor entre . ? 1./C de la entrada anal!ica anal!ica . 2%alor de la %ariable ntc3 temperatura/@21./C..../temperatura3&1....9 temperatura5@2&/B,E3Mlo!2temperatura/3F//C,>>9 monitori0a239 // llama a la -uncin monitori0a apa!aleds239 // llama a la -uncin apa!aleds i-2temperatura5D1/34 //si la temperatura es menor a 1/ !rados, apa!a todos los leds apa!aleds239 : i-2temperatura5L1/OOtemperatura5D@1534 // si la temperatura se encuentra entre 1/ ? 15 !rados enciende el led primero 2salida di!ital >3 di!ital;rite2ledsG.H,<=G<39 : i- 2temperatura5L15Otemperatura5D@1C3 4 // si la temperatura se encuentra entre 15 ? 1C !rados enciende los leds 1 ? / 2salidas di!itales > ? (3 di!ital;rite2ledsG.H,<=G<39 di!ital;rite2ledsG1H,<=G<39 : i- 2temperatura5L1COOtemperatura5D@1>3 4 // si la temperatura se encuentra entre 1C ? 1> !rados enciende los leds 1,/ ? 5 2salidas di!itales >,( ? A3 di!ital;rite2ledsG.H,<=G<39 di!ital;rite2ledsG1H,<=G<39 di!ital;rite2ledsG/H,<=G<39 : i- 2temperatura5L1>OOtemperatura5D@1(3 4 // si la temperatura se encuentra entre 1> ? 1( !rados enciende los leds 1,/,5 ? C 2salidas di!itales >,(,A ? B3 di!ital;rite2ledsG.H,<=G<39 di!ital;rite2ledsG1H,<=G<39 di!ital;rite2ledsG/H,<=G<39 di!ital;rite2ledsG5H,<=G<39 : i- 2temperatura5L1(OOtemperatura5D@1A3 4 // si la temperatura se encuentra entre 1( ? 1A !rados enciende los leds 1,/,5,C ? > 2salidas di!itales >,(,A,B ? E3 di!ital;rite2ledsG.H,<=G<39 di!ital;rite2ledsG1H,<=G<39 di!ital;rite2ledsG/H,<=G<39 di!ital;rite2ledsG5H,<=G<39 di!ital;rite2ledsGCH,<=G<39 : i- 2temperatura5L1AOOtemperatura5D@1B3 4 // si la temperatura se encuentra entre 1A ? 1B !rados enciende los leds 1,/,5,C,> ? ( 2salidas di!itales >,(,A,B,E ? 1.3 di!ital;rite2ledsG.H,<=G<39 di!ital;rite2ledsG1H,<=G<39 di!ital;rite2ledsG/H,<=G<39
Ejercicios de Arduino resueltos, Grupo Sabika /(

di!ital;rite2ledsG5H,<=G<39 di!ital;rite2ledsGCH,<=G<39 di!ital;rite2ledsG>H,<=G<39 : i- 2temperatura5L1BOOtemperatura5D@1E3 4 // si la temperatura se encuentra entre 1B ? 1E !rados enciende los leds 1,/,5,C,>,( ? A 2salidas di!itales >,(,A,B,E,1. ? 113 di!ital;rite2ledsG.H,<=G<39 di!ital;rite2ledsG1H,<=G<39 di!ital;rite2ledsG/H,<=G<39 di!ital;rite2ledsG5H,<=G<39 di!ital;rite2ledsGCH,<=G<39 di!ital;rite2ledsG>H,<=G<39 di!ital;rite2ledsG(H,<=G<39 : i- 2temperatura5L1EOOtemperatura5D@/.3 4 // si la temperatura se encuentra entre 1E ? /. !rados enciende los leds 1,/,5,C,>,(,A ? B 2salidas di!itales >,(,A,B,E,1.,11 ? 1/3 di!ital;rite2ledsG.H,<=G<39 di!ital;rite2ledsG1H,<=G<39 di!ital;rite2ledsG/H,<=G<39 di!ital;rite2ledsG5H,<=G<39 di!ital;rite2ledsGCH,<=G<39 di!ital;rite2ledsG>H,<=G<39 di!ital;rite2ledsG(H,<=G<39 di!ital;rite2ledsGAH,<=G<39 : i- 2temperatura5L/.3 4 // si la temperatura es ma?or de /. !rados enciende todos los leds 1,/,5,C,>,(,A ? B 2salidas di!itales >,(,A,B,E,1.,11 ? 1/3 di!ital;rite2ledsG.H,<=G<39 di!ital;rite2ledsG1H,<=G<39 di!ital;rite2ledsG/H,<=G<39 di!ital;rite2ledsG5H,<=G<39 di!ital;rite2ledsGCH,<=G<39 di!ital;rite2ledsG>H,<=G<39 di!ital;rite2ledsG(H,<=G<39 di!ital;rite2ledsGAH,<=G<39 : dela?21...39 // espera un se!undo : Otra solucin usando -or para el encendido de los leds5 %olucin 2: int 0umbador@C9 //asi!na a la %ariable 0umbador el %alor C int ledsGH@4>,(,A,B,E,1.,11,1/:9 //de-ine %ariable en -orma de lista llamada leds con B %alores int ntc@.9 //asi!na a la %ariable ntc el %alor . int temperatura@.9 //asi!na a la %ariable temperatura el %alor . int n@.9 //asi!na a la %ariable n el %alor . int m@.9 //asi!na a la %ariable m el %alor . -loat temperatura/@.9 -loat temperatura5@.9 %oid setup234 //comien0a la con-i!uracin -or 2n@.9nDB9nFF3 4 pin"ode2ledsGnH,678P7839

Ejercicios de Arduino resueltos, Grupo Sabika

/A

: //*ace ue los %alores de la lista de la %ariable leds del . al A 2del > al 1/3 lo asi!ne a los pines ? los declara como de salida pin"ode20umbador,678P7839 //la %ariable 0umbador 2C3 es el pin ue pone como de salida Serial,be!in2E(..39 // *ace ue comience la comunicacin con el puerto serie 2pantalla de salida3 : %oid monitori0a234 //-uncin monitori0a sir%e para mostrar la temperatura de la K8# en %alores desde . a 1./C Serial,print2JEl %alor de temperatura en !rados #elsius es ,,,J39 //Serial,println2temperatura39 //Serial,println2temperatura/39 Serial,println2temperatura539 dela?21...39 : %oid apa!aleds234 // -uncin ue sir%e para apa!ar todos los leds -or 2m@.9mDB9mFF3 4 di!ital;rite2ledsGmH,L6;39 : : %oid loop234 //blo ue principal del pro!rama, ue se repite *asta el in-inito ? mQs alla temperatura@analo!Nead2ntc39 // lee el %alor entre . ? 1./C de la entrada anal!ica anal!ica . 2%alor de la %ariable ntc3 temperatura/@21./C..../temperatura3&1....9 temperatura5@2&/B,E3Mlo!2temperatura/3F//C,>>9 monitori0a239 // llama a la -uncin monitori0a apa!aleds239 // llama a la -uncin apa!aleds i-2temperatura5D1/34 //si la temperatura es menor a 1/ !rados, apa!a todos los leds apa!aleds239 : i-2temperatura5L1/OOtemperatura5D@1534 // si la temperatura se encuentra entre 1/ ? 15 !rados enciende el led primero 2salida di!ital >3 -or 2n@.9nD19nFF3 4 di!ital;rite 2ledsGnH,<=G<39 : : i- 2temperatura5L15Otemperatura5D@1C3 4 // si la temperatura se encuentra entre 15 ? 1C !rados enciende los leds 1 ? / 2salidas di!itales > ? (3 -or 2n@.9nD/9nFF3 4 di!ital;rite 2ledsGnH,<=G<39 : : i- 2temperatura5L1COOtemperatura5D@1>3 4 // si la temperatura se encuentra entre 1C ? 1> !rados enciende los leds 1,/ ? 5 2salidas di!itales >,( ? A3 -or 2n@.9nD59nFF3 4 di!ital;rite 2ledsGnH,<=G<39 : : i- 2temperatura5L1>OOtemperatura5D@1(3 4 // si la temperatura se encuentra entre 1> ? 1( !rados enciende los leds 1,/,5 ? C 2salidas di!itales >,(,A ? B3 -or 2n@.9nDC9nFF3 4 di!ital;rite 2ledsGnH,<=G<39 : :

Ejercicios de Arduino resueltos, Grupo Sabika

/B

i- 2temperatura5L1(OOtemperatura5D@1A3 4 // si la temperatura se encuentra entre 1( ? 1A !rados enciende los leds 1,/,5,C ? > 2salidas di!itales >,(,A,B ? E3 -or 2n@.9nD>9nFF3 4 di!ital;rite 2ledsGnH,<=G<39 : : i- 2temperatura5L1AOOtemperatura5D@1B3 4 // si la temperatura se encuentra entre 1A ? 1B !rados enciende los leds 1,/,5,C,> ? ( 2salidas di!itales >,(,A,B,E ? 1.3 -or 2n@.9nD(9nFF3 4 di!ital;rite 2ledsGnH,<=G<39 : : i- 2temperatura5L1BOOtemperatura5D@1E3 4 // si la temperatura se encuentra entre 1B ? 1E !rados enciende los leds 1,/,5,C,>,( ? A 2salidas di!itales >,(,A,B,E,1. ? 113 -or 2n@.9nDA9nFF3 4 di!ital;rite 2ledsGnH,<=G<39 : : i- 2temperatura5L1EOOtemperatura5D@/.3 4 // si la temperatura se encuentra entre 1E ? /. !rados enciende los leds 1,/,5,C,>,(,A ? B 2salidas di!itales >,(,A,B,E,1.,11 ? 1/3 -or 2n@.9nDB9nFF3 4 di!ital;rite 2ledsGnH,<=G<39 : : i- 2temperatura5L/.3 4 // si la temperatura es ma?or de /. !rados enciende todos los leds 1,/,5,C,>,(,A ? B 2salidas di!itales >,(,A,B,E,1.,11 ? 1/3 -or 2n@.9nDB9nFF3 4 di!ital;rite 2ledsGnH,<=G<39 : : dela?21...39 // espera un se!undo :

Gra adora de ritmos$


%e trata de una ca a dnde se dan unos "olpes con una cadencia< & posteriormente el 1umbador pie1oel;ctrico del sistema repite los "olpes dados. %olucin: int led@159 int pie0oelectrico@19 int medida@.9 int ni%el @ >9 //%alor de la sePal anal!ica ue establecemos como lmite de la sensibilidad del sensor int 0umbador@1.9 int numero!olpes @ .9 //%ariable ue lle%a la cuenta del nR de !olpes int tiempo @ .9 //%ariable ue lle%a la cuenta del tiempo entre cada par de !olpes int n@.9 int cadenatiemposGH@ 4.,.,.,.,.,.,.,.,.,.,.,.,.,.,:9 //cadena en la ue se !uardarQn los tiempos entre !olpes int cadena!olpesGH@4/,5,C,>,(,A,B,E,1.,11,1/,15,1C,1>:9 //cadena en la ue lle%amos la cuenta de los !olpes %oid setup23 4 pin"ode2led,678P7839 pin"ode20umbador,678P7839
Ejercicios de Arduino resueltos, Grupo Sabika /E

Serial,be!in2E(..39 //inicia la comunicacin con el puerto serie del ordenador ? : //establece la %elocidad de trans-erencia %oid !uardatiempos234 //procedimiento ue !uarda los tiempos entre !olpes en una cadena -or 2n@. 9nD1C 9nFF34 i- 2numero!olpes@@cadena!olpesGnH34 //compara el %alor del contador de !olpes con los %alores de la cadena cadenatiemposGnH @tiempo9 //para asociar el primer tiempo con / !olpes, el se!undo con 5 !olpes ? as sucesi%amente : //a tra%Ss de la posicin ue ocupan en las cadenas : : %oid si-inrepro234 //procedimiento ue reproduce, con una se cuencia de pitidos la secuencia de !olpes dela?2>..39 //las tres primeras lneas producen el primer pitido di!ital;rite20umbador, <=G<39 dela?2>.39 di!ital;rite20umbador, L6;39 -or2n@. 9nD2numero!olpes&139 nFF34 //iteracin ue produce los pitidos a partir del se!undo dela?2cadenatiemposGnHM1..39 //incorporando los tiempos ue se *an !uardado, el multiplicar por 1.. es un ajuste emprico di!ital;rite20umbador, <=G<39 // ue tiene en cuenta los tiempos ue pasan mientras se ejecuta el pro!rama dela?2>.39 di!ital;rite20umbador, L6;39 : //cuando termina la reproduccin+ numero!olpes@.9 //se reinician las %ariables para poder comen0ar con otra secuencia tiempo@.9 : %oid loop23 4 medida @ analo!Nead2pie0oelectrico39 //actuali0amos el %alor de la sePal del sensor i- 2medida L@ ni%el3 4 //si la sePal supera el lmite di!ital;rite2led,<=G<39 //se enciende el LEI Serial,print2J86#T J39 //se en%an caracteres por el puerto serie Serial,println2medida39 dela?21..39 numero!olpes @ numero!olpesF19 //aumenta en uno el contador de !olpes !uardatiempos239 //!uardamos el tiempo en su cadena tiempo @ .9 //cada %e0 ue se !uarda un tiempo el contador se pone a . para empe0ar a contar el si!uiente dela?21..39 //espera para no obtener una lectura mUltiple de un solo !olpe di!ital;rite2led,L6;39 : //si no *a? una sePal de intensidad su-iciente+ dela?21..39 //espera para no saturar el puerto serie tiempo @ tiempo F19 //aumenta el contador de tiempo i-22numero!olpesL.3OO2tiempo L@5.334 //si pasa muc*o tiempo despuSs de al menos un !olpe+ di!ital;rite2led,<=G<39 //se considera ue se *a terminado ? comien0a la reproduccin si-inrepro239 di!ital;rite2led,L6;39 : :

Ejercicios de Arduino resueltos, Grupo Sabika

5.

0uentes de conocimiento utili.adas5


-ttp://,,,.arduino.cc/ -ttp://,,,.arduino.cc/es/ -ttp://arduino.cc/es/%ecundaria/%ecundaria -ttp://arduino-ubuntu.blo"spot.com/ -ttp://visualp5.net/visualp5net-taller-arduino.-tml -ttps://sites."oo"le.com/a/divinec-ild-i"-sc-ool.or"/electronics/Lome/Arduino-=essons

I) ercicios de Arduino resueltosI is licensed under a 4reative 4ommons Reconocimiento-Bo comercial ..0 )spaAa =icense.

Ejercicios de Arduino resueltos, Grupo Sabika

51

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy