Date post: | 09-Mar-2019 |
Category: | Documents |
View: | 233 times |
Download: | 0 times |
1
PETUNJUK PRAKTIKUM
MIKROKONTROLER
(AT89Sxx)
Disusun oleh : Sumarna
E-mail : [email protected]
JURUSAN PENDIDIKAN FISIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS NEGERI YOGYAKARTA
YOGYAKARTA 2005
2
PETUNJUK PRAKTIKUM MIKROKONTROLER
Disusun oleh : Sumarna, Jurdik Fisika, FMIPA, UNY (E-mail : [email protected])
Pengantar :
Munculnya mikrokontroler berawal dari kebutuhan akan suatu alat khusus yang dapat dijalankan secara otomatis, praktis, dan memiliki kemampuan untuk melaksanakan perintah-perintah yang diinginkan. Dalam hal penggunaannya, mikrokontroler lebih banyak diaplikasikan secara deterministik, yaitu dipakai untuk keperluan khusus (pada umumnya sebagai pengendali). Perkembangan teknologi semikonduktor memungkinkan untuk memenuhi kebutuhan tersebut. Bagian fungsional utama suatu mikrokontroler adalah CPU / Mikroprosesor (yang berisi ALU, unit kendali, register, dan pengkode), Memori dan Sistem I/O. Ketiga bagian tersebut secara fungsional (dengan fungsi masing-masing) membentuk satu sistem mikrokontroler dan berada di dalam satu chip. Jadi, sebuah mikroprosesor yang digabungkan dengan I/O dan memori (RAM,ROM) dalam satu chip itulah yang dikenal sebagai mikrokontroler.
Mengapa memilih AT89S51 ?
Untuk aplikasi dan keperluan belajar, di pasaran banyak tersedia pilihan chip mikrokontroler. Salah satu pilihan tersebut adalah AT89S51 buatan ATMEL. Beberapa pertimbangan memilih mikrokontroler tersebut antara lain : a. Murah. b. Sebagai model. c. Populer di kalangan masyarakat khususnya mahasiswa. d. Cocok untuk menangani data dengan durasi detik. e. Kompatibel dengan mikrokontroler buatan INTEL MCS-51 dan buatan
ATMEL sendiri seperti AT89C51/52/53, AT89S8252. f. Memiliki Flash memory dengan cara dan alat perograman yang sederhana g. Aplikatif.
Sekilas mengenai MIKROKONTROLER AT89S51 :
Fasilitas yang terdapat di dalam chip mikrokontroler AT89S51 yang pokok di antaranya adalah : a. Empat (4) port paralel I/O yang masing-masing berukuran 8 bit (P0, P1, P2,
dan P3). b. Dua (2) sistem Timer/Counter (T0 dan T1) c. Dua (2) sistem Interupsi (INT0 dan INT1). d. Sepasang kendali komunikas (RXD dan TXD). e. RAM 8 x 128 byte dan Flash memory 4 Kbyte.
3
Letak dan macam pin-pin fungsional chip mikrokontroler AT89S51 yang bertipe DIP-40 tampak pada gambar berikut :
Memori dan Register : Selain pengetahuan persambungan dalam hardware, pemahaman akan peta memori dan register di dalam chip AT89S51 memiliki peran yang sangat penting dalam proses penyusunan program. Register terletak di dalam CPU (mikroprosesor) dan pada umumnya berguna untuk menampung data sementara. Selain untuk menampung data sementara, ada register yang berfungsi sebagai tempat terjadinya operasi aritmatik dan logik, yaitu register accumulator (register A). Memori (berupa ROM atau RAM) berguna sebagai tempat untuk menampung data dan instruksi yang terletak di luar CPU (mikropsosesor). AT89S51 memiliki struktur memori yang terdiri atas :
1. RAM Internal, biasanya digunakan untuk menyimpan variabel atau data yang bersifat sementara. Di dalam RAM internal terdapat 8 (delapan) Bank Register dengan mnemonik R0, R1, R2, R3, R4, R5, R6, dan R7. Delapan buah register pertama terletak pada alamat 00 h hingga 07 h dan membentuk Bank 0 (sebagai default). Posisi R0 s/d R7 dapat dipindahkan ke bank yang lain dengan mengatur bit RS0 dan RS1. Bank 1 beralamatkan
Vcc
P0.0 (AD0)
P0.1 (AD1)
P0.2 (AD2)
P0.3 (AD3)
P0.4 (AD4)
P0.5 (AD5)
P0.6 (AD6)
P0.7 (AD7)
EA/VPP
ALE/PROG
PSEN
P2.7 (A15)
P2.6 (A14)
P2.5 (A13)
P2.4 (A12)
P2.3 (A11)
P2.2 (A10)
P2.1 (A9)
P2.0 (A8)
P1.0
P1.1
P1.2
P1.3
P1.4
(MOSI) P1.5
(MISO) P1.6
(SCK) P1.7
RST
(RXD) P3.0
(TXD) P3.1
(INT0) P3.2
(INT1) P3.3
(T0) P3.4
(T1) P3.5
(WR) P3.6
(RD) P3.7
XTAL2
XTAL1
GND
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
4
08 h s/d 0F h. Bank 2 terletak pada alamat 10 h s/d 17 h, dan bank 3 menempati alamat 18 h s/d 1F h. R0 dan R1 adalah dua buah register yang dapat digunakan sebagai pointer dari sebuah lokasi memori pada RAM internal tersebut. Di dalam RAM internal pada alamat 20 h hingga 2F h dapat diakses dengan cara pengalamatan bit sehingga hanya dengan sebuah instruksi setiap bit dalam daerah ini dapat di-set, di-clear, di-AND dan di-OR. Di dalam RAM internal juga terdapat RAM untuk keperluan umum yang dimulai dari alamat 30 h hingga 7F h.
2. SFR (Special Function Register), berisi register-register yang memiliki fungsi
khusus yang disediakan oleh chip AT89S51. SFR terletak pada alamat antara 80 h hingga FF h. Berikut ini disampaikan daftar register di dalam chip AT89S51 dengan fungsi khusus (SFR : Special Function Register).
No. Register Mnemonic Alamat
1. Akumulator A atau ACC E0 h
2. B B F0 h
3. Port 0 P0 80 h
4. Port 1 P1 90 h
5. Port 2 P2 A0 h
6. Port 3 P3 B0 h
7. Interupt Enable IE A8 h
8. Stack Pointer SP 81 h
9. Data Pointer (total) DPTR 82 h 83 h
10. Data Pointer Low Byte DPL 82 h
11. Data Pointer High Byte DPH 83 h
12. Power Control PCON 87 h
13. Timer/Counter Control TCON 88 h
14. Timer/Counter Control Mode TMOD 89 h
15. Timer/Counter 0 Low Byte TL0 8A h
16. Timer/Counter 1 Low Byte TL1 8B h
17. Timer/Counter 0 High Byte TH0 8C h
18. Timer/Counter 1 High Byte TH1 8D h
19. Serial Port Control SCON 98 h
20. Serial Data Port SBUF 99 h
21. Interupt Control Priority IP B8 h
22. Program Status Word PSW D0 h
3. Flash PEROM (Programmable and Erasable ROM), digunakan untuk
menyimpan program aplikasi yang disusun oleh pemrogram. Flash PEROM tersebut dapat ditulis atau dihapus berulang-ulang (1000 kali) menggunakan perangkat pemrogram (downloader), misalnya dengan AEC_ISP. Program yang ada dalam Flash PEROM dapat dijalankan jika pada saat sitem di-reset, maka pena EA/VPP berlogika 1 (satu).
5
Peta Lokasi di dalam RAM AT89S51 :
7F 30
RAM Keperluan Umum
2F 7F 7E 7D 7C 7B 7A 79 78
2E 77 76 75 74 73 72 71 70
2D 6F 6E 6D 6C 6B 6A 69 68
2C 67 66 65 64 63 62 61 60
2B 5F 5E 5D 5C 5B 5A 59 58
2A 57 56 55 54 53 52 51 50
29 4F 4E 4D 4C 4B 4A 49 48
28 47 46 45 44 43 42 41 40
27 3F 3E 3D 3C 3B 3A 39 38
26 37 36 35 34 33 32 31 30
25 2F 2E 2D 2C 2B 2A 29 28
24 27 26 25 24 23 22 21 20
23 1F 1E 1D 1C 1B 1A 19 18
22 17 16 15 14 13 12 11 10
21 0F 0E 0D 0C 0B 0A 09 08
20 07 06 05 04 03 02 01 00
1F 18
Bank-3
17 10
Bank-2
0F 08
Bank-1
07 00
Bank-0 Default bank register
Untuk R0 R7
Alamat Byte Alamat Bit
RAM
Lokasi yang dapat dialamati secara bit
6
Peta Lokasi di dalam SFR AT89S51 :
FF
F0 F7 F6 F5 F4 F3 F2 F1 F0 B
E0 E7 E6 E5 E4 E3 E2 E1 E0 A
D0 D7 D6 D5 D4 D3 D2 - D0 PSW
B8 - - - BC BB BA B9 B8 IP
B0 B7 B6 B5 B4 B3 B2 B1 B0 P3
A8 AF - - AC AB AA A9 A8 IE
A0 A7 A6 A5 A4 A3 A2 A1 A0 P2
99 Tidak dapat dialamati secara bit SBUF
98 9F 9E 9D 9C 9B 9A 99 98 SCON
90 97 96 95 94 93 92 91 90 P1
8D Tidak dapat dialamati secara bit TH1
8C Tidak dapat dialamati secara bit TH0
8B Tidak dapat dialamati secara bit TL1
8A Tidak dapat dialamati secara bit TL0
89 Tidak dapat dialamati secara bit TMOD
88 8F 8E 8D 8C 8B 8A 89 88 TCON
87 Tidak dapat dialamai secara bit PCON
83 Tidak dapat dialamati secara bit DPH
82 Tidak dapat dialamati secara bit DPL
81 Tidak dapat dialamati secara bit SP
80 87 86 85 84 83 82 81 80 P0
Alamat Bit
Alamat Byte
Register Fungsi Khusus (SFR)
Nama Register
7
Driver
Port 0
Driver
Port 2
Driver
Port 3
Driver
Port 1
P0.0 P0.7 P2.0 P2.7
P3.0 P3.7 P1.0 P1.7
Latch
Port 0
Latch
Port 2
Latch
Port 1
Latch
Port 3
Register Alamat RAM RAM
ROM
Register
B
Akumulator
PSW /
Flag
Stack
Pointer
Interupsi, Port Serial dan
Pewaktu
OSC
Register
Instruksi
Kendali dan Pewaktu
PSEN
ALE
EA
RST
Register Alamat Program
Buffer
PC
PC
Incrementer
DPTR
ALU
Click here to load reader