Lab3 Arduino

6
Universidad Nacional de Ingeniería Facultad de Ciencias Arduino Prof.: Lic. César Martín Cruz S. [email protected] Verano 2013

Transcript of Lab3 Arduino

Page 1: Lab3 Arduino

Universidad Nacional de Ingeniería Facultad de Ciencias

Arduino

Prof.: Lic. César Martín Cruz S. [email protected]

Verano 2013

Page 2: Lab3 Arduino

Contador digital de 0 a 9 Ingrese el siguiente programa:

// Definir los patrones de digito, de 0 - 9 // Display cátodo común // 1 = LED on, 0 = LED off: // Arduino pin: 2,3,4,5,6,7,8 const byte display[]={2,3,4,5,6,7,8,9}; const byte display7_digitos[10][7] = { { 1,1,1,1,1,1,0 }, // = 0 { 0,1,1,0,0,0,0 }, // = 1 { 1,1,0,1,1,0,1 }, // = 2 { 1,1,1,1,0,0,1 }, // = 3 { 0,1,1,0,0,1,1 }, // = 4 { 1,0,1,1,0,1,1 }, // = 5 { 1,0,1,1,1,1,1 }, // = 6 { 1,1,1,0,0,0,0 }, // = 7 { 1,1,1,1,1,1,1 }, // = 8 { 1,1,1,0,0,1,1 } // = 9 }; void setup() { for(int i=0;i<8;i++) pinMode(display[i], OUTPUT); digitalWrite(display[7], 0); // empezando con dot en off } void loop() { for (byte i = 0; i <10; i++) { delay(1000); display7Write(i); } delay(2000); } void display7Write(byte digito) { for (byte i = 0; i< 7; i++) digitalWrite(display[i], display7_digitos[digito][i]);

}

Lic. Martín Cruz Curso: “Arduino”

1

Page 3: Lab3 Arduino

1) Hacer la conexión de la placa “One Display Board” a la placa Arduino como

indica la figura. Cargue el programa.

Lic. Martín Cruz Curso: “Arduino”

2

Page 4: Lab3 Arduino

2) Modifique un programa para que cuente de 0 a F.

3) Modifique el programa para que se tenga un decrementador de 9 a 0.

4) Modifique el programa, para tener un incrementador y un decrementador.

5) Conecte un botón ahora a la conexión anterior. Utilice el pin 9 para conectar el

botón. Modifique el programa de tal manera que cada vez que presione el botón

se incremente la cuenta hasta 9 y de nuevo vuelva a 0 y continúe

indefinidamente.

Lic. Martín Cruz Curso: “Arduino”

3

Page 5: Lab3 Arduino

Control de velocidad de un motor

6) Ingrese el siguiente programa: int motorPin = 9; // define the pin the motor is connected to

// (if you use pin 9,10,11 or 3 you can also control speed)

void setup()

{

pinMode(motorPin, OUTPUT);

}

void loop() // run over and over again

{

motorAcceleration();

}

/*

* motorAcceleration() - accelerates the motor to full speed then

* back down to zero

*/

void motorAcceleration(){

int delayTime = 50; //milliseconds between each speed step

//Accelerates the motor

for(int i = 0; i < 256; i++){ //goes through each speed from 0 to 255

analogWrite(motorPin, i); //sets the new speed

delay(delayTime); // waits for delayTime milliseconds

}

//Decelerates the motor

for(int i = 255; i >= 0; i--){ //goes through each speed from 255 to 0

analogWrite(motorPin, i); //sets the new speed

delay(delayTime); // waits for delayTime milliseconds

}

}

Lic. Martín Cruz Curso: “Arduino”

4

Page 6: Lab3 Arduino

7) Realice un programa que hace uso de un motor y la consola serial de Arduino,

de tal manera que tenga la posiblidad de configurar al motor en 5 velocidades

distintas. Desde el teclado del PC puedes enviarle la velocidad deseada.

Las 5 velocidades se configuran con 5 PWM distintos.

Lic. Martín Cruz Curso: “Arduino”

5