Programacion de arduino(JHANCARLOS RAMOS COTRINA)

84
INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” PROGRAMAS Y CLASES DE SISTEMAS MICROCONTROLADOS CON ARDUINO KEYPAD O TECLADO 4X4 #include <Keypad.h> const byte filas = 4 ; // tengo 4 filas const byte columnas = 4; // tengo 4 columnas char keys[filas][columnas]={ {'1','2','3','A'}, {'4','5','6','B'}, {'7','8','9','C'}, {'*','0','#','D'} }; byte pinfila[filas]={9,8,7,6}; byte pincolumnas[columnas]={5,4,3,2} ; Keypad keypad = Keypad(makeKeymap(keys), pinfila ,pincolumnas,filas,columnas); void setup() { Serial.begin(9600); } void loop() { char tecla = keypad.getKey(); if(tecla!= NO_KEY){ Name : jhancarlos ramos cotrina Estudiante: de electrónica industrial Página 1

Transcript of Programacion de arduino(JHANCARLOS RAMOS COTRINA)

Page 1: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

PROGRAMAS Y CLASES DE SISTEMAS MICROCONTROLADOS

CON ARDUINO

KEYPAD O TECLADO 4X4

#include <Keypad.h>

const byte filas = 4 ; // tengo 4 filas

const byte columnas = 4; // tengo 4 columnas

char keys[filas][columnas]={

{'1','2','3','A'},

{'4','5','6','B'},

{'7','8','9','C'},

{'*','0','#','D'}

};

byte pinfila[filas]={9,8,7,6};

byte pincolumnas[columnas]={5,4,3,2} ;

Keypad keypad = Keypad(makeKeymap(keys), pinfila ,pincolumnas,filas,columnas);

void setup() {

Serial.begin(9600);

}

void loop() {

char tecla = keypad.getKey();

if(tecla!= NO_KEY){

Serial.println(tecla);

}

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 1

Page 2: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”PARA ENCONTRAR UNA RAÍZ CUADRADA

/*#include <Math.h>

#include <stdio.h>

*/

int a;

int b;

int c;

float x1, x2;

void setup() {

Serial.begin(9600);

}

void loop() {

a=1;

b=-8;

c=16;

x1=( -b+sqrt (b*b -4*a*c))/(2*a);

x2=( -b-sqrt(b*b -4*a*c))/ (2*a);

Serial.print("LA PRIMERA RAIZ ES = ");

Serial.print(x1);

Serial.print("LA SEGUNDA RAIZ ES = ");

Serial.print(x2);

delay (15000);

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 2

Page 3: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

PARA ALLAR UNA O MAS FUNCIONES ARITMETICAS

/*#include <Math.h>

#include <stdio.h>

*/

float x1,x2;

void setup() {

Serial.begin(9600);

}

void loop() {

Raiz_Ecuacion(1,11,28);

Raiz_Ecuacion(2,-7,-15);

Raiz_Ecuacion(3,-7,-6);

delay(15000);

}

float Raiz_Ecuacion(float a, float b, float c){

x1=( -b+sqrt (b*b -4*a*c))/(2*a);

x2=( -b-sqrt(b*b -4*a*c))/ (2*a);

Serial.print("LA PRIMERA RAIZ ES = ");

Serial.print(x1);

Serial.print("LA SEGUNDA RAIZ ES = ");

Serial.print(x2);

delay (15000);

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 3

Page 4: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

MULTÍMETRO PARA MEDIR

void setup() {

Serial.begin(9600);

}

void loop() {

int resol =analogRead (0);

float vol = float(resol)*5.0/1023.0;

Serial.print("el voltaje es ");

Serial.println(vol,3);

delay(1900);

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 4

Page 5: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

COMO CALCULAR UN TRIANGULO

int a,b,c;

void setup() {

Serial.begin(9600);

}

void loop() {

area_triangulo(20,15,18);

area_triangulo(14,6,13);

area_triangulo(6,4,5);

delay(15000)

}

float area_del_triangulo(float a, float b, float c){

float p=(a+b+c)/(2);

float a2= (sqrt p*(p-a)*(p-b)*(p-c)));

Serial.print("EL PERIMETRO DEL TRIANGULO ES = ");

Serial.println(p);

Serial.print("EL AREA DEL TRIANGULO ES = ");

Serial.println(a2);

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 5

Page 6: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

PANTALLA LCD CONFIGURACION CON UN VALOR DE ENCENDIDO Y APAGADO.

#include <LiquidCrystal.h>

/*

* RS => pin12

* E => pin11

* D4 => pin5

* D5 => pin4

* D6 => pin3

* D7 => pin2

*/

LiquidCrystal lcd(12,11,5,4,3,2);

void setup() {

lcd.begin(2,2);

lcd.clear();

}

void loop() {

lcd.setCursor(0,2);

lcd.print("JHANCARLOS");

delay(1000);

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 6

Page 7: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

PANTALLA LCD QUE RECORRA UNA PALABRA

#include <LiquidCrystal.h>

/*

* RS => pin12

* E => pin11

* D4 => pin5

* D5 => pin4

* D6 => pin3

* D7 => pin2

*/

LiquidCrystal lcd(12,11,5,4,3,2);

void setup() {

lcd.begin(16,2);

lcd.clear();

}

void loop() {

int P =0;

for(P=0; P<16; P++){

lcd.setCursor(P,0);

lcd.print("JHANCARLOS");

delay(1000);

lcd.clear();

}

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 7

Page 8: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

LCD EL MISMO VALOR PERO SE INACIALIZA EL MISMO VALOR

#include <LiquidCrystal.h>

/*

*RS= pin 13

*E = pin 12

*D4 = pin 5

*D5 = pin 4

*D6 = pin 3

*D7 = pin 2

*/

LiquidCrystal lcd(13,12,5,4,3,2);

void setup() {

lcd.begin(16,2);

lcd.clear();

}

void loop() {

int k;

for(k =0; k<=4; k++){

lcd.setCursor(k,0);

lcd.print("JHANCARLOS ");

delay(1000);

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 8

Page 9: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” lcd.clear();

}

int p;

for(p =4; p>=0; p--){

lcd.setCursor(p,0);

lcd.print("JHANCARLOS ");

delay(1000);

}

int A;

for(A =0; A<=4; A++){

lcd.setCursor(A,1);

lcd.print("JHANCARLOS ");

delay(1000);

lcd.clear();

}

int B;

for(B =4; B>=0; B--){

lcd.setCursor(B,1);

lcd.print("JHANCARLOS ");

delay(1000);

}

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 9

Page 10: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

LCD MIS DATOS PERSONALES EN RRECORRIDO

#include <LiquidCrystal.h>

/*

* RS => pin12

* E => pin11

* D4 => pin5

* D5 => pin4

* D6 => pin3

* D7 => pin2

*/

LiquidCrystal lcd(12,11,5,4,3,2);

void setup() {

lcd.begin(16,2);

}

void loop() {

int B = 0;

for(B=0; B<16; B++){

lcd.setCursor(B,0);

lcd.print(" HOLA MUNDO");

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 10

Page 11: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” delay(1000);

lcd.clear();

}

int R = 0;

for(R=0; R<16; R++){

lcd.setCursor(R,0);

lcd.print(" MI NOMBRE ES");

delay(1000);

lcd.clear();

}

int P =0;

for(P=0; P<16; P++){

lcd.setCursor(P,0);

lcd.print(" JHANCARLOS");

delay(1000);

lcd.clear();

}

int E = 0;

for(E=0; E<16; E++){

lcd.setCursor(E,0);

lcd.print("RAMOS COTRINA");

delay(1000);

lcd.clear();

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 11

Page 12: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”}

int D = 0;

for(D=0; D<16; D++){

lcd.setCursor(D,0);

lcd.print("BECARIO EN BECA 18");

delay(1000);

lcd.clear();

}

int F = 0;

for(F=0; F<16; F++){

lcd.setCursor(F,0);

lcd.print("ESTUDIANTE DE IDAT");

delay(1000);

lcd.clear();

}

int G= 0;

for(G=0; G<16; G++){

lcd.setCursor(G,0);

lcd.print("ELECTRONICA INDUSTRIAL");

delay(1000);

lcd.clear();

}

int H= 0;

for(H=0; H<16; H++){

lcd.setCursor(H,0);

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 12

Page 13: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” lcd.print("DIRECCION E IDENTIDAD");

delay(1000);

lcd.clear();

}

int I = 0;

for(I=0; I<16; I++){

lcd.setCursor(I,0);

lcd.print("CAJAMARCA-PERU");

delay(1000);

lcd.clear();

}

int J = 0;

for(J=0; J<16; J++){

lcd.setCursor(J,0);

lcd.print("CEL: 9699152572");

delay(1000);

lcd.clear();

}

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 13

Page 14: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

LCD PERO INICIALIZANDO LOS DOS REGLONES QUE RRECORE

#include <LiquidCrystal.h>

/*

* RS => pin12

* E => pin11

* D4 => pin5

* D5 => pin4

* D6 => pin3

* D7 => pin2

*/

LiquidCrystal lcd(12,11,5,4,3,2);

void setup() {

lcd.begin(16,2);

lcd.clear();

}

void loop() {

int P =0;

for(P=16; P>0; P--){

lcd.setCursor(P,0);

lcd.print(" JHANCARLOS");

lcd.setCursor(P,1);

lcd.print("RAMOS COTRINA");

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 14

Page 15: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

delay(1000);

lcd.clear();

}

int D =0;

for(D=0; D<16; D++){

lcd.setCursor(D,0);

lcd.print(" JHANCARLOS");

lcd.setCursor(D,1);

lcd.print("RAMOS COTRINA");

delay(1000);

lcd.clear();

}

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 15

Page 16: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”INICIALIZANDO LOS DOS LINEAS DEL LCD Y NO RRECORE

#include <LiquidCrystal.h>

LiquidCrystal lcd(12,11,5,4,3,2);

void setup() {

Serial.begin(9600);

lcd.begin(16,2);

}

void loop() {

lcd.setCursor(0,0);

lcd.print(" JHANCARLOS");

lcd.setCursor(0,1);

lcd.print(" RAMOS COTRINA");

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 16

Page 17: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”PANTALLA LCD QUE CAMBIA SOLA Y BIBRA

#include <LiquidCrystal.h>

LiquidCrystal lcd(12,11,5,4,3,2);

void setup() {

Serial.begin(9600);

lcd.begin(16,2);

}

void loop() {

lcd.print(" LCD TUTORIAL");

delay(3000);

lcd.setCursor(0,1);

lcd.print(" RAMOS COTRINA");

delay(4000);

lcd.clear();

delay(1500);

lcd.blink ();

delay(3000);

lcd.noBlink();

lcd.print(" VISITA MI CANAL");

delay(3000);

lcd.clear();

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 17

Page 18: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

lcd.print("WWW.YOUTUBE.COM");

lcd.setCursor(0,1);

lcd.print("/USER/TECNOLOGIA");

delay(5000);

lcd.clear();

lcd.print(" GRACIAS");

lcd.setCursor(0,1);

lcd.print(" MIS AMIGOS");

delay (5000);

lcd.clear();

delay(2000);

}

Teclado arduino mas lcd

#include <LiquidCrystal.h> //incluimos la libreria de la LCD

#include <Keypad.h> //Incluimos la librería del teclado

const byte filas = 4; //poque nuestro teclado tiene 4 filas

const byte columnas = 4;//poque nuestro teclado tiene 4 columnas

char teclado[filas][columnas]={ //creamos la matriz teclado tal como es nuestro teclado

{'1', '2', '3', 'A'},

{'4', '5', '6', 'B'},

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 18

Page 19: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” {'7', '8', '9', 'C'},

{'*', '0', '#', 'D'},

};

byte pinFilas[filas]={7,6,5,4}; //en estos pines de nuestro arduino irán conectados las filas de nuestro teclado

byte pinColumnas[columnas] = {3,2,A5,A4}; //en estos pines de nuestro arduino irán conectados las columnas de nuestro teclado

Keypad keypad=Keypad(makeKeymap(teclado),pinFilas,pinColumnas,filas,columnas); // creamos el objeto keypad

LiquidCrystal lcd(13,12,11,10,9,8); //Creamos el objeto lcd y en parentecisis van los pines de nuestro arduino

int a, b, suma; //Creamos la variable a y b donde se almacenarán las teclas pulsadas y la variable suma = a+b

int var=0; //Creamos var para eleguir los casos y almacenar los valores en a o b

void setup() {

lcd.begin(16,2);//Inicializamos nuestra LCD de 16x02

lcd.clear(); //Limpiamos nuestra LCD

lcd.setCursor(0,0); //Ubicamos el cursor en la columna cero y fila cero

}

void loop() {

char tecla = keypad.getKey(); //Obtenemos la tecla pulsada y lo asignamos "tecla"

if(tecla != NO_KEY){

lcd.print(tecla); //Imprimimos la tecla pulsada

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 19

Page 20: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” var++; //var sumamos en uno cada vez q se pulsa una tecla

tecla = tecla - 48; //pasamos de char a int

switch(var){ //iniciamos el switch con variables var

case 1: //caso cuando var =1

a = tecla; //almacenamos el valor de tecla en la variable a

break;

case 2:

b = tecla;//almacenamos el valor de tecla en la variable b

break;

}

if(tecla == -13){ //Entramos al if cuando se pulsa la tecla "#"

suma = a+b; //asignamos la la suma de a y b a la variable "suma"

lcd.print(suma); //imprimimos el valor de suma

var = 0; //reinicio var

}

}

}

Para configurar arduino y comunicarse con modulo bluetooth

/************************* http://geekfactory.mx ******************************* * * Sketch de prueba para modulos de bluetooth HC-05 y HC-06. Este programa puede * controlar el led de la tarjeta arduino a través de la conexión bluetooth. El

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 20

Page 21: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” * programa puede ampliarse para controlar una mayor cantiad de salidas. * * ESTE SKETCH USA EL PUERTO SERIE (UART), MISMO QUE ES UTILIZADO PARA * LA COMUNICACIÓN USB. EL USO DE BLUETOOTH O USB ES MUTUAMENTE EXCLUSIVO * (NO SE PUEDEN USAR AMBOS AL MISMO TIEMPO). * * PARA USAR LA CONEXIÓN USB Y BLUETOOTH AL MISMO TIEMPO ES NECESARIO EMULAR UNA * UART POR SOFTWARE. * * El funcionamiento es sencillo: * * Enviar un caracter 'A' para encender el led * Enviar un caracter 'a' para apagar el led * */ char rxChar; // Variable para recibir datos del puerto serieint ledpin = 13; // Pin donde se encuentra conectado el led (pin 13) // Configurar el arduinovoid setup(){

// Pin 13 como salidapinMode(ledpin, OUTPUT);// Comunicación serie a 9600 baudiosSerial.begin(9600);

} // Ciclo infinito, programa principalvoid loop(){

// Si hay datos disponibles en el bufferif( Serial.available() ){

// Leer un byte y colocarlo en variablerxChar = Serial.read();

// Procesar comando de un solo byteif( rxChar == 'A' ){

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 21

Page 22: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”digitalWrite(ledpin, HIGH);Serial.println("ON");

}else if ( rxChar == 'a' ){

digitalWrite(ledpin, LOW);Serial.println("OFF");

}}

// Podemos hacer otras cosas aquídelay(100);

}

Programa para sensor de ultrasonido con arduino

#include <NewPing.h> /*Aqui se configuran los pines donde debemos conectar el sensor*/#define TRIGGER_PIN 12#define ECHO_PIN 11#define MAX_DISTANCE 200 /*Crear el objeto de la clase NewPing*/NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); void setup() { Serial.begin(9600);}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 22

Page 23: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” void loop() { // Esperar 1 segundo entre mediciones delay(1000); // Obtener medicion de tiempo de viaje del sonido y guardar en variable uS int uS = sonar.ping_median(); // Imprimir la distancia medida a la consola serial Serial.print("Distancia: "); // Calcular la distancia con base en una constante Serial.print(uS / US_ROUNDTRIP_CM); Serial.println("cm");}

Arduino con Fotoresistencia LDR

/* * http://www.geekfactory.mx * * Ejemplo de medidor de luz con Arduino utilizando una fotoresistencia LDR y * un grupo de leds para mostrar el resultado de las lecturas. Este sketch puede * servir como base para otros proyectos que requieren medicion de la intensidad * de luz con una fotoresistencia. * * Mas detalles y la conexion completa para este sketch en:

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 23

Page 24: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” * http://www.geekfactory.mx/tutoriales/tutoriales-arduino/tutorial-arduino-con-fotoresistencia-ldr/ * */ // Pin donde se conectan los ledsint pinLed1 = 2;int pinLed2 = 3;int pinLed3 = 4;// Pin analogico de entrada para el LDRint pinLDR = 0; // Variable donde se almacena el valor del LDRint valorLDR = 0; void setup(){ // Configuramos como salidas los pines donde se conectan los led pinMode(pinLed1, OUTPUT); pinMode(pinLed2, OUTPUT); pinMode(pinLed3, OUTPUT); // Configurar el puerto serial Serial.begin(9600);} void loop(){ // Apagar todos los leds siempre que se inicia el ciclo digitalWrite(pinLed1, LOW); digitalWrite(pinLed2, LOW); digitalWrite(pinLed3, LOW); // Guardamos el valor leido del ADC en una variable // El valor leido por el ADC (voltaje) aumenta de manera directamente proporcional // con respecto a la luz percibida por el LDR valorLDR= analogRead(pinLDR); // Devolver el valor leido a nuestro monitor serial en el IDE de Arduino Serial.println(valorLDR);

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 24

Page 25: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” // Encender los leds apropiados de acuerdo al valor de ADC if(valorLDR > 256) { digitalWrite(pinLed1, HIGH); } if(valorLDR > 512) { digitalWrite(pinLed2, HIGH); } if(valorLDR > 768) { digitalWrite(pinLed3, HIGH); } // Esperar unos milisegundos antes de actualizar delay(200);}

Controlar tu arduino desde la PC mediante comandos de texto

/**

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 25

Page 26: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” * GeekFactory - "Construye tu propia tecnologia" * Distribucion de materiales para el desarrollo e innovacion tecnologica * www.geekfactory.mx * * Ejemplo de libreria Shell. Este ejemplo permite controlar el color mostrado * en un led RGB conectado a los pines PWM mediante comandos de texto. El programa * admite 3 parametros de 0 a 255 que representan la intensidad de cada led (RGB). * * Example for Shell library. This example controls the color displayed on the RGB * led connected to PWM pins using text commands. The program accepts 3 parameters * in a range from 0 to 255 that represent the intensity of each led. */ #include <Shell.h> void setup(){ // Prepare serial communication Serial.begin(9600); // Wait after reset or power on... delay(1000); // Pins to connect RGB led (PWM outputs) pinMode(3,OUTPUT); pinMode(5,OUTPUT); pinMode(6,OUTPUT); // Initialize command line interface (CLI) // We pass the function pointers to the read and write functions that we implement below // We can also pass a char pointer to display a custom start message shell_init(shell_reader, shell_writer, 0); // Add commands to the shell shell_register(command_rgbled, "rgbled");} void loop(){ // This should always be called to process user input shell_task();

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 26

Page 27: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”} /** * This function implements the rgbled command and parses the required args * Type: rgbled 255 255 255 to set led to maximum brigtness * Type: rgbled 0 0 0 to set led to minimum brightess */int command_rgbled(int argc, char** argv){ // Variables that store parameter values uint8_t val_R, val_G, val_B; // Parse RGB values and write to PWM pins val_R = strtol(argv[1],NULL,0); analogWrite(3, val_R); val_G = strtol(argv[2],NULL,0); analogWrite(5, val_G); val_B = strtol(argv[3],NULL,0); analogWrite(6, val_B); // Print the received falues to the terminal screen shell_printf("#RGB-COMPONENTS:%d,%d,%d\r\n", val_R, val_G, val_B); // Return success code return SHELL_RET_SUCCESS;} /** * Function to read data from serial port * Functions to read from physical media should use this prototype: * int my_reader_function(char * data) */int shell_reader(char * data){ // Wrapper for Serial.read() method if (Serial.available()) { *data = Serial.read(); return 1; }

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 27

Page 28: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” return 0;} /** * Function to write data to serial port * Functions to write to physical media should use this prototype: * void my_writer_function(char data) */void shell_writer(char data){ // Wrapper for Serial.write() method Serial.write(data);}

Arduino cn potenciómetro

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 28

Page 29: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

const int analogPin = A0;int value; //variable que almacena la lectura analógica rawint position; //posicion del potenciometro en tanto por ciento void setup() {} void loop() {value = analogRead(analogPin); // realizar la lectura analógica rawposition = map(value, 0, 1023, 0, 100); // convertir a porcentaje //...hacer lo que se quiera, con el valor de posición medido delay(1000);}

Clave con contraseña

#include <LiquidCrystal.h>

#include <Key.h>#include <Keypad.h>const byte filas = 4;const byte columnas = 4;char teclado[filas][columnas]={ {'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'},

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 29

Page 30: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”};byte pinFilas[filas]={7,6,5,4};byte pinColumnas[columnas] = {3,2,A5,A4};Keypad keypad=Keypad(makeKeymap(teclado),pinFilas,pinColumnas,filas,columnas);LiquidCrystal lcd(13,12,11,10,9,8);int tecla;int a,b,c,d, suma;int c1=4,c2=6,c3=7,c4=3;int var=0;

void setup() {lcd.begin(16,2);lcd.clear();lcd.setCursor(0,0);

}void loop() { char tecla = keypad.getKey(); if(tecla != NO_KEY){ lcd.print(tecla); var++; tecla = tecla - 48; switch(var){ case 1: a = tecla; break; case 2: b = tecla; break; case 3: c = tecla; break; case 4: d = tecla; if (a==c1&&b==c2&&c==c3&&d==c4){ lcd.setCursor(0,0); lcd.print("clave coerrecta"); delay (5000); lcd.clear(); }

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 30

Page 31: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” else{ lcd.setCursor(0,0); lcd.print("clave incorrecta"); lcd.setCursor(0,1); lcd.print("intentalo denuevo"); delay(5000); var = 0; } } }}

Cambiar que los números aparezcan con asterisco.

#include <LiquidCrystal.h>

#include <Key.h>#include <Keypad.h>const byte filas = 4;const byte columnas = 4;char teclado[filas][columnas]={ {'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'}, };byte pinFilas[filas]={7,6,5,4};byte pinColumnas[columnas] = {3,2,A5,A4};Keypad keypad=Keypad(makeKeymap(teclado),pinFilas,pinColumnas,filas,columnas);LiquidCrystal lcd(13,12,11,10,9,8);int tecla;int a,b,c,d, suma;int c1=4,c2=6,c3=7,c4=3;int var=0;

void setup() {

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 31

Page 32: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”lcd.begin(16,2);lcd.clear();lcd.setCursor(5,1);

}void loop() { char tecla = keypad.getKey(); if(tecla != NO_KEY){ lcd.print("*"); var++; tecla = tecla - 48; switch(var){ case 1: a = tecla; break; case 2: b = tecla; break; case 3: c = tecla; break; case 4: d = tecla; if (a==c1&&b==c2&&c==c3&&d==c4){

lcd.setCursor(0,0); lcd.print("detectando clave"); delay (5000); lcd.clear(); lcd.setCursor(0,0); lcd.print(" clave correcta"); delay (5000); lcd.setCursor(0,1); lcd.print("puerta abierta"); delay (5000); lcd.clear(); }

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 32

Page 33: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” else{ lcd.setCursor(0,0); lcd.print("detectando clave"); delay (5000); lcd.clear(); lcd.setCursor(0,0); lcd.print("clave incorrecta"); lcd.setCursor(0,1); lcd.print("intentalo denuevo"); delay(5000); var = 0; } } }}

Comunicación sereal de un led

void setup() { Serial.begin(9600); pinMode(12,OUTPUT);

}

void loop() { int a; if(Serial.available()>0){ a=Serial.read(); }

if(a== 'n'){ x1: digitalWrite(12,HIGH); delay(50);Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 33

Page 34: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” digitalWrite(12,LOW); delay(50); goto x1; }if(a == 'r'){ x2: digitalWrite(12,LOW); goto x2;}}

Suma resta multiplica

#include <LiquidCrystal.h>

#include <Keypad.h>

/*

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 34

Page 35: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” * alumno de idat

* codigo A1515368

* monbre: jhancarlos

* apellido: ramos cotrina

* seccion: 20402_BE

*/

const byte filas = 4; //tengo 4 filas

const byte columnas = 4; // tengo 4 columnas

char keys[filas][columnas] = { // declaramos todas las filaas ylas columnas del keypad

{'1', '2', '3', 'A'},

{'4', '5', '6', 'B'},

{'7', '8', '9', 'C'},

{'*', '0', '#', 'D'},

};

byte pinFilas[filas] = {7,6,5,4}; // declaramos las filas y salidas del arduino y entre las del lcd para su funcionamiento

byte pinColumnas[columnas] = {3,2,A5,A4}; // decaramos las columnas del keypad en el arduino

Keypad keypad = Keypad(makeKeymap(keys),pinFilas,pinColumnas,filas,columnas);

LiquidCrystal lcd(13,12,11,10,9,8); //Creamos el objeto lcd y en parentecisis

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 35

Page 36: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”int a, b,c , suma, resta, multiplicacion; //Creamos la variable a y b donde se amacenaran las teclas cunado tenga que sumar, restar, multiplicar

int var = 0; //Creamos var para elegir los casos y almacenaran los valores en

void setup(){

lcd.begin(16,2); // declaramos todas las filas y columnas del lcd para inicializarse

lcd.clear(); // borramos o limpiamos la pantalla lcd

lcd.setCursor(0,0); // declaramos las direcciones de nuestro lcd

}

void loop(){

char tecla = keypad.getKey();

if(tecla != NO_KEY){

{

lcd.print(tecla);

tecla = tecla - 48;

var++;

switch(var)

{

case 1: // indicamos el caso 1

a = tecla; // almacena los datos en la tecla a

break;// rompe el caso para saltar a la siguiente funcion

case 2: // declaramos el caso dos

b = tecla;// almacena los datos en el la tecla b

break; // rompe el caso para saltar a la siguiente funcion

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 36

Page 37: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” if(tecla == 17)

{

suma = a+b; // suma los resultados de a y b

lcd.print(suma); // muestra en la pantalla la suma

var = 0;

}

if(tecla == 18)

{

resta = a-b; // resta los resultados de a y b

lcd.print(resta); // muestra los resultados de la suma el la pantalla lcd

var = 0;

}

if(tecla == 19)

{

multiplicacion = a*b; // multiplica los resultados de a y b

lcd.print(multiplicacion); // muestra en la pantalla los resultados de la multiplicacion

var = 0;

}

}

}

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 37

Page 38: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

Con arduino y bluetooth

#include<SoftwareSerial.h>

SoftwareSerial BT (2,3);//PIN2 RECSPCION Y PIN3 TRANSMICION

char nombre [8] = "JHAN";

char pin[5]="1234";

char vel='4';

void setup() {

BT .begin(38400);

pinMode(13,OUTPUT);

pinMode(12,OUTPUT);

/****************/

digitalWrite (13,HIGH);

delay(1000);

digitalWrite (13,LOW);

/***************/

digitalWrite (12,HIGH);

delay(2000);

BT.print("AT\r\n" );

BT.print("AT+NAME" );

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 38

Page 39: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” BT.print(nombre);

BT.print("\r\t");

BT.print("AT+PSWD:" );

BT.print(pin);

BT.print("\r\t");

BT.print("AT+BAUD:" );

BT.print(vel);

BT.print("\r\t");

}

void loop() {

digitalWrite(13,HIGH);

delay(300);

digitalWrite(13,LOW);

delay(300);

}

Programas de arduino con EL PROFE. Pinedo

Contador up con led pines 5,4,3,2

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 39

Page 40: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

int valor;

byte pin;

void setup() {

for(pin=2;pin<6;pin++){

pinMode(pin,OUTPUT);

}

}

void loop() {

for(valor=0;valor<10;valor++){

for(pin=2;pin<6;pin++){

digitalWrite(pin,bitRead(valor,pin-2));

}

delay(1000);

}

}

CONTADOR UP DOW

int valor;

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 40

Page 41: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”byte pin;

void setup() {

for(pin=2;pin<6;pin++){

pinMode(pin,OUTPUT);

}

}

void loop() {

for(valor=0;valor<10;valor++){

for(pin=2;pin<6;pin++){

digitalWrite(pin,bitRead(valor,pin-2));

}

delay(1500);

}

for(valor=10;valor>=0;valor--){

for(pin=2;pin<6;pin++){

digitalWrite(pin,bitRead(valor,pin-2));

}

delay(1500);

}

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 41

Page 42: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

JUEGO DE LUCES CON ARDUINO

int luz[]={1,2,4,8,10};

byte pin,a;

void setup() {

for(pin=2;pin<9;pin++){

pinMode(pin,OUTPUT);

}

}

void loop(){

for(a=0;a<7;a++)

{

for(pin=2;pin<9;pin++)

{

digitalWrite(pin,bitRead(luz[a],pin-2));

}

delay(60);

}

}

TRASMICION DE BLUETOOTH CON UN VALOR

#include<SoftwareSerial.h>

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 42

Page 43: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”SoftwareSerial BT(2,3);// rx, tx

int a;

void setup() {

BT. begin(9600);

}

void loop() {

if(BT.available() > 0){

a=BT.read();

}

BT.print(a);

BT.print("HOLA");

}

SIMILAR A LA TERCERA PRUEBA

#include <Key.h>

#include <Keypad.h> // traer sensor de ultrasonido, DHT11,PIR

#include <LiquidCrystal.h>

LiquidCrystal lcd(13,12,11,10,9,8); //(RS,E,D4,D5,D6,D7)

const byte filas = 4;

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 43

Page 44: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”const byte col = 4;// const fila siempre sera 4

char teclado[filas][col] = {

{'1','2','3','A'},

{'4','5','6','B'},

{'7','8','9','C'},

{'*','0','#','D'},

};

byte pinFila[filas]= {7,6,5,4};

byte pinColumna[col]= {3,2,A7,A6};

Keypad keypad = Keypad(makeKeymap(teclado),pinFila,pinColumna,filas,col);// testea que tecla se pulsa

char tecla;

int var = 0;

int a, b, c, d, suma;

void setup() {

lcd.begin(16,2);

lcd.clear();

lcd.setCursor(0,0);

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 44

Page 45: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”void loop() {

tecla = keypad.getKey();

if(tecla != NO_KEY){

lcd.print(tecla);

tecla = tecla -48;// esto para que me aparesca numeros enteros y no #s char

var++;

switch(var){

case 1:

a = tecla;// if(var == 1)se puede hacer, pero es mas complejo

break;

case 2:

b = tecla;

break;

case 3:

c = tecla;

break;

case 4:

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 45

Page 46: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” d = tecla;

break;

}

if (tecla == -13){// el valor de '*' en char, le restamos 48

suma = a+b+c+d;

lcd.print(suma);

var = 0;

}

}

if(a==1 && b==2 && c==3 && d==4){//1234 seria la conytraseña

//codigo

}

}

Programar un led con bluetoothun led al 12 del arduino tx del blueto con el arduino num,ero 2 rx y rx del blueto con tx del arduino numero 3 del arduino

#include<SoftwareSerial.h>

SoftwareSerial BT(2,3);// rx, tx

int a;

void setup() {

BT. begin(9600);

pinMode(12,OUTPUT);

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 46

Page 47: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”}

void loop() {

int a;

if(BT.available() > 0){

a=BT.read();

}

if(a=='3'){

digitalWrite(12,HIGH);

}

if(a=='4'){

digitalWrite(12,LOW);

}

}

PROGRAMAR EL POTENCIÓMETRO CON A0 DEL ARDUINO TX DEL BLUETO CON EL ARDUINO. NUMERO 2 RX Y RX DEL BLUETO CON TX DEL ARDUINO NUMERO 3 DEL ARDUINO

#include<SoftwareSerial.h>

SoftwareSerial BT(2,3);// rx, tx

void setup() {

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 47

Page 48: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” BT. begin(9600);

}

void loop() {

int a;

a=analogRead(A0);

BT.println(a);

}

PARA EL SENSOR PIR

int a=0;

void setup() {

pinMode(12,INPUT);//DECLARAMOS EL PIN DEL SENSOR

pinMode(8,OUTPUT);//DECLARAMOS EL PIN 8 PARA EL LED

}

void loop() {

a=digitalRead(12);//LEO EL PIN DEL SENSOR

if(a==1){//si a tiene el valor de uno

digitalWrite(8,HIGH);Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 48

Page 49: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

}

else{ // sino

digitalWrite(8,LOW);

}

Para el examen

#include <SoftwareSerial.h>

SoftwareSerial BT(2,3);//(RX,TX)

int a=0;

int b=0;

int c=0;

int d=0;

int suma=0;

int tecla;

int c1=4,c2=6,c3=8,c4=9;

void setup() {

BT.begin(9600);

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 49

Page 50: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”void loop() {

if(BT.available()>0){

tecla= BT.read () -48;

suma ++;

switch(suma){

case 1:

a=tecla;

break ;

case 2:

b=tecla;

break ;

case 3:

c=tecla;

break ;

case 4:

d=tecla;

break ;

}

if(a == c1 &&b==c2&&c==c==c3&&d==c4){

BT.write("comprobando contraseña");

suma=0;

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 50

Page 51: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” else {

BT.write("contraseña incorrecta");

suma=0;

}

}

}

CON SENSOR ULTRASONIDO

const int trig = 9;

const int echo = 8;

float distancia, tiempo;

#include <LiquidCrystal.h>

/*

* RS => pin12

* E => pin11

* D4 => pin5

* D5 => pin4

* D6 => pin3

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 51

Page 52: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” * D7 => pin2

*/

LiquidCrystal lcd(12,11,5,4,3,2);

void setup() {

lcd.begin(16,2);

lcd.clear();

Serial.begin (9600);

pinMode(trig,OUTPUT);

pinMode (echo, INPUT);

}

void loop() {

lcd.setCursor(0,1);

digitalWrite (trig,LOW);

delayMicroseconds(5);

lcd.print("OFF");

delay(1000);

lcd.clear();Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 52

Page 53: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

lcd.setCursor(0,2);

digitalWrite (trig,HIGH);

delayMicroseconds(10);

lcd.print("ON");

delay(1000);

lcd.clear();

lcd.setCursor(0,1);

digitalWrite (trig,LOW);

lcd.print("OFF");

delay(1000);

lcd.clear();

lcd.setCursor(0,2);

tiempo = pulseIn(echo,HIGH);

lcd.print("ON");

delay(1000);

lcd.clear();

distancia = 0.017*tiempo;

lcd.setCursor(0,1);

lcd.print("distancia = ");

Serial.println(distancia );

lcd.print("DISTANCIA");

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 53

Page 54: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” delay(1000);

lcd.clear();

}

Arduino con reley

void setup() {

pinMode(8,OUTPUT);

}

void loop() {

digitalWrite(8,HIGH);

delay(2000);

digitalWrite(8,LOW);

delay(2000);

}

Arduino mas reley con comandos bluetooth

#include <SoftwareSerial.h>

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 54

Page 55: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”SoftwareSerial BT(2,3);// RX , TX

int jhancarlos;

void setup() {

BT.begin(9600);

pinMode(8,OUTPUT);

}

void loop() {

if(BT.available()>0){

jhancarlos = BT.read();

}

if(jhancarlos == '3'){

digitalWrite(8,HIGH);

}

if(jhancarlos == '4'){

digitalWrite(8,LOW);

}

}

CON EL SENSOR DHT 11 Y LCD

#include <DHT.h>

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 55

Page 56: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”#define DHTpin 8

#define DHTtype DHT11

#include <LiquidCrystal.h> //incluimos la libreria de la LCD

LiquidCrystal lcd(12,11,5,4,3,2);

DHT dht11(DHTpin,DHTtype);

void setup() {

Serial.begin(9600);

dht11.begin();

lcd.begin(16,2);

}

void loop() {

float Temp, Humed;

Temp = dht11.readTemperature();

Humed = dht11.readHumidity();

lcd.setCursor(0,0);

lcd.print("TEMPERATURA=");

lcd.print(Temp);

lcd.println("°c");

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 56

Page 57: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” lcd.setCursor(0,1);

lcd.print("HUMEDAD=");

lcd.print(Humed);

lcd.println("%");

}

PRACTICA SIMILAR PARA EL EXAMEN

#include <DHT.h>

#define DHTpin 4

#define DHTtype DHT11

#include <LiquidCrystal.h> //incluimos la libreria de la LCD

LiquidCrystal lcd(13,12,11,10,9,8);// declaramos los pines del lcd

DHT dht11(DHTpin,DHTtype);// definim0s el tipo de sendor dht 11

void setup() {

Serial.begin(9600);

dht11.begin();

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 57

Page 58: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” lcd.begin(16,2);

}

void loop() {

float Temp, Humed;

Temp = dht11.readTemperature();

if (Temp>=25 && Temp<=30){

lcd.setCursor(0,0);

lcd.print("TEMP=");

lcd.print(Temp);

lcd.print("°c");

lcd.setCursor(0,1);

lcd.print("HUME=");

lcd.print(Humed);

lcd.print("%");

}

else{

lcd.setCursor(0,0);

lcd.print("fuera de ramgo");

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 58

Page 59: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

}

}

CON SENSOR DE ULTRASONIC

const int trig = 2;

const int echo = 3;

float distancia, tiempo;

void setup() {

Serial.begin (9600);

pinMode(trig,OUTPUT);

pinMode(echo,INPUT);

pinMode(5,OUTPUT);

pinMode(6,OUTPUT);

pinMode(7,OUTPUT);

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 59

Page 60: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

void loop() {

pinMode(5,OUTPUT);

digitalWrite (trig,LOW);

delayMicroseconds(5);

Serial.print("OFF");

delay(1000);

pinMode(6,OUTPUT);

digitalWrite (trig,HIGH);

delayMicroseconds(10);

Serial.print("OFF");

delay(1000);

pinMode(7,OUTPUT);

digitalWrite (trig,LOW);

Serial.print("OFF");

delay(1000);

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 60

Page 61: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” tiempo = pulseIn(echo,HIGH);

Serial.print("ON");

delay(1000);

distancia = 0.017*tiempo;

Serial.print("dis= ");

Serial.println(distancia );

Serial.print("DISTANCIA");

delay(1000);

}

PRENDIDO DE FOCOS CON BLUETO MAS RELAY Y ARDUINO

#include <SoftwareSerial.h>

SoftwareSerial BT(2,3);// RX , TX

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 61

Page 62: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”int saul21;

int saul22;

int saul23;

int saul24;

void setup() {

BT.begin(9600);

pinMode(13,OUTPUT);

pinMode(12,OUTPUT);

pinMode(11,OUTPUT);

pinMode(10,OUTPUT);

}

void loop() {

if(BT.available()>0){

saul21 = BT.read();

}

if(saul21 == '1'){

digitalWrite(13,HIGH);

}

if(saul21 == '2'){

digitalWrite(13,LOW);

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 62

Page 63: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” if(BT.available()>0){

saul22 = BT.read();

}

if(saul22 == '3'){

digitalWrite(12,HIGH);

}

if(saul22 == '4'){

digitalWrite(12,LOW);

}

if(BT.available()>0){

saul23 = BT.read();

}

if(saul23 == '5'){

digitalWrite(11,HIGH);

}

if(saul23 == '6'){

digitalWrite(11,LOW);

}

if(BT.available()>0){

saul24 = BT.read();

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 63

Page 64: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” if(saul24 == '7'){

digitalWrite(10,HIGH);

}

if(saul24 == '8'){

digitalWrite(10,LOW);

}

}

Contrl de focos con bluetoh

#include <SoftwareSerial.h>

SoftwareSerial BT(2,3);// RX , TX

int jhan21;

int jhan22;

int jhan23;

int jhan24;

void setup() {

BT.begin(9600);

pinMode(13,OUTPUT);

pinMode(12,OUTPUT);

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 64

Page 65: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” pinMode(11,OUTPUT);

pinMode(10,OUTPUT);

}

void loop() {

if(BT.available()>0){

jhan21 = BT.read();

}

if(jhan21 == '1'){

digitalWrite(13,HIGH);

}

if(jhan21 == '2'){

digitalWrite(13,LOW);

}

if(BT.available()>0){

jhan22 = BT.read();

}

if(jhan22 == '3'){

digitalWrite(12,HIGH);

}

if(jhan22 == '4'){

digitalWrite(12,LOW);

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 65

Page 66: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT” }

if(BT.available()>0){

jhan23 = BT.read();

}

if(jhan23 == '5'){

digitalWrite(11,HIGH);

}

if(jhan23 == '6'){

digitalWrite(11,LOW);

}

if(BT.available()>0){

jhan24 = BT.read();

}

if(jhan24 == '7'){

digitalWrite(10,HIGH);

}

if(jhan24 == '8'){

digitalWrite(10,LOW);

}

}

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 66

Page 67: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 67

Page 68: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 68

Page 69: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 69

Page 70: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 70

Page 71: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 71

Page 72: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 72

Page 73: Programacion de arduino(JHANCARLOS RAMOS COTRINA)

INSTITUTO SUPERIOR TECNOLÓGICO PRIVADO “IDAT”

Name : jhancarlos ramos cotrina Estudiante: de electrónica industrialPágina 73