lunes, 18 de agosto de 2014

Funciones básicas utilizadas en  Arduino


setup() 

 esta función es llamada cuando un sketch inicia, se usa para inicializar variables, pines, usar librerías, etc.. Solo se ejecuta una sola vez al encender o reiniciar el arduino

Ejemplo:

int buttonPin = 3;

void setup()
{
  Serial.begin(9600);
  pinMode(buttonPin, INPUT);
}

void loop()
{
  // ...
}

loop()

 Se ejecuta después de la función setup(), permite a nuestro programa responder o cambiar parámetros.

Ejemplo:

const int buttonPin = 3;

// se inicializa serial y el pin del boton
void setup()
{
  Serial.begin(9600);
  pinMode(buttonPin, INPUT);
}

//la funcion loop verifica el estado del boton 
// y si esta presionado envia el serial
void loop()
{
  if (digitalRead(buttonPin) == HIGH)
    Serial.write('H');
  else
    Serial.write('L');

  delay(1000);
}


delay()

 Detiene el programa por el tiempo que se le especifique como parámetro(en milisegundos).

Ejemplo:

int ledPin = 13;                 // El LED esta conectado al pin #13

void setup()
{
  pinMode(ledPin, OUTPUT);      // configura el pin como salida
}

void loop()
{
  digitalWrite(ledPin, HIGH);   // enciende el LED
  delay(1000);                  //esperar un segundo
  digitalWrite(ledPin, LOW);    // apagar el LED
  delay(1000);                  // esperar un segundo
}


pinMode()

 Configura el pin como para entrada o salida

sintaxis: pinMode(pin,mode)
donde:
           -pin:  el numero del pin que se va a utilizar
            -mode: INPUT, OUTPUT, o INPUT_PULLUP

Ejemplo:

 int ledPin = 13;                 // LED conectado al pin #13

void setup()
{
  pinMode(ledPin, OUTPUT);      // configura el pin como salida
}

void loop()
{
  digitalWrite(ledPin, HIGH);   // enciende el LED
  delay(1000);                  //espera un segundo
  digitalWrite(ledPin, LOW);    // Apaga el led
  delay(1000);                  //Espera un segundo
}

analogWrite()

Asigna un valor analogico a un pin. Puede ser usado para variar la intensidad o brillo de un LED o para controlar las diferentes velocidades de un motor. La frecuencia de la señal PWM es en los pines es aproximadamente de 490Hz. En el arduino Uno o  similarse los pines 5 y 6 tienen una frecuencia de aproximadamente 980 Hz. Los pines 3 y 11 en el Leonardo tambien funcionan a 980 Hz.

Sintaxis: analogWrite (pin,value)
donde:
          -pin: El pin que se utilizara
         -values: El valor del ciclo de trabajo: va desde 0(siempre apagado) a 255 (siempre encendido)

Ejemplo:

int ledPin = 9;      // El led se encuentra conectado al pin 9 int analogPin = 3;   // El potenciometro se encuentra conectado al pin análogo 3 int val = 0;         // Variable para guardar el valor leido
void setup() {   pinMode(ledPin, OUTPUT);   // configura el pin como output
 } void loop() {   val = analogRead(analogPin);   // lee el valor del pin de entrada   analogWrite(ledPin, val / 4);  // los valorse de analogRead van desde 0 a 1023, los valores de analogWrite van desde 0 a 255  }

analogReadPin()

Lee un valor del pin especificado. Esto quiere decir que convertira los valores de 0 y 5 volts a enteros entre 0 y 1023 El rango 
de entrada y resolucion pyede ser modificado utilizando la función analogReference(). La lectura de la entrada análoga toma alrededor de 100 microsegundos (.0001s)
el maximo de lectura toma alrededor de 10,000 segundos
Sintaxis:
analogReadPin(pin)
donde:
  - el numero del pin de donde se realizara la lectura
 
Ejemplo:
int analogPin = 3;     // potentiometer wiper (middle terminal) connected to analog pin 3                        // outside leads to ground and +5V int val = 0;           // variable to store the value readvoid setup() {   Serial.begin(9600);          //  setup serial }
  
void loop() {   val = analogRead(analogPin);    // read the input pin   Serial.println(val);             // debug value }

No hay comentarios:

Publicar un comentario