P1.0 P1.1
P1.2 P1.3
P1.4 P1.5
P1.6 P1.7
RST P3.0RX0
P3.1TX0 P3.2INT0
P3.3INT1 P3.4T0
P3.5T1 P3.6WR
P3.7RD XTAL2
XTAL1 GND
P2.7A16 P2.6A14
P2.5A13 P2.4A12
P2.3A11 P2.2A10
P2.1A9 P2.0A8
PSEN ALEPROG
EAVPP P0.7AD7
P0.6AD6 P0.5AD5
P0.4AD4 P0.3AD3
P0.2AD2 P0.1AD1
P0.0AD0 VCC
AT89S51
40 39
38 37
36 35
34 33
32 31
30 29
28 27
26 25
24 23
22 21
20 19
18 17
16 15
14 13
12 11
10 9
8 7
6 5
4 3
2 1
2 1
Xtal 12 MHz
10kohm 10uF
4.7kohm 5V
VCC
33pF 33pF
3.3 Rangkaian Mikrokontroler AT89S51
Rangkaian minimum mikrokontroler AT89S51 ditunjukkan pada gambar 4.2 berikut ini :
Gambar 3.3 Rangkaian minimum AT89S51 Pin 29 merupakan PSEN Program Store Enable dan pin 30 sebagai Address Latch
Enable ALEPROG dihubungkan ke ground diset low, sedangkan Pin 31 External Access Enable EA diset high H. Ini dilakukan karena mikrokontroler AT89S51 tidak menggunakan
memori eksternal. Pin 18 dan 19 dihubungkan ke XTAL 12 MHz dan capasitor 33 pF. XTAL ini akan mempengaruhi kecepatan mikrokontroler AT89S51 dalam mengeksekusi
setiap perintah dalam program. Pin 9 merupakan masukan reset aktif tinggi. Pulsa transisi dari rendah ke tinggi akan me-reset mikrokontroler ini. Pin 32 sampai 39 adalah Port 0 yang
merupakan saluranbus IO 8 bit open collector dapat juga digunakan sebagai multiplex
bus alamat rendah dan bus data selama adanya akses ke memori program eksternal. Karena fungsi tersebut maka Port 0 dihubungkan dengan resistor array. Pin 20 merupakan ground
dihubungkan dengan ground pada power supplay. Pin 40 merupakan sumber tegangan positif dihubungkan dengan + 5 volt dari power supplay.
3.4 Rangkaian Display Seven Segment
Nilai temperatur yang terdeteksi oleh sensor temperatur LM35 diubah menjadi 8-bit data biner oleh ADC kemudian diolah oleh mikrokontroler AT89S51 untuk selanjutnya
ditampilkan pada 3-digit seven segmen. Rangkaian display seven segmen tampak seperti gambar di bawah ini :
Gambar 3.4 Rangkaian Display Seven Segmen
Display ini menggunakan 3 buah seven segmen yang dihubungkan ke IC 4094 yang merupakan IC serial to paralel. IC ini akan merubah 8 bit data serial yang masuk menjadi
keluaran 8 bit data paralel. Rangkaian ini dihubungkan dengan P3.0 dan P3.1 AT89S51. P3.0
S E V E N _ S E G _ D I S P L A Y
A B C DE F G
In Cl
o c
k O
ut D6
D5 D4
D3 D2
D1 D0
4 0 9 4
D7
2 3
10 14
13 12
11 7
6 5
4
S E V E N _ S E G _ D I S P L A Y
A B C DE F G
In Cl
o c
k O
ut D6
D5 D4
D3 D2
D1 D0
4 0 9 4
D7
2 3
10 14
13 12
11 7
6 5
4
S E V E N _ S E G _ D I S P
A B C DE F G
In Cl
o c
k O
ut D6
D5 D4
D3 D2
D1 D0
4 0 9 4
D7
2 3
10 14
13 12
11 7
6 5
4
5 V
V C C
i i
i
P 3 . 0 A T 8 9 S 5 1 P 3 . 1 A T 8 9 S 5 1
merupakan fasilitas khusus pengiriman data serial yang disediakan oleh mikrokontroler AT89S51. Sedangkan P3.1 merupakan sinyal clock untuk pengiriman data serial.
Dengan menghubungkan P3.0 dengan IC serial to paralel IC 4094, maka data serial yang dikirim akan diubah menjadi data paralel. Kemudian IC 4094 ini dihubungkan dengan
seven segmen agar data tersebut dapat ditampilkan dalam bentuk angka. Seven segmen yang digunakan adalah aktip low, ini berarti segmen akan hidup jika diberi data low 0 dan segmen
akan mati jika diberi data high 1. Untuk menampilkan angka pada seven segmen, maka data yang harus diberikan adalah sebagai berikut:
• Untuk menampilkan angka nol, data yang harus dikirim adalah
20h Untuk menampilkan angka satu, data yang harus dikirim adalah
0ech Untuk menampilkan angka dua, data yang harus dikirim adalah
18h •
Untuk menampilkan angka tiga, data yang harus dikirim adalah 88h
• Untuk menampilkan angka empat, data yang harus dikirim adalah
0c4h •
Untuk menampilkan angka lima, data yang harus dikirim adalah 82h
• Untuk menampilkan angka enam, data yang harus dikirim adalah
02h •
Untuk tampilan kosong tidak ada nilai yang tampil, data yang harus dikirim adalah 0ffh
Program untuk menampilkan angka pada display seven segmen adalah sebagai berikut: bil0 equ 20h
bil1 equ 0ech bil2 equ 18h
bil3 equ 88h bil4 equ 0c4h
bil5 equ 82h
bil6 equ 02h bilkosong equ 0ffh
mov 60h,bil1 mov 61h,bil2
mov 62h,bil3 Tampil:
mov sbuf,62h jnb ti,
clr ti mov sbuf,61h
jnb ti, clr ti
mov sbuf,60h jnb ti,
clr ti sjmp Tampil
Program di atas akan menampilkan nilai 123
pada display seven segmen. Dan nilai berapapun yang diisikan ke alamat
60h, 61h dan 62h akan ditampilkan pada display seven segmen.
3.5 Rangkaian Pengirim Data Melalui Infra Merah