Arduino3a PDF
Arduino3a PDF
Arduino3a PDF
Programa 13,A,B,C
2
Programa 13 A
3
/*Programa 13A
* Control de un motor de CD
* Terminales 6 y 7 para el control del Motor
*/
int IN1=6; //Conector IN1 a pin 6 de Arduino
int IN2=7; //Conector IN2 a pin 7 de Arduino
void setup()
{
pinMode(IN1,OUTPUT);
pinMode(IN2,OUTPUT);
}
void loop()
{
digitalWrite(IN1,HIGH); //5 Volts a IN1
digitalWrite(IN2,LOW); //0 volts a IN2
}
4
Programa 13 B
5
Programa 13B
void setup()
{
pinMode(IN1,OUTPUT);
pinMode(IN2,OUTPUT);
pinMode(IN3,OUTPUT);
pinMode(IN4,OUTPUT);
}
void loop()
{
digitalWrite(IN1,HIGH);
digitalWrite(IN2,LOW);
//Acciona el motor conectado a los pines 5 y 6
digitalWrite(IN4,HIGH);
digitalWrite(IN3,LOW);
//Acciona el motor conectado a los pines 9 y 10
} 6
Programa 13 C
7
Programa 13C
void setup()
{
pinMode(motorPin,OUTPUT);
}
void loop()
{
potValue=analogRead(potPin)/4; //Se manda el valor de A0 a la variable potValue
analogWrite(motorPin,potValue); //Se manda el valor anterior (potenciomentro en A0) al motor (pwm 9)
}
8
Programa 14 A, B
9
Programa 14 A, B
10
Programa 14 A, B
11
Programa 14 A, B
12
/*Programa 14A
#include <LiquidCrystal.h>
void setup()
{
lcd.begin(16,2);
lcd.print("ola k ases");
}
void loop()
{
lcd.setCursor(0,1);
lcd.print(millis()/1000);
}
13
/*Programa 14B
#include <LiquidCrystal.h>
LiquidCrystal lcd(6,7,8,9,10,11,12);
void setup()
{
lcd.begin(16,2);
lcd.print("ola k ases Programando Arduino ??????");
}
void loop()
{
lcd.setCursor(0,1);
14
for(int posContador=0; posContador<36; posContador++)
{
lcd.scrollDisplayRight(); //Desplazar la pantalla a la derecha
delay(300);
}
15
Programa 15 A,B
Sensor de temperatura LM35
16
Programa 15 A, B
17
/*Programa 15A
float valor=0;
int grados=0;
int temp=A0;
void setup()
{
Serial.begin(9600);
pinMode(temp,INPUT);
}
void loop()
{
valor=analogRead(temp);
grados=valor*0.48828125; //resultado de 5*100/1024
Serial.print("Temperatura= ");
Serial.print(grados);
Serial.print("grados ");
Serial.println();
delay(60000); //esperamos un minuto para actualizar la temperatura
}
18
/*Programa 15B
#include <LiquidCrystal.h>
LiquidCrystal lcd(6,7,8,9,10,11,12);
float valor=0;
float grados=0;
int temp=A0;
void setup()
{
Serial.begin(9600);
pinMode(temp,INPUT);
lcd.begin(16,2);
}
19
void loop()
{
valor=analogRead(temp);
grados=valor*0.48828125; //resultado de 5*100/1024
lcd.setCursor(0,0);
lcd.write("Temperatura: ");
lcd.setCursor(0,1);
lcd.print(grados);
lcd.setCursor(6,1);
lcd.write("Grados");
Serial.print("Grados= "); //También por el monitor serial
Serial.print(grados);
Serial.println();
delay(60000);
}
20
Programa 16, 17
21
Programa 16
22
//Programa 16 de teclado 4x3.
/*Programa 16 A
* Programa de teclado 4x3 mostrada
* en terminal serie
*/
//creamos una constante para definir que nuestro teclado tiene 4 filas
const byte ROWS=4;
//creamos una constante para definir que nuestro teclado tiene 3 columnas
const byte COLS=3;
void loop()
{
//Cuando se pulse una tecla se guardará en una variable llamada key
char key=keypad.getKey();
24
25
Programa 17
7 (1)
1 (7)
26
/*Programa 17
//creamos una constante para definir que nuestro teclado tiene 4 filas
const byte ROWS=4;
//creamos una constante para definir que nuestro teclado tiene 3 columnas
const byte COLS=3;
void setup()
{
lcd.begin(16,2);
pinMode(A0,OUTPUT);
cerrado();
borrar();
inicio();
}
void loop()
{
while(cont<4)
{
28
char key=keypad.getKey();
i[j]=key;
if(key)
{
lcd.setCursor(0,0);
lcd.print("*"); //Aparecen * de los números tecleados
j=j+1;
cont=cont+1;
}
}
//Clave autorizada
if(i[0]=='1'&&i[1]=='2'&&i[2]=='1'&&i[3]=='2')
{
borrar(); //*****
lcd.setCursor(0,0);
lcd.write("CLAVE ACEPTADA");
analogWrite(A0,255);
delay(100); //*****
borrar();
lcd.setCursor(0,0);
lcd.write("Saludos");
lcd.setCursor(0,1);
lcd.write("Usuario1");
i[0]=0;
i[1]=0;
i[2]=0;
i[3]=0;
delay(4000);
borrar();
inicio();
analogWrite(A0,0);
}
29
else
{
if(i[0]=='2'&&i[1]=='3'&&i[2]=='2'&&i[3]=='3')
{
borrar(); //*****
lcd.setCursor(0,0);
lcd.write("CLAVE ACEPTADA");
analogWrite(A0,255);
delay(100); //*****
borrar();
lcd.setCursor(0,0);
lcd.write("Saludos");
lcd.setCursor(0,1);
lcd.write("Usuario2");
i[0]=0;
i[1]=0;
i[2]=0;
i[3]=0;
delay(4000);
borrar();
inicio();
analogWrite(A0,0);
}
30
else
{
borrar(); //*****
lcd.setCursor(0,0);
lcd.write("CLAVE INCORRECTA");
borrar();
lcd.setCursor(0,0);
lcd.write("ACCESO");
lcd.setCursor(0,1);
lcd.write("DENEGADO");
i[0]=0;
i[1]=0;
i[2]=0;
i[3]=0;
delay(3000);
borrar();
cerrado();
delay(3000);
borrar();
inicio();
}
cont=0;
}
}
31
//Funciones
void borrar()
{
lcd.setCursor(0,0);
lcd.write(" ");
lcd.setCursor(0,1);
lcd.write(" ");
}
void inicio()
{
lcd.setCursor(0,0);
lcd.write("ENTRAR");
lcd.setCursor(0,1);
lcd.write("CLAVE");
}
void cerrado()
{
lcd.setCursor(0,0);
lcd.write("ACCESO");
lcd.setCursor(0,1);
lcd.write("CERRADO");
}
32
Programa 18
33
Programa 18
34
Programa 18
35
//Programa 18
void setup()
{
pinMode(switchPin,INPUT); //SwitchPin es una entrada
digitalWrite(switchPin,HIGH); //Activar la resistencia Pull-up interna
pinMode(LED1,OUTPUT);
Serial.begin(9600);
}
void loop()
{
37
Programa 19
38
Programa 19
39
//Programa 19
//Activa un Relé
int pinOut=10;
void setup()
{
pinMode(pinOut,OUTPUT);
}
void loop()
{
digitalWrite(pinOut,HIGH);
delay(1000);
digitalWrite(pinOut,LOW);
delay(1000);
}
40