Documente Academic
Documente Profesional
Documente Cultură
Proiect LM34
Proiect LM34
Microprocesoare i Microsisteme II
Atudorei Munteanu Gabriel
Grupa 6407
Prezentare general
1. Socluri DIP de 18, 28 i 40 de pini (dei sunt disponibile trei socluri, doar un singur dispozitiv poate fi
utilizat la un moment dat).
2. Surs stabilizat de +5 V, inclus pe plac, pentru alimentare direct de la un alimentator de 9 V, 100
mA sau o baterie de 9 V, i pini speciali pentru alimentare extern prin conectarea unei surse de tensiune
continu stabilizat de +5 V, 100 mA.
3. Conector DB9
i hardware-ul necesar asociat pentru implementarea unui port serial activ pentru conectare direct la o
interfa RS-232.
4. Conector ICD ( I n- Circuit Debugger ) pentru conectarea la MPLAB REAL ICE sau MPLAB
ICD2.
5. Poteniometru de 5 k folosit n aplicaii de conversie A/D n cazul dispozitivelor avnd intrri
analogice.
6. Trei comutatoare push-buton, dou pentru stimuli/comenzi externe i unul pentru Reset 2
7. Un LED care indic prezena tensiunii de alimentare.
8. Patru LED-uri conectate la PORTB al microcontrolerului.
9. Un jumper (J6) pentru deconectarea LED-urilor de la PORTB.
10. Oscilator cu cuar ncapsulat de 4 MHz.
11. Guri libere pentru conectarea unui cristal de cuar cu frecvena dorit de utilizator.
12. Cristal de cuar de 32,768 kHz pentru clock-ul circuitului Timer1.
13. Un jumper (J7) pentru deconectarea oscilatorului RC de pe plac (de aproximativ 2 MHz).
14. EEPROM serial 32K x 8.
15. Afior cu cristale lichide (LCD).
16. Difuzor (buzzer ) piezoelectric comandat de semnalul PWM (impulsuri modulate n durat).
17. Arie prototip pentru hardware-ul utilizatorului.
18. Senzor de temperatur Microchip TC74.
Indicatoare
Patru LED-uri (D2 D5) sunt conectate la portul B al fiecrui tip de procesor (de 18, 28 sau 40 de pini).
Pinii portului B trebuie s fie setai pe nivel logic HIGH pentru a aprinde LED-urile. Aceste diode pot fi
deconectate de la portul B prin scoaterea jumper-ului J6. Un alt LED (D1) indic existena (LED aprins)
sau inexistena (LED stins) a tensiunii de alimentare a plcii PICDEM 2 Plus.
Surs de alimentare
Exist trei posibiliti de a asigura energia de alimentare pentru placa PICDEM 2 Plus:
O baterie de 9 V care poate fi conectat la J8.
surs nestabilizat de 9 V/100 mA de curent alternativ sau de curent continuu care poate fi
conectat la J2.
surs stabilizat de curent continuu de +5 V/100 mA care poate fi conectat la pinii speciali
prevzui pe plac.
Utilizatorii MPLAB ICD 2 pot folosi i ICD-ul pentru a alimenta placa (target device) la 5 V cu
pn la 200 mA, dac MPLAB ICD 2, la rndul su, este alimentat de la o surs nestabilizat de 9 V (vezi
detaliile de conectare PC ICD 2 Dispozitiv target n fiierul L A B P I C D E M 2
P l u s \ U s e r ' s G u i d e \ M P L A B I C D 2 \ U s i n g M P L A B I C D 2 P o s t e r ). Port serial RS-
232 Un circuit integrat translator de nivel i hardware-ul necesar (alctuind o interfa complet) asigur o
conexiune RS-232 gazd printr-un conector DB9. Portul este configurat ca DCE ( Data Communications
Equipment ) i poate fi conectat la un PC folosind un cablu cu conexiune direct. Pinii RX i TX ai
PIC16/PIC18 sunt legai la liniile RX i TX ale circuitului MAX232A.
ntreruptoare
Intrare analogic
Conector ICD
Prin itermediul conectorului modular (J5), MPLAB ICD 2 poate fi conectat pentru operaii de
programare/depanare n-circuit (in-circuit programming/debugging ), la costuri reduse. Pentru aceste
operaii, conectorul ICD utilizeaz pinii RB6 i RB7 ai microcontrolerului.
Senzor de temperatur
Acesta este un senzor digital serial de temperatur (TC74) care este conectat la microcontrolerele
avnd 28 sau 40 de pini prin intermediul pinilor RC3 i RC4. Comunicaia cu TC74 este realizat prin
intermediul portului serial pe dou fire, compatibil I2C, al microcontrolerului. Dispozitivul TC74 are
adresa binar1001101
.
EEPROM serial
Un EEPROM serial 24L256 de 256 Kbii (32K x 8) este inclus pe plac pentru a ilustra conceptul
bus-ului I2C.
Afior LCD
Un afior LCD, cu dou linii a cte 16 caractere fiecare, este conectat la soclul cu 40
de pini.Comunicaia cu microcontrolerul se realizeaz pe trei linii de control (RD6:RD4) i patru linii de
date (RD3:RD0).
Dispozitive eantion
Unul din cele dou dispozitive eantion livrate cu kit-ul, programat cu un program tutorial
demonstrativ, este montat n placa PICDEM 2 Plus. Tabelul 2.1 listeaz caracteristicile de intrare/ieire
i conexiunile la porturi pentru fiecare tip de procesor (n funcie de numrul pinilor).
Echiparea i schemele plcii
Amplasarea componentelor plcii demonstrative PICDEM 2 Plus este prezentat n Fig. 2.2 iar
schemele circuitelor sunt prezentate n Fig. 2.3 i Fig. 2.4
Carateristici
Calibrare direct in grade Fahrenheit
Factor scalar liniar +10.0mV/oF
Precizie garantat de 1.0 oF
Interval de masurare cuprins intre -50o i +300oF
Convenabil pentru aplicaii telecomandate
Funcioneaz de la 5 la 30 V
Nivel sczut de inclzire 0.18of in aer liber
Impredan scazut la ieire
Caracteristici de performan tipice
Aplicaii tipice
Dimensiuni fizice
LM34 poate fi aplicat cu uurin n acelai mod ca i ali senzori de temperatur cu circuit
integrat. Acesta poate fi lipit sau "cimentat" pe o suprafa i temperatura acestuia se va ncadra
aproximativ 0,2 C fa de temperatura de suprafa. Aceasta presupune c temperatura aerului
nconjurtor este aproape la fel ca temperatura de suprafa; dac temperatura aierului este mai nalt sau
mai joas dect temperatura de suprafa, temperatura real a matriei LM34 ar fi la o temperatur
intermediar ntre temperatura suprafeei i temperatura aerului.
Pentru a asigura o conductibilitate termic bun spatele matriei LM34 este ataat direct la pinul
GND. Traseele LM34 s fie parte a plcii de circuit imprimat, care este obiectul a crui temperatur se
msoar.
Ecuaia de calcul al senzorului LM34
350
300
250
200
150
100
50
0
0 500 1000 1500 2000 2500 3000 3500 4000
-50
-100
(500)
t= t = 0,1 x 50
10
Temp_F=(value-500)/10;
Temp_C=(Temp_F-32)/2;
Partea de program pentru afiarea mrimii calculate pe UART i LCD.
#include <p18f452.h>
#include <delays.h>
#include "xlcd_OLD.h"
//#include "xlcd_NEW.h"
#include "adc.h"
#include "USART.h"
#include <math.h>
unsigned int x, y;
Init_ADC();
InitUSART(rata);
InitLCD();
Write_CString_USART(Mesaj_USART1);
while(1)
{
Delay10TCYx(5);
Start_ADC();
while(!Busy_ADC());
res=Read_ADC();
value=((Read_ADC())*5000.0)/1024;
Temp_F=(value-500)/10;
Temp_C=(Temp_F-32)/2;
if(Temp_F>=0)
{
x=(Temp_F-(int)(Temp_F))*100;
Write_CString_USART(Mesaj_USART7);
Write_U_INT_USART(Temp_F);
Write_CString_USART(virgula);
Write_U_INT_USART(x);
Write_CString_USART(CrLf);
DisplayC(Mesaj_LCD1);
Write_U_INT_LCD(Temp_F);
DisplayC(Mesaj_LCD6);
Write_U_INT_LCD(x);
}
else{
Temp_F=-Temp_F;
x=(Temp_F-(int)(Temp_F))*100;
Write_CString_USART(Mesaj_USART8);
Write_U_INT_USART(Temp_F);
Write_CString_USART(virgula);
Write_U_INT_USART(x);
Write_CString_USART(CrLf);
DisplayC(Mesaj_LCD5);
Write_U_INT_LCD(Temp_F);
DisplayC(Mesaj_LCD6);
Write_U_INT_LCD(x);
}
if(Temp_C>=0)
{
y=(Temp_C-(int)(Temp_C))*100;
Write_CString_USART(Mesaj_USART5);
Write_U_INT_USART(Temp_C);
Write_CString_USART(virgula);
Write_U_INT_USART(y);
Write_CString_USART(CrLf);
DisplayC(Mesaj_LCD2);
Write_U_INT_LCD(Temp_C);
DisplayC(Mesaj_LCD3);
Write_U_INT_LCD(y);
}
else{
Temp_C=-Temp_C;
y=(Temp_C-(int)(Temp_C))*100;
Write_CString_USART(Mesaj_USART6);
Write_U_INT_USART(Temp_C);
Write_CString_USART(virgula);
Write_U_INT_USART(y);
Write_CString_USART(CrLf);
DisplayC(Mesaj_LCD4);
Write_U_INT_LCD(Temp_C);
DisplayC(Mesaj_LCD3);
Write_U_INT_LCD(y);
}
Write_CString_USART(Mesaj_USART2);
Write_U_INT_USART(res);
Write_CString_USART(CrLf);
res=(int)((float)value);
Write_CString_USART(Mesaj_USART3);
Write_U_INT_USART(res);
Write_CString_USART(Mesaj_USART4);
Write_CString_USART(CrLf);
Read_Char_USART();
}
Close_ADC();
}
Temperatura minim la care senzorul LM34 funcioneaz este de -50o F