sábado, 29 de marzo de 2014

Arduino desde cero: Primeros pasos


Fuente: editronikx.com




Estructura de un sketch 
La estructura básica del lenguaje de programación de Arduino es bastante simple y se compone de al menos dos partes. 
  • void setup() {...}
  • void loop() {...}
Configuración de pins
pinMode(num,tipo) siendo num el número de pin (1,2,..13) y el tipo si es entrada (INPUT) o salida (OUTPUT)

Programar el estado de un pin digital
digitalWrite(num,estado) siendo num el número de pin (1,2,...13) y estado si debe estar a nivel alto (HIGH) que equivale a una salida de 5v. o a nivel bajo (LOW) que equivale a una salida de 0v.

Retardos
delay(mseg) siendo mseg los milisegundos de retardo

Ejemplo:

void setup()
{
  pinMode(13,OUTPUT);
}

void loop()
{
  digitalWrite(13,LOW);
  delay(500);
  digitalWrite(13,HIGH);
  delay(500);}

Notas
  • En arduino uno tiene un led conectado directamente al puerto 13 por lo que no es necesario conectar físicamente ningún otro led
  • En Arduino existe una constante denominada LED_BUILTIN que representa el número del PIN al que internamente está conectado el led integrado en la placa. Por tanto, en el ejemplo anterior podemos indicar: pinMode(LED_BUILTIN,OUTPUT);

Señales analógicas (PWM)
El procedimiento para generar una señal analógica es el llamado PWM (Pulse-width modulation) (señal de modulación por ancho de pulso).
Cuando trabajamos con PWM no es necesario definir previamente el modo de trabajo del pin

analogWrite(num,valor) donde num es el número de pin y valor es la tensión de salida que va desde su valor mínimo 0 a su malor máximo 255.

bucle for()
for(valorInicial,condición,incremento) donde indicamos el valor inicial de la variable, la condición para que se repitan las instruciones y el valor del incremento de la variable
Ejemplo:

void setup()
{

}

void loop()
{
  analogWrite(9,0);
  for(int i=0;i<=255;i++)
  {
    analogWrite(9,i);
    delay(10);
  }
}

donde int define una variable como entera. Para definir un valor constante se utiliza const seguido del tipo de variable

Nota: Si definimos una variable, si esta definición se realiza fuera de void setup() la podremos utilizar en todo el programa (variable global). En cambio, si la definimos dentro de un void solo lo podremo utilizar dentro de dicho void (variable local). Ejemplo:

const int lowestPin = 2;
int tiempo = 20

void setup() {...}
void loop() {...}

No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.