Sunteți pe pagina 1din 12

ESIME

Microprocesadores

INSTITUTO POLITECNICO NACIONAL


ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA
PROGRAMA INSTITUCIONAL DE ENSEANZA FORMATIVA EN
LA LICENCIATURA EN INGENIERIA DE COMUNICACIONES Y
ELECTRONICA
UNIDAD ZACATENCO

Asignatura
Microprocesadores
PROFESOR TITULAR
Calzada Serafn Felipe

Alumnos:
Escamilla Lpez Jos Juan

2009300405

Termmetro Digital
GRUPO:6CV2
Mxico, Distrito Federal, 2012

Introduccin Terica
TERMOMETRO DIGITAL con LM35 y PIC 18F4550
El
siguiente Proyecto se trata de un Termmetro Digital
que muestra la temperatura a travs de un LCD.

El circuito se basa en 2 componentes principales el sensor de


temperatura LM35 y el PIC 18F4550. El LM35 es un sensor de
temperatura con una precisin calibrada de 1C y un rango
que abarca desde -55 a +150C. Lo que quiere decir que por
cada 1C en la variacin de la temperatura, el sensor en su
salida obtendr una variacin de 10 mV. Por ejemplo si la
temperatura es de -55C podemos obtener -550mV y si fuera
de 150C la salida seria 1500mV. Este voltaje es el que se
inserta al PIC 18F4550 el cual a travs de su conversor A/D
mostrara los datos en el Lcda. La alimentacin es de 5 volts.
No se hizo uso de amplificadores, solo fue necesario el uso de
una cuantas multiplicaciones dentro del cdigo el cual fue
hecho en MikroC. El esquema del Circuito es el siguiente:

El PIC18F4550 es un microprocesador de propsito general verstil


y econmico. Pertenece a la popular familia de procesadores
PICmicro de la empresa norteamericana Microchip cuya sede se
ubica en Chandler, Arizona (USA).

Fig 4.3 PIC18F4550 - empaquetado DIP-40


Lo particular del procesador PIC18F4550 es que es uno de los PICs
que viene con soporta nativo para USB, lo cual quiere decir que
incluyen un controlador USB interno que ya brinda patas de salida
para conectar directo a la PC, sin la necesidad de pull-ups o
ninguna circuitera externa.

Fig 4.4 Caractersticas del PIC


Soporta cristales y osciladores de varias frecuencias como entrada
y tiene post-scaler de manera que el procesador pueda trabajar a
una frecuencia de 48 MHz, independiente del oscilador que se
conecte. Para ello debe configurarse (a travs de los configuration
bits) el oscilador que se le ha conectado. Trabajar a 48 MHz es un
requisito para poder transferir a full-speed por el puerto USB. El
controlador USB, por lo tanto, transfiere a full-speed (1.5
Mbytes/seg) por USB y es compatible con el estndar USB 2.0.

Pinout
A continuacin se presenta el pinout del PIC18F4550, en
empaquetado DIP40. En particular se puede reconocer las pines Dy D+ de la conexin USB (pines 23 y 24).

Fig 4.5 Pinout del PIC18F4550

Los materiales a emplear:


-Sensor de Temperatura LM35
-Tarjeta de desarrollo para programaar el pic

-PIC18F4550
- XTal=4MHz
- Protoboard
-C1,C2=22p
F
-LCD=16x2

Diagrama del sensor LM35

Programa para el funcionamiento del


termmetro digital en lenguaje C

#include "18f4550.h"
#device adc=10 //Usa resolucin de 10 bits
#use delay(clock=4000000)
#fuses
xt,nowdt,noput,nobrownout,nolvp,noprot
ect
#include "lcd.c"
#use standard_io (D)

void main (void)


{
float temper,medicion;
lcd_init();
//Inicia LCD
lcd_putc("Termometro\n"); //Saca texto
lcd_putc("con LM35"); //Saca texto
delay_ms(2000);
lcd_putc("\f");
//Limpia pantalla
lcd_putc("by AnimalXXX\n"); //Saca
texto
delay_ms(2000);
lcd_putc("\f");
lcd_putc("Temperatura\n"); //Saca texto
lcd_putc("actual");
//Saca texto
lcd_gotoxy(18,2);
//Acomoda
cursor LCD lcd_putc("oC");
while (TRUE)
{
lcd_gotoxy(11,2); //Acomoda cursor LCD
lcd_putc(" "); //Limpia ese sector de
pantalla
lcd_gotoxy(11,2); //Acomoda cursor LCD

setup_adc (adc_clock_internal);
setup_adc_ports (all_analog);
set_adc_channel (0); //Elige canal a
medir RA0 delay_us (20);

medicion=read_adc (); //Hace


conversin AD setup_adc
(adc_off); //Apaga ADC
temper=medicion*(0.48875755327468230694037145650049); //Pasa binario a C
/////////////////////////////////////////////////////////////////
/////////////////
// el "0.48875755327468230694037145650049" sale de dividir 5/1023 y el
resultado
// de eso multiplicarlo por 100
// el 5 sale de los 5 voltios aplicado a el voltage de referencia, los
1023 salen // de los 10 bit de resolucion del conversor analogico
digital que seleccionamos. // Si utlizaramos la resolucion de 8 bist
del conversor analogico digital, la
// formula fuera (5/255)*100 ya que con 8 bits el numero maximo posible
es de 0255
/////////////////////////////////////////////////////////////////
/////////////////
lcd_gotoxy(13,2);
printf(lcd_putc,"%02.1f",temper); //xxx.x
C
delay_ms (1000);
}
}

Desarrollo del proyecto


Teniendo todos los materiales y programado el pic se dispuso
a montar el circuito en el protoboard. Quedando de la
siguiente manera.

Aplicacin
Este termmetro puede ser implementado para interiores,
Nosotros le damos un uso prctico para una oficina ya que
sensa la temperatura ambiente.
Nota: Una disculpa , de este proyecto no se tiene un video por
problemas tcnicos que tuve con mi computadora pero el
proyecto funciono en su totalidad.

Conclusin
El termmetro digital fue un interesante proyecto pues se
comprob la funcionalidad de cmo trasformar una seal
analgica a digital utilizando el pic 18F4550 y un programa que
se expone con anterioridad se logra el objetivo propuesto.

S-ar putea să vă placă și