Sie sind auf Seite 1von 6

UNIVERSIDAD CATLICA BOLIVIANA SAN PABLO

UNIDAD ACADMICA REGIONAL COCHABAMBA

Sistemas Electrnicos
Ingeniera Mecatrnica

Practica N 6
Manejo de micro controladores
Laboratorio de sistemas electrnicos

Yaez Hinojosa Erick Alejandro


Sandoval Yaez Samuel
Crdenas Herrera Juan Pablo
Daniel Solano Tern

Cochabamba - Bolivia
28 de abril de 2015

1. Objetivos.
- Aplicar los conocimientos sobre manejo y programacin de la plataforma arduino
con lenguaje C.
- Manejar diversos puertos tales como analgicos o digitales en el empleo de
pulsadores como entradas.
- Aplicar los conocimientos sobre el uso de una pantalla LCD con arduino.
2. Marco terico.

Arduino

Placa Arduino RS2321

Arduino es
una
plataforma
de hardware
libre,
basada
en
una placa con
un microcontrolador y un entorno de desarrollo, diseada para facilitar el uso de la
electrnica en proyectos multidisciplinares.2 3
El hardware consiste en una placa con un microcontrolador Atmel AVR y puertos
de entrada/salida.4 Los
microcontroladores
ms
usados
son
el Atmega168, Atmega328, Atmega1280, y Atmega8 por su sencillez y bajo coste que
permiten el desarrollo de mltiples diseos. Por otro lado el software consiste en un entorno
de desarrollo que implementa el lenguaje de programacinProcessing/Wiring y el cargador
de arranque que es ejecutado en la placa.4
Desde octubre de 2012, Arduino se usa tambin con microcontroladoras CortexM3 de ARM
de 32 bits,5 que coexistirn con las ms limitadas, pero tambin econmicas AVR de 8 bits.
ARM y AVR no son plataformas compatibles a nivel binario, pero se pueden programar con el
mismo IDE de Arduino y hacerse programas que compilen sin cambios en las dos
plataformas. Eso s, las microcontroladoras CortexM3 usan 3,3V, a diferencia de la mayora
de las placas con AVR, que generalmente usan 5V. Sin embargo, ya anteriormente se
lanzaron placas Arduino con Atmel AVR a 3,3V como la Arduino Fio y existen compatibles de
Arduino Nano y Pro como Meduino en que se puede conmutar el voltaje.
Arduino se puede utilizar para desarrollar objetos interactivos autnomos o puede ser
conectado a software tal como Adobe Flash, Processing, Max/MSP, Pure Data. Las placas
se pueden montar a mano o adquirirse. El entorno de desarrollo integradolibre se puede
descargar gratuitamente.
Arduino puede tomar informacin del entorno a travs de sus entradas analgicas y digitales,
puede controlar luces, motores y otros actuadores. El microcontrolador en la placa Arduino

se programa mediante el lenguaje de programacin Arduino (basado en Wiring) y el entorno


de desarrollo Arduino (basado en Processing). Los proyectos hechos con Arduino pueden
ejecutarse sin necesidad de conectar a un computador.
El proyecto Arduino recibi una mencin honorfica en la categora de Comunidades Digital
en el Prix Ars Electrnica de 2006.

LM016L

Es una pantalla LCD (LiquidCrystal) de tamao 16x2.

3. Diseo.

#include <LiquidCrystal.h>
int estado=0;
int start=A0;
int select=A1;
int pause=A2;
LiquidCrystal lcd(5, 4, 3, 2, 1, 0);
void setup()
{
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
pinMode(11,OUTPUT);
pinMode(12,OUTPUT);
pinMode(13,OUTPUT);
lcd.begin(16, 2);
}

void secuencia1()
{
int a=1;
for(int i=6; i<14; i=i+a)
{
digitalWrite(i,HIGH);
delay(100);
digitalWrite(i,LOW);
if(i==13)
{
a=-1;
}
if(i==6)
{
a=1;
}
}
}

void secuencia2()
{
int a,b=10,c=1;
for(a=9;a>5;a=a-c)
{
digitalWrite(a,HIGH);
digitalWrite(b,HIGH);
delay(100);
digitalWrite(a,LOW);
digitalWrite(b,LOW);
b=b+c;
if(a==6)
{
a=10;
b=10;
}
}
}
void secuencia3()
{
for(int i=6;i<14;i++)
{
digitalWrite(i,HIGH);
delay(100);
if(i==13)
{
for(int j=13;j>=6;j=j-2)
{
digitalWrite(j,LOW);
delay(100);
}
for(int j=12;j>=6;j=j-2)
{
digitalWrite(j,LOW);
delay(100);
}
i=5;
}
}
}
void secuencia4()
{
int a=13;
for(int i=6;i<14;i++)
{
digitalWrite(i,HIGH);
delay(100);
if(a==6)
{
for(int h=6;h<14;h++)
{
digitalWrite(h,HIGH);
}
delay(200);
for(int h=6;h<14;h++)
{
digitalWrite(h,LOW);

}
delay(200);
for(int h=6;h<14;h++)
{
digitalWrite(h,HIGH);
}
delay(200);
for(int h=6;h<14;h++)
{
digitalWrite(h,LOW);
}
for(int h=6;h<14;h++)
{
digitalWrite(h,HIGH);
}
delay(200);
for(int h=6;h<14;h++)
{
digitalWrite(h,LOW);
}
delay(200);
for(int h=6;h<14;h++)
{
digitalWrite(h,HIGH);
}
delay(200);
for(int h=6;h<14;h++)
{
digitalWrite(h,LOW);
}
}
delay(100);
if(i==a)
{
i=5;
a--;
}
digitalWrite(i,LOW);
}
}
void loop()
{
/*lcd.setCursor(0,0);
lcd.println("Bienvenidos");
delay(2000);
lcd.clear();
lcd.setCursor(0,0);
lcd.println("Auto fantastico");
if(analogRead(A0)>0)
{
secuencia1();
}
else if(analogRead(A1)>0)
{
lcd.setCursor(0,0);
lcd.println("Zumidora");
if(analogRead(A0)>0)
{

secuencia2();
}
if(analogRead(select)>0)
{
lcd.setCursor(0,0);
lcd.println("Todos los leds");
if(analogRead(A0)>0)
{
secuencia3();
}
if(analogRead(A1)>0)
{
lcd.setCursor(0,0);
lcd.println("Lluvia");
if(analogRead(A0)>0)
{

secuencia4();
}
}
}
}*/
if(analogRead(A0)>0)
{
lcd.print("Bienvenidos");
delay(2000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Lluvia");
secuencia4();
}

4. Conclusiones:
La plataforma arduino es un microcontrolador muy prctico de uso muy flexible
que la mayor parte de sus funcionalidades son ejecutadas llamando libreras
ya predefinidas.
Esta herramienta es codificada en lenguaje C de programacin con algunas
variaciones caractersticas del hardware, muy fciles de usar.
La cantidad de pines son una enorme limitacin, perjudicando asi su
desarrollo.

Das könnte Ihnen auch gefallen