lab3 arduino
Post on 03-Jan-2016
26 Views
Preview:
TRANSCRIPT
Universidad Nacional de Ingeniería Facultad de Ciencias
Arduino
Prof.: Lic. César Martín Cruz S. ccruz@uni.edu.pe
Verano 2013
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
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
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
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
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
top related