Computing">
Nothing Special   »   [go: up one dir, main page]

Practica 5 Entradas Salidad Del Microcontrolador

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 16

PRACTICA NO.

5 LABORATORIO DE ELECTRONICA DIGITAL


DURACIÓN 2 (HORAS)

Programar el microcontrolador para entrada y salida de datos en


lenguaje C.
1. INTRODUCCIÓN
Después de conocer y utilizar el lenguaje ensamblador es muy útil la utilización de un
Lenguaje de alto nivel como el C ya que permite desarrollar programas en C enfocado al
PIC con las ventajas que tiene de facilidad de uso.
Además, C está estandarizado, es muy portable, así que el mismo código se puede
utilizar muchas veces en diferentes proyectos. Lo que lo hace accesible para cualquiera
que conozca este lenguaje sin reparar en el propósito de uso del microcontrolador. C es
un lenguaje compilado, lo que significa que los archivos fuente que están elaborados en
C son convertidos a lenguaje de máquina por el compilador usado. Por estas razones C
es uno de los lenguajes de programación más populares actualmente.
2. OBJETIVO (COMPETENCIA)
Configurar los puertos de entrada y salida de datos del microcontrolador para la
manipulación de bits a través del lenguaje C con actitud propositiva y organizada.
3. FUNDAMENTO
Al iniciar el estudio de los microcontroladores, lo normal es que los usuarios que se inician
en el apasionante mundo de la programación, sea de la marca que sea, primero lo hagan
utilizando el lenguaje ensamblador especifico no solo ya para cada marca de
microcontrolador sino para cada modelo, ya que hay que conocer perfectamente los
recursos de cada Microcontrolador (Número de puertos de Entrada/Salida Relojes
internos, etc.). Al principio de los tiempos de estos dispositivos esto era obligatorio ya
que los recursos de memoria y velocidad de procesamiento no eran muy grandes y había
que optimizar el código al máximo, esto implicaba que había que utilizar a la fuerza un
lenguaje de programación de bajo nivel que bien utilizado explotara los recursos de estos
dispositivos sin desperdiciar memoria y velocidad de procesamiento, pero al igual que ha
ocurrido con los computadoras personales, las prestaciones de estos dispositivos ha ido
creciendo exponencialmente con el tiempo, siendo ya perfectamente factible el utilizar
un lenguaje de alto nivel para programar estos dispositivos y aprovecharse de las
ventajas de portabilidad que ofrecen este tipo de lenguajes, de esta manera, por ejemplo,
se puede hacer un programa para un PIC en concreto y utilizarlo en otro de mayores
prestaciones sin modificar apenas nada del Código fuente y con mucha mayor facilidad
en la programación. En la actualidad, C es el lenguaje preferido para enseñar y aprender
programación básica de computadoras en muchas universidades e institutos educativos.
Es muy usado en aplicaciones científicas e industriales (industria robótica y cibernética).
Se trata de un lenguaje de alto nivel pero con muchas características de bajo nivel, por
lo cual es sumamente potente con respecto al conocido y difícil lenguaje ensamblador.
C es el lenguaje común para programar sistemas embebidos (sistemas con
microcontroladores incorporados), debido al código ligero que un compilador C genera y
la posibilidad del empleo de instrucciones de bajo nivel (ensamblador) dentro del código
C. Para aprender a programar en lenguaje C, es necesario utilizar cualquier compilador
de uso general y saber las instrucciones
que se deben de utilizar para configura un puerto como entrada o salida, o que código
es necesario utilizar para activar por ejemplo, un convertidor A/D si es que lo trae el PIC
integrado. C es apreciado por la eficiencia del código que produce y es muy popular para
crear aplicaciones, se desarrolló originalmente por programadores para programadores.
Típicamente, sólo la programación cuidadosa en lenguaje ensamblador produce un
código más rápido, aunque los avances en los compiladores de C han reducido
gradualmente esta diferencia.

Las principales ventajas de C son las siguientes: elevada eficiencia puesto que es posible
utilizar sus características de bajo nivel para realizar
implementaciones óptimas, gran cantidad de compiladores en existencia tienen todas las
herramientas -en librerías de
funciones- y facilidades necesarias para una rápida y efectiva programación de cualquier
PIC en general y proporciona
facilidades para realizar programas modulares y/o utilizar código o bibliotecas existentes.
Ventajas de programar microcontroladores en lenguaje C
· Aprenderás a programar los microcontroladores más completos y económicos que se
encuentran fácilmente en el
mercado local.
· Podrás crear tus propios proyectos de Electrónica de manera simple, óptima,
económica y confiable.
· Requerirás de una mínima cantidad de componentes electrónicos y la complejidad de
tus circuitos se reducirá
enormemente.
· Ahorrarás en costos y disminuirás la complejidad del diseño al emplear el oscilador
interno incorporado en estos
microcontroladores, al tiempo que dispondrás de más pines E/S para tu aplicación.
· Podrás escribir programas de tamaños considerables sin preocuparte por el espacio de
memoria disponible en el chip.
· Podrás trabajar con un compilador de alto nivel, disponible gratuitamente, con lo que
ahorrarás gran cantidad de
tiempo y esfuerzo en la creación de tus diseños.
· Escribirás tus programas en uno de los lenguajes de alto nivel (C) más eficientes y
populares para la programación de
microcontroladores.
· Podrás utilizar sin mayor esfuerzo todas las herramientas incorporadas dentro del
ambiente de desarrollo mikroC,
logrando resultados asombrosos en tiempos increíblemente reducidos.
· Ymás… Una vez que hayas aprendido a programar microcontroladores PIC en lenguaje
C, únicamente tu creatividad
podrá poner límites a lo que estarás en capacidad de inventar y construir.
Materiales Equipos
Tarjeta Arduino uno Computadora con software Arduino
instalado
Potenciómetro de 10kΩ

DESARROLLO:
Acontinuacion estaremos trabajando con los siguientes ejemplos de código,
y estaremos comprobando su funcionamiento , copie cada uno de los
ejercicios en la aplicación ARDUINO IDE, compile el código y verifique no
tenga errores de sintaxis , programe su tarjeta Arduino, y verifique el
funcionamiento de cada ejercicio realice las conexiones correspondientes y
tome evidencia de su funcionamiento.
Materiales Equipos
Tarjeta Arduino uno Computadora con software Arduino instalado
Potenciómetro de 10kΩ
Cables para conexión

EJERCICIO 1: BORRADO , ESCRITURA Y LECTURA DE MEMORIA EEPROM.

ESQUEMA DE CONEXION
EJERCICIO 2: ACTIVCACION DEL LED 13
int ledPin = 13; // LED en el pin digital 13
void setup() // configura el pin de salida
{
pinMode(ledPin, OUTPUT); // configura el pin 13 como
salida
}
void loop() // inicia el bucle del programa
{
digitalWrite(ledPin, HIGH); // activa el LED
delay(1000); // espera 1 segundo

digitalWrite(ledPin, LOW); // desactiva el LED


delay(1000); // espera 1 segundo

EJERCICIO 3: ACTIVACION DEL LED 10

ESQUEMA DE CONEXIONES
CODIGO DE PROGRAMACION

Introducción
El potenciómetro es un dispositivo electromecánico que consta de una
resistencia de valor fijo sobre la que se desplaza un contacto deslizante,
elcursor, que la divide eléctricamente.
Un potenciómetro es especificado por su resistencia total, R, entre los
terminales externos 1 y 3; El movimiento del cursor origina un cambio
en laresistencia medida entre el terminal central, 2, y uno cualquiera de
los extremos. Este cambio de resistencia puede utilizarse para medir
desplazamientos lineales o angulares de una pieza acoplada al cursor.
Se conectan en paralelo al circuito y se comporta como un divisor de
tensión.Un potenciómetro también puede ser usado como una
resistencia variable de dos terminales, en ese caso, se cortocircuitan
dos de las tres patas del potenciómetro.
EJERCICIO 4: POTENCIOMETRO LECTURA DE UNA SEÑAL ANALOGICA

Esquema de conexiones

CONEXIÓN DEL POTENCIOMETRO


Se conectan tres cables a la tarjeta Arduino. El primero va a tierra desde
elterminal 1 del potenciómetro. El terminal 3 va a la salida de 5 voltios.
La terminal 2 va desde la entrada analógica #2 hasta la terminal central
del potenciómetro.
Girando el dial o ajustando el potenciómetro, cambiamos el valor de la
resistencia variable. Esto produce oscilaciones dentro del rango de 5 y 0
voltios, que son capturados por la entrada analógica.
CODIGO DE PROGRAMACION:
Funcionamiento
Cuando un led se encuentra en polarización directa, los electrones
puedenrecombinarse con los huecos en el dispositivo, liberando energía
en forma de fotones. Este efecto es llamado electroluminiscencia y el
color de la luz (correspondiente a la energía del fotón) se determina a
partir de la banda de energía del semiconductor. Por lo general, el área
de un led es muy pequeña (menor a 1 mm2), y se pueden usar
componentes ópticos integrados para Formar su patrón de radiación.
EJERCICIO 5: ESTRELLA FUGAZ
11 Resistencias de 220Ω
11 Diodos LED
Cables para conexión

ESQUEMA DE CONEXIÓN
El programa comienza encendiendo LED ́S hasta que llegue al número
de LED ́s establecido para la cola. En ese momento seguirá encendiendo
LED ́S hacia la izquierda (si se monta tal y como se muestra en la
fotografía inferior), para mantener el movimiento de la estrella, al mismo
tiempo que apaga LED ́S por la derecha, para asegurarnos de que vemos
la cola. De otra forma seguiría encendiendo LED ́S hasta encenderlos
todos. Esto ocurre cuando el tamaño de la cola es igual o mayor que el
número de LED S.

CODIGO DE PROGRAMACION
EJERCICIO 6 CONTADOR :

CODIGO DE PROGRAMACION:
EJERCICIO 7:salida analógica del tipo pwm
PWM (modulación de impulsos en frecuencia)

int ledPin = 9; // pin PWM para el LED


void setup(){} // no es necesario configurar nada
void loop()
{
for (int i=0; i<=255; i++) // el valor de i asciende
{
analogWrite(ledPin, i); // se escribe el valor de I en el PIN de salida del LED
delay(100); // pauses for 100ms
}
for (int i=255; i>=0; i--) // el valor de I desciendei
{
analogWrite(ledPin, i); // se escribe el valor de ii
delay(100); // pasusa durante 100ms
}
}

También podría gustarte