Vous êtes sur la page 1sur 16

INSTITUTO TECNOLGICO DE

CHIHUAHUA
La Tcnica por el engrandecimiento de Mxico

Practica 5.
Men de Rotacin de Leds/ Reloj con pantalla LCD (Lenguaje C).

MICROCONTROLADORES
15:00-16:00
Senz Balderrama Eduardo
Lara Len Alfredo
Gonzlez Espino Erick Sergio

Fecha de entrega: 13/04/2016


MC. Jorge Arturo Aguirre Beltrn
Periodo Enero Junio de 2016

13061134
13060937
13060969

Introduccin.
En esta prctica empleamos el uso de una pequea pantalla LCD, es donde
podemos imprimir un texto o mensaje a travs del microcontrolador; si bien,
conociendo el lenguaje C, podemos imprimir utilizando la funcin printf un
mensaje en pantalla, aplicndolo a los PIC es prcticamente lo mismo, desde
un hola mundo, hasta un reloj que es lo que veremos a continuacin, veremos
que realmente no hay mucha diferencia en hacer esta prctica en el entorno
dev c++, incluso C# con respecto al manejo de los PIC.
Nota: incluimos el reloj en el men de rotas, este programa viene en la
plataforma de manera arbitraria, nosotros, en este reporte explicamos el diseo
y uso del reloj con la pantalla LCD.

Marco Terico.
Lenguaje C.
Tambin conocido como Lenguaje de programacin de sistemas desarrollado
en el ao 1972 por Dennis Ritchie para UNIX un sistema operativo
multiplataforma. El lenguaje C es del tipo lenguaje estructurado como son
Pascal, Fortran, Basic. Sus instrucciones son muy parecidas a otros lenguajes
incluyendo sentencias como if, else, for, do y while.... Aunque C es un lenguaje
de alto nivel (puesto que es estructurado y posee sentencias y funciones que
simplifican su funcionamiento) tenemos la posibilidad de programar a bajo nivel
(como en el Assembler tocando los registros, memoria etc.). Para simplificar el
funcionamiento del lenguaje C tiene incluidas libreras de funciones que pueden
ser incluidas haciendo referencia la librera que las incluye, es decir que si
queremos usar una funcin para borrar la pantalla tendremos que incluir en
nuestro programa la librera que tiene la funcin para borrar la pantalla.
Estructura de programacin en C.
Encabezados <ficheros.h> en l se almacenan las funciones que trae el
lenguaje propio o las funciones nuestras se les llaman Libreras. Las funciones
de C dan mucha potencia al programador en podemos realizar los programas
con mucha potencia y facilidad de cdigo. Constantes simblicas en l se
definen las constantes de nuestro programa es lo nico que se escribe en
maysculas. ej.: #define ENERO 31
Nota: (las constantes son variables que conservan el mismo valor todo el
programa una vez que incluimos una constante en nuestro programa el
compilador va a sustituir el texto contenido en la constante por el texto del
mismo.) Cabecera de funciones es la llamadas a las funciones que se
encuentran el mismo programa y al final del.
Funcin principal MAIN() en l se desarrollara todo el cdigo del programa las
llamadas a funciones procedimientos etc. (es una funcin que s auto ejecuta
cuando se compila el programa).

Entorno MPLAB IDE

MPLAB es un editor IDE gratuito, destinado a productos de la marca Microchip.


Este editor es modular, permite seleccionar los distintos microcontroladores
soportados, adems de permitir la grabacin de estos circuitos integrados
directamente al programador.
Es un programa que corre bajo Windows, Mac OS y Linux. Presenta las
clsicas barras de programa, de men, de herramientas de estado, etc. El
ambiente MPLAB posee editor de texto, compilador y simulacin (no en
tiempo real). Para comenzar un programa desde cero para luego grabarlo al C
en MPLAB v7.XX los pasos a seguir son:

Tipo de variables en C.

Definicin: Para la definicin


variables de debe poner
luego el nombre
(si
queremos

inicializarla

poniendo = valor) y si queremos definir ms


variable del mismo tipo

de
primero el tipo de variable a definir
y
de la variable

podemos

continuacin
de
podemos

una

poniendo una coma a continuacin.

Tarjeta
Adquisicin

de

de Datos (DAQ).

La
adquisicin de datos o adquisicin de seales, consiste en la toma de muestras
del mundo real (sistema analgico) para generar datos que puedan ser
manipulados por un ordenador u otras electrnicas (sistema digital). Consiste,
en tomar un conjunto de seales fsicas, convertirlas en tensiones elctricas y
digitalizarlas de manera que se puedan procesar en una computadora o PAC.
Se requiere una etapa de acondicionamiento, que adecua la seal a niveles
compatibles con el elemento que hace la transformacin a seal digital. El
elemento que hace dicha transformacin es el mdulo de digitalizacin o tarjeta
de Adquisicin de Datos (DAQ).
Los componentes de los sistemas de adquisicin de datos, poseen sensores
adecuados que convierten cualquier parmetro de medicin de una seal
elctrica, que se adquiriere por el hardware de adquisicin de datos. Los datos
adquiridos se visualizan, analizan, y almacenan en un ordenador, ya sea

utilizando el proveedor de software suministrado u otro software. Los controles


y visualizaciones se pueden desarrollar utilizando varios lenguajes de
programacin de propsito general como VisualBASIC, C++, Fortran, Java,
Lisp, Pascal. Los lenguajes especializados de programacin utilizados para la
adquisicin de datos incluyen EPICS, utilizada en la construccin de grandes
sistemas de adquisicin de datos, LabVIEW, que ofrece un entorno grfico de
programacin optimizado para la adquisicin de datos, y MATLAB. Estos
entornos de adquisicin proporcionan un lenguaje de programacin adems de
bibliotecas y herramientas para la adquisicin de datos y posterior anlisis.
De la misma manera que se toma una seal elctrica y se transforma en una
digital para enviarla al ordenador, se puede tambin tomar una seal digital o
binaria y convertirla en una elctrica. En este caso el elemento que hace la
transformacin es una tarjeta o mdulo de Adquisicin de Datos de salida, o
tarjeta de control. La seal dentro de la memoria del PC la genera un programa
adecuado a las aplicaciones que quiere el usuario y, luego de procesarla, es
recibida por mecanismos que ejecutan movimientos mecnicos, a travs de
servomecanismos, que tambin son del tipo transductores.

Microcontroladores.
Un microcontrolador es un dispositivo programable que ejecuta las
instrucciones grabadas en su memoria. De esta forma, el microcontrolador se
convierte en un pequeo ordenador y es el desarrollador el encargado de
programarlo segn sus necesidades. Adems de la flexibilidad que esto aporta,
los microcontroladores suelen contar con otros mdulos que aaden nuevas
funcionalidades que analizaremos ms adelante, como temporizadores,
conversores analgico digital, mdulos CCP

El propsito fundamental de los


microcontroladores es el de leer y
ejecutar los programas que el
usuario le escribe, es por esto que la programacin es una actividad bsica e
indispensable cuando se disean circuitos y sistemas que los incluyan. El
carcter programable de los microcontroladores simplifica el diseo de circuitos
electrnicos. Permiten modularidad y flexibilidad, ya que un mismo circuito se
puede utilizar para que realice diferentes funciones con solo cambiar el
programa del microcontrolador.
Las aplicaciones de los microcontroladores son vastas, se puede decir que solo
estn limitadas por la imaginacin del usuario. Es comn encontrar
microcontroladores en campos como la robtica y el automatismo, en la
industria del entretenimiento, en las telecomunicaciones, en la instrumentacin,
en el hogar, en la industria automotriz, etc.

Diseo de la prctica.
Tomamos como referencia el programa de rotacin de encendido de leds que
el profesor subi a la plataforma, como practica demostrativa, ya que uno de
los objetivos es, por medio de un men, demostrar que es posible agregar
muchas opciones, as como tambin cada opcin puede ser diferente y no
solamente un parpadeo de leds, es este caso, agregamos el reloj en una
opcin, y las dos opciones restantes fueron empleadas para el ajuste de horas
y minutos, de segundos no es necesario debido a que es una variable que va a
estar en constante cambio, si bien sera intil poner un ajuste ah.
Las partes ms importantes del programa, que es donde nosotros diseamos,
son el men por medio de la funcin switch, la variable a evaluar es una

funcin que se escribe de la siguiente manera: input_b();, ya que el puerto B


est conectado directamente con el dip switch, tambin habilitando las
resistencias pull-up, y agregamos los cases como si fuese un men normal,
en cdigo hexadecimal, ah agregamos la rotacin de leds mas el reloj, con
sus respectivos ajustes.
Para el diseo del reloj al principio utilizamos un for para hacerlo ms
esttico, pero debido al ajuste, tuvimos que hacerlo de una manera ms
extensa, es decir, utilizando if, de modo que en el ajuste usamos otro if para
la condicin cuando esta se habilite en el men.

Programa

SIMULACION FISICA.

SIMULACIN EN PROTEUS

Hoja de datos

Conclusiones.
Como siempre notamos que es ms sencillo y fcil de entender al lenguaje C
que a ensamblador, sobre todo cuando se trata de hacer un men, ya que
nosotros sabemos cul opcin elegir, dependiendo del perifrico que utilicemos
claro est ya sea el teclado o en este caso el dip switch. Si bien el
funcionamiento de los rotas es fcil de comprender y existen muchas maneras
de hacerlo, en este caso, utilizamos apuntadores, solo que en el reloj no lo
hicimos.
Notamos que existen dos formas de hacer el reloj: una de ellas es usando un
for anidado, que es lo primero que hicimos, ya que sera mucho menos
extenso el programa, la otra seria utilizando tres if que es casi igual al for,
pero con diferente esttica; y si bien debido a que implementamos el ajuste,
tenamos que usar los if ya que sera ms fcil de distinguir las variables que
vayamos a modificar.

Fuentes Bibliogrficas.

http://www.sparxsystems.com.ar/resources/tutorial/uml2_statediagr
am.html
https://trecedb.wordpress.com/2009/02/11/introduccion-a-losmicrocontroladores/
https://es.wikipedia.org/wiki/MPLAB
http://www.ecured.cu/Lenguaje_de_Programaci%C3%B3n_C
https://es.wikipedia.org/wiki/Adquisici%C3%B3n_de_datos

Vous aimerez peut-être aussi