View
55
Download
5
Category
Preview:
Citation preview
PRACTICA 2 ARDUINO
ENTRADAS DIGITALES Y ANALOGICAS
Pablo Cruz Rodrıguez - 212356358pablo.crodriguez@alumnos.udg.mx
Profesor: Jose Benjamın Mercado SanchezAsignatura: Taller de Procesamiento Digital de Senales
Ciclo: 2017AUniversidad de Guadalajara
13 de febrero de 2017
Resumen
En esta practica se trabajo con las entradas de arduino. Se dividio en dos partes Digitales yAnalogicas, las cuales se veran en las secciones 2 y 3.
1. Material
1 Arduino UNO.8 Ledes azules.1 Led blanco.1 Led rojo.8 Resistencias de 220Ω.2 Resistencias de 10 kΩ.1 DIP Switch triple.Cable para protoboard.12 Jumpers para Arduino.Computadora con IDE Arduino.Cable USB para Arduino
1
2. Entradas digitales
2.1. Diseno
Figura 1: Diagrama de conexion de salidas (pines 0-7) y entradas (pines 8 y 9)para Arduino
2.2. Codigo
Listing 1: Codigo para entrada digital
1 int i =20;2 int bin =0;3 void setup ( )4 5 DDRD=B11111111 ; //Port D pines
0−7 como s a l i d a s6 DDRB=B111100 ; // por t B 8−13,
pin 0 y 1 como entradas7 89 void parpadeo ( )
10 11 PORTD=B00011000 ;12 de lay (100) ;13 PORTD=B00100100 ;14 de lay (150) ;15 PORTD=B11000011 ;16 de lay (200) ;17
1819 void parpadeo1 ( )20 21 PORTD=B11000011 ;22 de lay (100) ;23 PORTD=B00100100 ;24 de lay (150) ;25 PORTD=B00011000 ;26 de lay (200) ;27 2829 void r e c o r r i d o ( )30 31 i =20;32 bin=B00000001 ;33 while ( bin<=B10000000 )34 35 PORTD=bin ;36 bin = bin<<1;37 de lay ( i ) ;38 i=i +20;
2
39 40 4142 void r e c o r r i d o 1 ( )43 44 i =20;45 bin=B10000000 ;46 while ( bin>=B00000001 )47 48 PORTD=bin ;49 bin = bin>>1;50 de lay ( i ) ;51 i=i +20;52 53 54
55 void loop ( )56 57 int entrada=PINB ;58 switch ( entrada )59 60 case 0 : parpadeo ( ) ;61 break ;62 case 1 : parpadeo1 ( ) ;63 break ;64 case 2 : r e c o r r i d o ( ) ;65 break ;66 case 3 : r e c o r r i d o 1 ( ) ;67 break ;68 69
2.3. Montaje fısico
Figura 2: Circuito con entradas digitales funcionando
3
Figura 3: DIP Switch para entradas digitales 2 bit
3. Entradas analogicas
3.1. Diseno
Figura 4: Led como sensor, se lee en entrada analogica A0. Polarizacion inversa
4
3.2. Codigo
Listing 2: Codigo para lectura de entrada analogica
1 int pin =13;2 void setup ( ) 3 pinMode ( pin ,OUTPUT) ;4 S e r i a l . begin (9600) ;5 6 void loop ( ) 7 f loat a=analogRead (A0) ;8 S e r i a l . p r i n t l n ( a ) ;9 i f ( a>50)
10 11 d i g i t a l W r i t e ( pin ,HIGH) ;12 de lay (100) ;13 14 else15 16 d i g i t a l W r i t e ( pin , LOW) ;17 18 de lay (100) ;19
3.3. Montaje fısico y prueba de funcionamiento
Figura 5: Entorno iluminado
5
Figura 6: Entorno pasa de estar iluminado a oscuro. Se enciende led rojo
Figura 7: Entorno oscuro. Se enciende led rojo
Figura 8: Entorno pasa de estar oscuro a iluminado
6
4. Bibliografıa
https://www.arduino.cc/en/Reference/SwitchCasehttps://www.arduino.cc/en/Reference/PortManipulationhttp://www.instructables.com/id/LEDs-as-light-sensors/
7
Recommended