Este es el lenguaje en el que casi todo el mundo empieza. Primero se suelen hacer aplicaciones para ordenador, y después se pasa a los microcontroladores.
pinMode(13, OUTPUT);
en la función void setup()
. Si quieres puedes usar variables en vez de números de pin (mucho mejor si luego tienes que cambiar).
Diseña un Automatismo en Arduino para el control de un semáforo de un paso de peatones sin cruce de calles.
int ledverdepeatones = 11;
DO11 peatones verde. int ledrojopeatones = 10;
DO10 peatones rojo.int ledrojocoches = 7;
DO7: Rojo coches. int ledambarcoches = 6;
DO6: Ambar coches. int ledverdecoches = 5;
DO5: Verde coches. Flujo del programa:
En void setup()
:
pinMode(pulsPin,INPUT);
En el código del programa, para hacer la lectura del pin:
int pulsPin=8;
if(digitalRead(pulsPin) == HIGH)
{
// Si se cumple, hago esto.
}
else
{
// Si NO se cumple, hago esto otro.
}
Ejemplo 1: Realizar un programa encienda el led 13 al accionar un pulsador pull-down (apuntes pull-up, pull-down).
Ejemplo 2: Realizar un programa encienda el led 13 durante 5 segundos al accionar un pulsador pull-down.
Idéntico al anterior, pero con pulsador.
Los lenguajes de alto nivel son lenguajes que permiten escribir aplicaciones más o menos independientes del hardware (por ejemplo, “C” se usa en un gran número de microcontroladores y aplicaciones de PC).
Se dice que son de “alto” nivel por estar más próximos al lenguaje humano (normalmente al inglés), y más lejos del lenguaje máquina (que es binario)
Los lenguajes ensambladores son considerados de bajo nivel ya que son un calco del lenguaje de las máquinas pasado a texto.
Los programas escritos en lenguajes de alto nivel deben ser traducidos a código máquina en un proceso conocido como traducción (compilación).
Fuentes: Webopedia | Mr D Finch
void setup() {
Serial.begin(9600); //ajusta velocidad a 9600 bits per second
}
Después, para enviar información: Serial.println("Hola mundo");
Ojo:
Serial.println
termina en salto de línea.Serial.print
NO termina en salto de línea.Puedes concatenar strings (caracteres) y variables de la siguiente manera:
Serial.print("Mi LED está en la pata ");
Serial.println(ledespere, DEC);
O más eficientemente con:
Serial.println((String)"Mi LED está en la pata " + ledespere);
Programa que cuente el número de veces que se presiona un pulsador y lo muestre por puerto serie.
Haz que el led 13 se ilumine cuando hayas pulsado 5, 10, y 20 veces (usa sentencia condicional if).
OJO, necesitarás aprender a contar… haz este experimento en lenguaje C aquí:
#include <stdio.h>
int conteo = 0;
int main(void) {
printf("La cuenta da %i", conteo);
conteo = conteo + 1; // forma arcaica de contar
printf("\nLa cuenta da %i", conteo);
conteo++; // forma "pro" de contar
printf("\nLa cuenta da %i", conteo);
}
char caracter;
if(Serial.available() == HIGH) // operador booleano que se pone a HIGH si se reciben datos
{
caracter = Serial.read(); // lee la tecla pulsada
}
OJO: USA COMILLAS SIMPLES caracter = 'a';
CON CARACTERES.
Hacer un programa que encienda el GPIO 13 (LED integrado) al recibir “H” o “h” por puerto serie, y que que se apague al recibir “L” o “l”.
Fuente: “Introducción ao Arduino” - David Touceda Bugallo, 2014