Artikel ini membahas tentang termometer digital sederhana 0-100 °C dengan 1 resolusi °C menggunakan 89S51. Rangkaian ini didasarkan pada sensor suhu LM35 analog, ADC0804 dan mikrokontroler AT89S51. LM35 adalah IC sensor suhu analog yang dapat mengukur suhu antara -55 sampai 150 °C.Tegangan output bervariasi 10mV per perubahan suhu °C .
Misalnya, jika suhu 32 °C, tegangan outputnya adalah 32 x 10mV = 320mV. ADC 0804 digunakan untuk mengkonversi tegangan output analog dari LM35 ke nilai 8 bit digital yang proporsional dan sangat sesuai dengan mikrokontroler. Mikrokontroler menerima output dari ADC, melakukan manipulasi diperlukan dan menampilkannya 2 digit numerik pada LED display seven segment.
Output LM35 dihubungkan ke + Vin (pin 6) dari ADC0804 tersebut. Resistor R12 dan R13 yang telah ditetapkan digunakan untuk memberikan tegangan referensi eksternal dari 1.28V ke Vref / 2 pin (pin 9) dari ADC0804 dan dengan tegangan referensi ini, ukuran langkah dari ADC akan 10mV dan rentang akan 0- 1 V. Ini berarti bahwa untuk input 10mV akan keluar digital dari ADC akan menjadi 1 (1 dalam desimal juga), untuk 20mV itu akan menjadi 10 (2 dalam desimal), untuk 30mV akan 11 (3 dalam desimal) dan sebagainya pada. Mikrokontroler menerima data ini dan menempatkan pada layar tujuh segmen.
Gambar Skematik sensor sugu menggunakan AT89S51, LM35 dan ADC0804
Digital dari ADC (D0 untuk D7) yang terhubung ke P1 (P1.0 ke P1.7) dari mikrokontroler. Ini adalah garis melalui mana mikrokontroler menerima data dari ADC. Pin kontrol CS, RD, WR dan INTR yang terhubung ke P3.7, P3.6, P3.5 dan P3.4 dari mikrokontroler. Ini adalah jalur data melalui mikrokontroler mengirimkan (RD) write (WR) sinyal ke ADC chip pilih (CS), membaca dan menerima sinyal INTR dari ADC. Jalur data (untuk h) dari multiplexing tampilan tujuh segmen yang dihubungkan ke P0 (P0.0 ke P0.7) dari mikrokontroler. Sinyal aktivasi untuk transistor driver segmen Q1 dan Q1 tersedia dari P3.1 dan P3.0 pin dari mikrokontroler.
Program.
ORG 00H MOV P1,#11111111B // initializes P1 as input port MOV P0,#00000000B // initializes P0 as output port MOV P3,#00000000B // initializes P3 as output port MOV DPTR,#LABEL // loads the address of "LABEL" to DPTR MAIN: MOV R4,#250D // loads register R4 with 250D CLR P3.7 // makes Cs=0 SETB P3.6 // makes RD high CLR P3.5 // makes WR low SETB P3.5 // low to high pulse to WR for starting conversion WAIT: JB P3.4,WAIT // polls until INTR=0 CLR P3.7 // ensures CS=0 CLR P3.6 // high to low pulse to RD for reading the data from ADC MOV A,P1 // moves the digital output of ADC to accumulator A MOV B,#10D // load B with 10D DIV AB // divides the content of A with that in B MOV R6,A // moves the quotient to R6 MOV R7,B // moves the remainder to R7 DLOOP:SETB P3.1 // sets P3.1 which activates LED segment 1 MOV A,R6 // moves the quotient to A ACALL DISPLAY // calls DISPLAY subroutine MOV P0,A // moves the content of A to P0 ACALL DELAY // calls the DELAY subroutine CLR A // clears A MOV A,R7 // moves the remainder to A CLR P3.1 // deactivates LED segment 1 SETB P3.0 // activates LED segment 2 ACALL DISPLAY MOV P0,A ACALL DELAY CLR A CLR P3.0 // deactivates LED segment 2 DJNZ R4,DLOOP // repeats the loop "DLOOP" until R4=0 SJMP MAIN // jumps back to the main loop DELAY: MOV R3,#255D // produces around 0.8mS delay LABEL1: DJNZ R3,LABEL1 RET DISPLAY: MOVC A,@A+DPTR // converts A's content to corresponding digit drive pattern RET LABEL: DB 3FH // LUT (look up table) starts here DB 06H DB 5BH DB 4FH DB 66H DB 6DH DB 7DH DB 07H DB 7FH DB 6FH END
Referensi
http://www.circuitstoday.com/thermometer-using-8051
Komponen yang diperlukan adalah :
IC
LM35
ADC0804
AT89S51 atau AT89S52
Display
7Segment Common anoda 2x
Resistor:
R1-8 = 330 ohm 8x
R9-10 = 100 ohm 2x
R11 = 8k2 1x
R12,14= 10k 2x
Trimport
R13 = 10K
Capasitor
C1 = 10uF/10v
C2 = 150pF
C3,4 = 10pF 2x
Cristal
12MHz 1x
Regulator LM7805 = 1x
LED merah = 1x
Dioda bridge 1 Amp = 1x
Resistor 470 = 1x
Jack DC Female = 1x
Timah 3 meter.
PCB Lubang 2,5mm 1 lembar ukuran +- (10 x 20 cm)
Soket IC DIP 40 pin (untuk AT89s51)
Soket IC DIP 20 pin (untuk ADC)
Komponen yang diperlukan adalah :
IC
LM35
ADC0804
AT89S51 atau AT89S52
Display
7Segment Common anoda 2x
Resistor:
R1-8 = 330 ohm 8x
R9-10 = 100 ohm 2x
R11 = 8k2 1x
R12,14= 10k 2x
Trimport
R13 = 10K
Capasitor
C1 = 10uF/10v
C2 = 150pF
C3,4 = 10pF 2x
Cristal
12MHz 1x
Regulator LM7805 = 1x
LED merah = 1x
Dioda bridge 1 Amp = 1x
Resistor 470 = 1x
Jack DC Female = 1x
Timah 3 meter.
PCB Lubang 2,5mm 1 lembar ukuran +- (10 x 20 cm)
Soket IC DIP 40 pin (untuk AT89s51)
Soket IC DIP 20 pin (untuk ADC)
Minta solusinya pak. Waktu saya pakai programnya kok ndka bisa
BalasHapus