Professional Documents
Culture Documents
MXICO
Facultad de Ingeniera
Microprocesadores y microcontroladores
Proyecto Final.
INTRODUCCIN
ML35
El sensor LM35, es un sensor de temperatura integrado de precisin cuyos rangos de
operacin oscilan desde los -55C hasta los 150C, teniendo en cuenta que este tipo
de sensores ofrecen una precisin de +- 1.4C a
temperatura ambiente. Adems de ello, son del tipo lineal;
es decir, que no es necesario forzar al usuario a realizar
conversiones debido a que otros sensores estn basados
en Kelvin.
Un LM35 puede funcionar a partir de los 5 V (en corriente continua), sea por
alimentacin simple o por doble alimentacin (+/-). Sus caractersticas ms
importantes se describen a continuacin:
Fig. 2 Diagrama
DESARROLLO
Los puertos E se habilitarn como salidas, los puertos K y M se usarn para mandar la
informacin a los Display.
Fig. 3 Lectura de variables unidades decenas y temperatura.
ELEMENTOS:
2 Display de 7 segmentos
1 Sensor LM35
Fig. 5 Diagrama esquemtico.
CDIGO USADO:
#include<stdint.h>
#include<stdbool.h>
#include "tmc129.h"
//habilitar reloj
SYSCTL_PLLFREQ0_R |= SYSCTL_PLLFREQ0_PLLPWR;
while(SYSCTL_PLLSTAT_R == 0);
SYSCTL_PLLFREQ0_R &=~SYSCTL_PLLFREQ0_PLLPWR;
//inicializar adc
ADC0_ACTSS_R &=~0x08;
ADC0_EMUX_R &=~0xf000;
ADC0_SSMUX3_R = 0x00;
ADC0_SSCTL3_R |= 0x06;
ADC0_ACTSS_R |= 0x08;
while(1)
{
ADC0_PSSI_R |= 0x08;
while((ADC0_RIS_R & 0x08 == 0));
resul = ADC0_SSFIFO3_R;
ADC0_ISC_R = 0x08;
temp=((25*resul)/310)-8;
d=temp/10;
salida(d);
PORTMDAT = r;
delayMs(150);
u=temp-(d*10);
salida(u);
PORTKDAT = r;
delayMs(150);
}
}
void GPOI_init(void)
{
NVIC_EN1_R = 0X400;
RCGCGPIO = 0x2E00;
}
/* retarda n milisegundos (16 MHz CPU clock) */
void delayMs(int n)
{
int i, j;
for(i = 0 ; i < n; i++)
for(j = 0; j < 3180; j++)
{} /* no hacer nada por 1 ms */
}
int salida(int t)
{
switch(t)
{
case 0:
r = 0b0111111; //0 0x3f 0111111
break;
case 1:
r = 0b0000110; //1 0x06 00000110
break;
case 2:
r = 0b1011011; //2 5c 010111011
break;
case 3:
r = 0b1001111; //3 4f 01001111
break;
case 4:
r = 0b1100110; //4 66 01100110
break;
case 5:
r = 0b1101101; //5 6d 01101100
break;
case 6:
r = 0b1111100; //6 7d 01111100
break;
case 7:
r = 0b0000111;//7 07 00000111
break;
case 8:
r = 0b1111111; //8 ff
break;
case 9:
r= 0b1100111; //9 67 01100111
break;
default:
r=0x00;
break;
}
return r;
}
CONCLUSIONES:
Se presentaron oscilaciones en la lectura del sensor debido a un falso en alguna de las
conexiones, ya que los Display tambin tienen ligeras fallas en su funcionamiento.
Este sistema no considera un sensor que soporte mayores temperaturas y no permita
una resolucin mayor, ya que el ADC de la TIVA resulto estar sobrado para este caso,
con una resolucin de 805 [uV] es muy preciso para la salida de 10 [mV] del LM35.
BIBLIOGRAFA
Jonathan W. Valvano Introduction to ARM CORTEX M Mocrocontrollers
Datasheet LM35