Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ESTRUCTURA
setup() (inicializacin)
La funcin setup() se establece cuando se inicia un programa -sketch. Se
emplea para iniciar variables, establecer el estado de los pins, inicializar
libreras, etc. Esta funcin se ejecutar una nica vez despus de que se
conecte la placa Arduino a la fuente de alimentacin, o cuando se pulse el
botn de reinicio de la placa.
Ejemplo
int buttonPin = 3;
void setup()
{
Serial.begin(9600);
pinMode(buttonPin, INPUT);
}
void loop()
{
// ...
}
loop() (bucle)
Luego de crear la funcin setup(), la cual inicializa y prepara los valores
inciales, la funcin loop() hace justamente lo que su nombre sugiere, por lo
tanto se ejecuta consecutivamente, permitindole al programa variar y
responder. sala para controlar de forma activa la placa Arduino.
Ejemplo
int buttonPin = 3;
// setup inicializa la comunicacin serial y el buttonPin
void setup()
{
beginSerial(9600);
pinMode(buttonPin, INPUT);
}
// loop obtiene el estado del pin del botn cada vez,
// y de estar presionado, lo comunica por serial.
void loop()
{
if (digitalRead(buttonPin) == HIGH)
serialWrite('H');
else
serialWrite('L');
delay(1000);
}
Estructuras de control
if (comparador si-entonces)
if...else (comparador si...sino)
for (bucle con contador)
switch case (comparador mltiple)
while (bucle por comparacin booleana)
do... while (bucle por comparacin booleana)
break (salida de bloque de cdigo)
Sintaxis
; (punto y coma)
{} (llaves)
// (comentarios en una lnea)
/* */ (comentarios en mltiples lneas)
Operadores Aritmticos
= (asignacin)
+ (suma)
- (resta)
(multiplicacin)
/ (divisin)
% (resto)
Operadores Comparativos
== (igual a)
!= (distinto de)
< (menor que)
>(mayor que)
<= (menor o igual que)
>= (mayor o igual que)
Operadores Booleanos
&& (y)
|| (o)
! (negacin)
Operadores de Composicin
++ (incrementa)
-- (decrementa)
+= (composicin suma)
-= (composicin resta)
*= (composicin multiplicacin)
/= (composicin divisin)
VARIABLES
Constantes
HIGH | LOW
INPUT | OUTPUT
true | false
Constantes Numricas
Tipos de Datos
boolean (booleano)
char (carcter)
byte
int (entero)
unsigned int (entero sin signo)
long (entero 32b)
unsigned long (entero 32b sin signo)
float (en coma flotante)
double (en coma flotante de 32b)
string (cadena de caracteres)
array (cadena)
void (vaco)
Conversin
char()
byte()
int()
long()
float()
FUNCIONES
E/S Digitales
pinMode()
digitalWrite()
digitalRead()
E/S Analgicas
analogRead()
analogWrite() - PWM (modulacin por ancho de pulso)
E/S Avanzadas
tone()
noTone()
shiftOut()
pulseIn()
Tiempo
millis()
micros()
delay()
delayMicroseconds()
Matemticas
min() (mnimo)
max() (mximo)
abs() (valor absoluto)
constrain() (limita)
map() (cambia valor de rango)
pow() (eleva a un nmero)
sq() (eleva al cuadrado)
sqrt() (raz cuadrada)
Trigonometra
sin() (seno)
cos() (coseno)
tan() (tangente)
Nmeros Aleatorios
randomSeed()
random()
Communicacin
Serial
DESARROLLO DE LAS
ESTRUCTURAS DE CONTROL
if (comparador si-entonces)
if/else permite
mayor
control
sobre
el
flujo
del
cdigo
que
la
else puede proceder a una comprobacin if, de esta forma, se pueden realizar
mltiples comprobaciones en una misma estructura de condiciones. Cada
comprobacin proceder a la siguiente, slo cuando su propio resultado
sea FALSE. Cuando el resultado sea TRUE, su bloque de cdigo contenido, ser
ejecutado, y el programa esquivar las siguientes comprobaciones hasta el final
de la estructura de comprobaciones. Si ninguna comprobacin devuelve
valor TRUE,
elelse ser
ejecutado,
de
no
haber
ninguno
declarado,
Descripcin
La declaracin for es usada para repetir un bloque encerrado entre llaves. Un
incremento de un contador es usado, normalmente, para aumentar y terminar
con el bucle. La estructura for es muy til para la mayora de las operaciones
repetitivas, y habitualmente se usa para operaciones con vectores, para operar
sobre conjuntos de datos/pines
El bucle for tiene tres partes o argumentos en su inicializacin:
for (initialization; condition; increment) {
//funcin(es);
}
Consejos de programacin
El bucle for, en C, es mucho ms flexible que otros bucles for en otros
lenguajes, incluyendo BASIC. Cualquiera (o todos) los parmetros pueden ser
omitidos, sin embargo los puntos y coma (;) son obligatorios. Tambin las
inicializacin, condicin e incremento pueden ser cualquier declaracin en C
vlida, con variables independientes, y podemos usar cualquier tipo de
variable, includos los float. Estos tipos de declaracin for poco usuales pueden
proporcionar una solucin vlida a algunos problemas de programacin raros.
Por ejemplo, usando la multiplicacin en el parmetro de incremento, podemos
generar una progresin logartmica.
for(int x = 2; x < 100; x = x * 1.5){
println(x);
}
en las sentencias case. Cuando se encuentra una sentencia case cuyo valor
coincide con dicha variable, el cdigo de esa sentencia se ejecuta.
La palabra clave break sale de la sentencia switch, y es usada tpicamente
al final de cada case. Si una sentencia break, la sentencia switch continuara
ejecuntndo las siguientes expresiones ("falling-through") hasta encontrar
un break, o hasta llegar al final de la sentencia switch.
Ejemplo
switch (var) {
case 1:
//hacer algo cuando sea igual a 1
break;
case 2:
//hacer algo cuando sea igual a 2
break;
default:
// si nada coincide, ejecuta el "default"
// el "default" es opcional
}
Sintaxis
switch (var) {
case etiqueta:
// sentencias
break;
case etiqueta:
// sentencias
break;
default:
// sentencias
}
Parmetros
var: la variable cuyo valor comparas con los varios "case"
etiqueta: un valor para comparar con la variable
Descripcin
Los bucles while se ejecutan continuamente, hasta que la expresin de dentro
del parntesis, (), pasa a ser falsa. Algo debe modificar la variable comprobada,
el bucle while nunca terminar. Lo que modifique la variable puede estar en el
cdigo, como una variable que se incrementa, o ser una condicin externa,
como el valor que da un sensor.
Sintaxis
while(expresion){
// sentencia(s)
}
Parmetros
expresion - una sentencia C (booleana) que da como valor verdadero (true) o
falso (false)
Ejemplo
var = 0;
while(var < 200){
// haz algo repetitivo 200 veces
var++;
}
Ejemplo:
do
{
delay(50);
// espera a que los sensores se estabilicen
x = readSensors(); // comprueba los sensores
} while (x < 100);
falta
}
digitalWrite(PWMpin, x);
delay(50);
}
return
Termina una funcin y devuelve un valor a la funcin que la llama. Puede no
devolver nada.
Sintaxis
return;
return valor; // ambas formas son correctas
Parmetros
valor: cualquier variable o tipo constante
Ejemplos
Una funcin que compara la entrada de un sensor a un umbral
int comprobarSensor(){
if (analogRead(0) > 400) {
return 1;
else{
return 0;
}
}
La palabra clave return es til para depurar una seccin de cdigo sin tener
que comentar una gran cantidad de lneas de cdigo posiblemente incorrecto.
void loop(){
// cdigo magnfico a comprobar aqu
return;
// el resto del programa del que se desconfa
// que nunca ser ejecutado por estar detrs de return
}
do - while
Ejemplo:
do
{
delay(50);
// espera a que los sensores se estabilicen
x = readSensors(); // comprueba los sensores
} while (x < 100);
SOFTWARE
WIRING
THE Wiring SOFTWARE IS PROVIDED TO YOU "AS IS," AND WE MAKE NO EXPRESS OR IMPLIED
WARRANTIES WHATSOEVER WITH RESPECT TO ITS FUNCTIONALITY, OPERABILITY, OR USE, INCLUDING,
WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE, OR INFRINGEMENT. WE EXPRESSLY DISCLAIM ANY LIABILITY WHATSOEVER FOR ANY DIRECT,
INDIRECT, CONSEQUENTIAL, INCIDENTAL OR SPECIAL DAMAGES, INCLUDING, WITHOUT LIMITATION,
LOST REVENUES, LOST PROFITS, LOSSES RESULTING FROM BUSINESS INTERRUPTION OR LOSS OF
DATA, REGARDLESS OF THE FORM OF ACTION OR LEGAL THEORY UNDER WHICH THE LIABILITY MAY BE
ASSERTED, EVEN IF ADVISED OF THE POSSIBILITY OR LIKELIHOOD OF SUCH DAMAGES.
By downloading the software from this page, you agree to the specified terms. For instructions check
the software install tutorial in the Learning / Tutorialssection.
http://wiring.org.co/download/index.html
PROCESSING
Processing is an open source programming language and environment for people who want to create
images, animations, and interactions. Initially developed to serve as a software sketchbook and to
teach fundamentals of computer programming within a visual context, Processing also has evolved
into a tool for generating finished professional work. Today, there are tens of thousands of students,
artists, designers, researchers, and hobbyists who use Processing for learning, prototyping, and
production.
Over 100 libraries extend the software into sound, video, computer vision, and more...
http://www.processing.org/