• Tidak ada hasil yang ditemukan

BAB II TEORI DASAR DAN PENUNJANG. tersebut. Berikut ini penulis akan membahas tentang prinsip-prinsip dasar dari

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB II TEORI DASAR DAN PENUNJANG. tersebut. Berikut ini penulis akan membahas tentang prinsip-prinsip dasar dari"

Copied!
23
0
0

Teks penuh

(1)

BAB II

TEORI DASAR DAN PENUNJANG

Dalam membuat dan menganalisa suatu alat, sebaiknya dikuasai teori-teori dasar yang menunjang / berhubungan dengan alat yang akan dibuat atau dianalisa tersebut. Berikut ini penulis akan membahas tentang prinsip-prinsip dasar dari beberapa teori maupun komponen yang berkaitan dengan rangkaian.

2.1. Mikrokontroler.

Mikrokontroler merupakan suatu komponen elektronik yang didalamnya terdapat rangkaian mikroprocesor, memori (RAM/ROM) dan I/O, rangkaian tersebut terdapat dalam level chip atau biasa disebut single chip microcomputer. Pada mikrokontroler sudah terdapat komponen – komponen mikroprocesor dengan bus – bus internal yang saling berhubungan. Komponen – komponen tersebut adalah RAM, ROM, Timer, Komponen I/O Paralel dan Serial, dan Interrupt Kontroler.

Adapun keunggulan dari mikrokontroler adalah adanya sistem intrrupt. Sebagai perangkat kontrol penyesuaian, mikrokontroler sering disebut juga untuk menaikan respon semangat eksternal (intrrupt) diwaktu yang nyata. Perangkat tersebut harus melakukan hubungan switching cepat, menunda satu proses ketika adanya respon eksekusi yang lain.

(2)

2.2. Mikrokontroler AT89S51.

AT89S51 merupakan prosesor 8-bit dengan low power supply dan performansi tinggi yang terdiri dari CMOS dengan Flash Programmabel dan Erasable Read Only Memory (PEROM) sebesar 4 Kbyte didalamnya. Alat tersebut dibuat dengan menggunakan teknologi tinggi non-volatile berdensitas tinggi dari ATMEL yang kompatibel dengan keluarga MCS-51 buatan Intel yang merupakan standar industri. Dengan meggunakan flash memori, program dapat diisi dan dihapus secara elektrik, yaitu dengan memberikan kondisi – kondisi tertentu (high / low) pada pin – pinnya sesuai dengan konfigurasi untuk memperogram atau menghapus. Cara ini lebih praktis dibandingkan dengan menggunakan EPROM yang penghapusan program atau datanya menggunakan sinar ultraviolet. AT89S51 memiliki memory internal yaitu 128 byte RAM dan 4 Kbytes ROM, sehingga untuk menyimpan program yang ukurannya tidak melebihi 4 Kbyte tidak diperlukan lagi ROM eksternal. Dari 32-pin saluran input / output yang tersedia, 24 di antaranya digunakan untuk input / output paralel dan untuk sinyal kontrol yaitu pin P3.0 sampai P3.7. Sinyal control tersebut adalah WR, RD, T0, T1, INT0, INT1 dan 2-bit saluran input / output serial yaitu RXD dan TXD.

Fasilitas yang tersedia pada AT89S51 antara lain:

a. 4 Kbytes Flash EEROM dengan kemampuan sampai 1000 kali tulis - hapus.

b. 128 x 8-bit internal RAM. c. 32-bit atau jalur Input / Output. d. 2 (dua) buah 16-bit Timer / Counter. e. 6 (enam) buah sumber interupsi.

(3)

f. Serial interface.

g. Kompatibel dengan prosesor MCS-51 buatan Intel Corp. h. Operasi klok antara 1 sampai 24 MHz.

Untuk lebih jelasnya dapat dilihat dari gambar 2.1 blok diagram mikrokontroler AT89S51 dibawah ini:

Gambar 2.1 Blok Diagram AT89S51

(4)

2.2.1. Fungsi – Fungsi Pin Mikrokontroler AT89S51.

Susunan pin atau kaki – kaki mikrokontroler AT89S51 dapat dilihat pada gambar 2.2 dibawah ini:

Gambar 2.2 konfigurasi Pin Mikrokontroler AT89S51

 Pin 1 sampai 8

Ini adalah port 1 yang merupakan saluran / bus I/O 8 bit dua arah, dengan internal pull-up yang dapat digunakan untuk berbagai keperluan. Pada port ini juga digunakan sebagai saluran alamat pada saat pemerograman dan verifikasi.

(5)

 Pin 9

Merupakan masukan reset (aktif tinggi), pulsa transisi dari rendah ketinggi akan mereset mikrokontroler ini.

 Pin 10 sampai 17

Ini adalah port 3 merupakan saluran / bus I/O 8 bit dua arah dengan internal pull-up yang memiliki fungsi pengganti, bila fungsi pengganti tidak dipakai, maka dapat digunakan sebagai port paralel 8 bit serbaguna. Selain itu sebagian dari port 3 dapat berfungsi sebagai sinyal kontrol pada saat proses pemerograman dan verivikasi. Adapun fungsi penggantinya seperti pada tabel 2.1 dibawah ini:

Tabel 2.1 Fungsi lain dari port 3 Port pin Alternate Functions

P3.0 RXD (untuk menerima data port serial) P3.1 TXD (serial output port)

P3.2 INT0 (eksternal intrrupt 0) P3.3 INT1 (eksternal intrrup 1) P3.4 T0 (timer 0 eksternal input) P3.5 T1 ( timer 1 eksternal input)

P3.6 WR (eksternal data memory write strobe) P3.7 RD (eksternal data memory read strobe)

 Pin 18 sampai 19

Ini merupakan masukan ke penguat osilator berpenguat tinggi. Pada mikrokontroler ini memiliki seluruh rangkaian osilator yang diperlukan pada serpih yang sama (on chip) kecuali rangkaian kristal yang mengendalikan

(6)

frekuensi osilator. Karenanya pin 18 dan 19 sangat diperlukan untuk dihubungkan dengan kristal. Selain itu XTAL 1 dapat juga sebagai input untuk inverting osilator amplifier dan input kerangkaian internal clock sedangkan XTAL 2 merupakan out put dari inverting osilator amplifier.  Pin 20

Merupakan ground sumber tegangan yang diberi simbol GND.  Pin 21 sampai 28

Ini adalah port yang merupakan saluran / bus I/O 8 bit dua arah dengan internal pull-up, saat pengambilan data dari program memori eksternal atau selama mengakses data memori eksternal yang menggunakan alamat 16 bit (MOVX @ DPTR), port 2 berfungsi sebagai saluran / bus alamat tinggi (A8 – A15). Sedangkan pada saat mengakses ke data memori eksternal yang menggunakan alamat 8 bit (MOVX @ R1), port 2 mengeluarkan isi dari P2 pada Special Function Register.

 Pin 29

Program Store Enable (PSEN) merupakan sinyal pengontrol untuk mengakses program memori eksternal masuk kedalam bus selama proses pemberian / pengambilan instruksi (fetching).

 Pin 30

Adress Latch Enable (ALE) / PROG merupakan penahanan alamat memori eksternal. Pin ini juga sebagai pulsa / sinyal input pemrograman (PROG) selama proses pemrograman.

(7)

 Pin 31

External Access Enable (EA) merupakan sinyal kontrol untuk pembacaan memori perogram. Apabila diset rendah (L) maka mikrokontroler akan melaksanakan seluruh intruksi dari memori program eksternal, sedangkan apabila diset tinggi (H) maka mikrokontroler akan melaksanakan intruksi dari memori program internal ketika isi program kurang dari 4096. ini juga berfungsi sebagai tegangan pemerograman (Vpp = + 12V) selama proses pemrograman.

 Pin 32 sampai 39

Ini adalah port 0 yang merupakan saluran / bus I/O 8 bit open colector, dapat juga digunakan sebagai multipleks bus alamat rendah dan bus data selama adanya akses ke memori program eksternal. Pada saat proses pemrograman dan verifikasi port 0 digunakan sebagai saluran / bus data. External pull-ups diperlukan selama proses verifikasi..

 Pin 40

Merupakan positif sumber tegangan yang diberi simbol Vcc.

2.2.2. Organisasi Memori.

Mikrokontroler AT89S51 memiliki memory program yang terpisah dari memory data, ruang memory program memiliki kapasitas 4 Kbyte flash EEROM (address 000h sampai FFFH).

(8)

Gambar 2.3 Organissi Memori

Gambar 2.3 memperlihatkan lokasi ROM internal. Lokasi ini dapat diakses jika pin EA = 1 atau diberi tegangan Vcc. Jika ukutan program melampaui 4 Kbyte, maka harus digunakan ROM eksternal yang alamatnya antara 0000h sampai FFFFh atau 64 Kbyte dan pin EA = 0 atau dihubungkan dengan ground. Jika dignakan EPROM eksternal, maka alamat memory program sama dengan alamat memory data, dengan kata lain 64 Kbyte dipakai bersama oleh program dan data.

Seperti telah disebutkan diatas, AT89S51 dapat membedakan alamat memory hingga 64 Kbyte, pengaksesan data ke memory data eksternal dilakukan dengan menggunakan data pointer melalui instruksi “MOVX”.

Di samping dapat mengakses RAM eksternal, mikrokontroler AT89S51 memiliki RAM internal yang pengaksesannya terpisah dengan RAM eksternal. RAM

Eksternal FFFFH EA=0 eksternal EA=0 internal FFFFH Eksternal FFH 00 0000 PSEN RD RW 0000

(9)

internal berkapasitas 128 byte ditambah sejumlah SFR (Special Function Register). Gambar 2.2.2 kanan memperlihatkan RAM internal yang memiliki alamat antara 00H – FFH. Alamat 80H sampai FFH dipakai oleh 2 kelompok register yang berbeda, yaitu kelompok register yang harus diakses dengan alamat langsung (direct addressing) antara 80H sampai FFH dan kelompok register yang harus diakses dengan alamat tak langsung (indirect addressin) atau dengan menyebut nama registernya bukan nomornya, misal ACC, B, P0, P1, TMOD dan seterusnya. Alamat RAM antara 00H sampai 7FH dapat diakses secara langsung (dengan menyebutkan nomor registernya) maupun tak langsung (dengan menyebutkan nama registernya). RAM internal AT89S51 terbagi atas 3 (tiga) bagian yaitu:

a. 32 byte atau 32 register yang terletak antara 00H sampi 1FH. Dikelompokan menjadi 4 register bank yang masing – masing terdiri dari 8 register dan diberi nama R0 sampai R7. masing – masing register dapat dialamatkan dengan nama ataupun dengan alamat RAM-nya. Bit RS0 dan RS1 pada register PSW di SFR menentukan bank mana yang sedang digunakan.

b. Daerah pengalamatan bit (bit addressable) yang terdiri dari 16 byte atau 16 register dengan alamat antara 20H sampai 2FH. Setiap bit pada areal ini dapat diakses secara terpisah tanpa mengganggu bit lainnya. Pengalamatan dapat menggunakan alamat register antara 20H sampai 2FH, sedangkan pengalamatan bit dapat dilakukan dengan menuliskan titik setelah alamat registernya, misal 20H. untuk bit MSB pada register 20H.

(10)

c. Daerah register penggunaan umum terletak dibagian atas RAM internal, yaitu alamat 30H sampai FFH.

2.2.3. Register.

Didalam setiap oprasinya mikrokontroler harus selalu menyertakan register sebagai salah satu operand atau tempat data yang akan dilibatkan dalam oprasi tersebut. Register adalah memory kecil berukuran 1 atau 2 byte, 8-bit atau 16-bit. Register akan menampung data sebelum diolah, register juga akan menampung data hasil olahan sementara sebelum dikembalikan atau dkirim ke BUS internal atau eksternal. Register – register yang ada di mikrokontroler AT89S51 adalah sebagai berikut:

 Register A, disebut juga sebagai akumulator (SFR alamat E0h) yaitu tempat akumulasi proses olah data.

 Register B, disebut juga Base Register (SFR alamat F0h). Register ini jarang dipakai karena hanya dipakai untuk oprasi perkalian dan pembagian saja.

 Bit Overflow (OV).

Bit ini menunjukan adanya kelebihan atau kekurangan bit pada oprasi penjumlahan atau pengurangan.

 Bit Parity (P).

Bit ini menunjukan paritas dari hasil oprasi, jika 1 maka hasil oprasinya adalah genap, dan jika 0 maka hasil oprasinya adalah ganjil.

(11)

 Power Control Register (PCON).

Register PCON berfungsi sebagai pengontrol mode kerja dari pada CPU. Register PCON ini tidak dapat dialamati per bit.

 Register Timer Mode (TMOD).

Register yang berfungsi sebagai pengontrol pemilihan mode oprasi untuk timer / counter. Sedangkan untuk pengontrol kerja timer / counter adalah timer Control register (TCON).

 Serial Control Register (SCON).

Register yang berfungsi untuk mengontrol kerja port serial. Port serial pada mikrokontroler AT89S51 bersifat full duplex, yang berarti dapat mengirim dan menerima data secara bersamaan. Register penerima dan pengirim pada port serial diakses pada SBUF (serial buffer).

 Program Counter (PC).

Pencacah program merupakan sebuah register 16 bit yang selalu menunjukan lokasi memori dari instruksi yang akan diakses.

 Stack Pointer (SP).

Stack Pointer merupakan sebuah register 16 bit yang mempunyai fungsi khusus sebagai penunjuk alamat atau data yang berada paling atas pada oprasi penumpukan di RAM. Penunjuk penumpukan selalu berkurang dua setiap kali data didorong masuk kedalam lokasi penumpukan dan selalu bertambah dua setiap kali data ditarik ke luar dari lokasi penumpukan.

(12)

 Programme Status Word.

Register ini berisi beberapa bit status yang mencerminkan keadaan mikrokontroler. Definisi dari bit – bit dalam PSW dijelaskan seperti berikut:

Tabel 2.2 bit – bit PSW

 Bit Carry Flag (CY).

Bit carry (bit ke – 8) mempunyai dua fungsi yaitu: pertama, carry akan menunjukan apakah oprasi penjumlahan mengandung carry (sisa) atau pada oprasi pengurangan mengandung borrow (kurang). Apabila oprasi ini mengandung carry, maka bit ini akan diset satu, sedangkan jika mengandung borrow, maka bit ini akan diset nol. Kedua, carry dimanfaatkan sebagai bit ke delapan untuk oprasi pergeseran (shift) atau perputaran.

 Bit Auxiliary Carry (AC).

Bit ini meunjukan adanya carry (bawaan) dari bit ketiga menuju bit keempat pada oprasi aritmatika atau dari empat bit rendah keempat bit tinggi. Bit ini jarang digunakan dalam program, tetapi digunakan oleh mikrokontroler secara implisit pada oprasi aritmatika bilangan BCD.

(13)

 Bit Flag 0 (F0).

Bit ini menunjukan apakah hasil oprasinya nol atau tidak. Apabila hasil oprasi adalah nol, maka bit ini diset 1, dan apabila hasil oprasinya adalah tidak nol maka bit ini akan diriset 0, bit ini juga digunakan pada perbandingan dua buah data. Bila kedua data sama maka akan diset 1 sedangkan jika kedua data tersebut berbeda maka akan di set 0.

 Bit register select (RS).

RS 0 dan RS 1 digunakan untuk memilih bank register. Delapan buah register ini merupakan register serbaguna. Lokasinya pada awal 32 byte RAM internal yang memiliki alamat dari 00H sampai 1FH. Register ini dapat diakses melalui simbol assembler (R0, R1, R2, R3, R4, R5, R6, dan R7). Pemilihan bank register dapat dilihat pada tabel 2.3 dibawah ini:

Tabel 2.3 Pemilihan Bank Register

RS1 RS2 Bank Register

0 0 0 00H – 07H

0 1 1 08H – 0FH

1 0 2 10H – 17H

1 1 3 18H – 1FH

Register RS 0 dan RS 1 dapat digunakan untuk pengalamatan tak langsung pada internal RAM.

(14)

 Unit Aritmatik Logic.

ALU (Aritmatik Logic Unit) berfungsi melaksanakan oprasi – oprasi aritmatik maupun logic, seperti penjumlahan, penguranan, oprasi OR, oprasi NAND dan sebagainya. Hasil oprasi tersebut selanjutnya disimpan kembali ke dalam accumulator. Oprasi yang terjadi pada ALU berhubungan erat dengan accumulator dan bit status pada regiter F / PSW.

 Sumber Pencacah Pewaktu AT89S51.

Mikrokontroler AT89S51 ini dilengkapi dengan sumber detak / osilator internal (on chip oscilator) yang dapat digunakan sebagai sumber clock bagi AT89S51. untuk menggunakan osilator internal diperlukan tambahan kristal atau resonator keramik antara pena XTAL 1 dan XTAL 2 dan sebuah kapasitor ke ground. Untuk kristalnya dapat digunakan frekuensi dari 3 sampai 24 MHz, sedangkan untuk kapasitornya dapat bernilai 33 pF. Bila menggunakan sumber clock eksternal maka CTAL 2 NC (No Connection) dan sumber dihubungkan XTAL 1.

 Interupsi.

Program yang sedang dijalankan oleh mikrokontroler AT89S51 dapat dihentikan untuk sementara dengan meminta interupsi, apabila AT89S51 mendapat perintah interupsi maka program counter (PC) akan diisi alamat dari vector interupsi, kemudian AT89S51 melaksanakan rutin pelayanan interupsi mulai dari alamat tersebut setelah selesai maka AT89S51 akan kembali ke pelaksanaan program

(15)

utama yang ditinggalkan. Mikrokontroler AT89S51 menyediakan 6 sumber interupsi yaitu 2 buah interupsi eksternal (INT 0 dan INT 1), 3 buah interupsi timer (timer 0, timer 1, dan timer 2), dan sebuah interupsi port serial.

Selain itu juga sebuah non makskable interrupt yaitu reset yang tdak dapat dihalangi oleh perangkat lunak, setiap sumber interupsi dapat diproram secara individual (sendiri – sendiri) baik pengaktifannya maupun prioritasnya. Untuk mengaktifkan atau menon aktifkan interupsi dikontrol oleh register IE (interrupt enable), sedangkan untuk tingkat prioritasnya diatur oleh register IP (interrupt priority).

Tabel 2.4 kapasitas memori mikrokontroler seri AT89xx

Type RAM Flash Memory EEPROM

AT89C51/AT89S51 8 X 128 Byte 4 Kbyte No AT89C52/At89S52 8 X 256 Byte 8 Kbyte No

AT89C55 8 X 256 Byte 20 Kbyte No

AT89S53 8 X 256 Byte 12 Kbyte No

AT89S8252 8 X 256 Byte 8 Kybte 2 Kbyte

 Pada tabel 2.4 terdapat 3 macam memori yaitu:

1. Randim Acsess Memory (RAM) adalah data yang dapat dibaca dan disimpan jika mikrokontroler mendapat supply.

2. Flash Memory adalah tempat penyimpanan data program yang hanya dapat dibaca pada waktu mikrokontroler sedang aktif.

(16)

3. EEPROM adalah tempat penyimpanan data yang dapat dibaca dan tulis pada saat mikrokontroler sedang bekerja dan bersifat secara permanen (tidak akan hilang meskipun mikrokontroler tidak mendapat supply).

2.3. Liquid Crystal Display (LCD).

Pada dasarnya LCD bekerja pada tegangan rendah biasanya 3 sampai 15 Vrms, frekuensi rendah 30 sampai 200 Hz sinyal AC, dan memakai arus listrik yang sangat kecil, LCD sering ditata sebagai tampilan 7-segment untuk menampilkan angka. Dibawah ini diperlihatkan gambar LCD:

2.3.1. Akses LCD.

Karena sistem mikrokontroler AT89S51 harus berinteraksi dengan manusia, seringkali sistem ini dilengkapi dengan display, display yang umum digunakan adalah LED (Light Emitting Diodes) 7-segment dan LCD (Liquid Crystal Display), meskipun murah, penggunaan LED (Light Emitting Diodes) 7-segment lebih sulit, selain hanya menampilkan angka desimal, jumlah bit output yang dibutuhkan juga cukup banyak, dan setiap digit memerlukan 4-bit tanpa pergiliran penyalaan, untuk menghidupkan 6-digit dibutuhkan 24-bit output, padahal AT89S51 hanya memiliki

(17)

32-bit input / output. Penghematan pin dapat dilakukan dengan cara menggilir penyalaan digit. Pada satu saat hanya satu digit saja yang dinyalakan dan lamanya satu putaran tidak lebih dari 40 ms, tetapi cara seperti ini merepotkan AT89S51. untuk urusan display saja AT89S51 harus sibuk terus menerus melakukan penyegaran display.

Pilihan lainnya untuk display adalah penggunaan LCD, telah tersedia beragam ukuran LCD, mulai dari 2 baris kali 16 karakter sampai 4 baris kali 24 karakter, setiap karakter terdiri dari 5 x 8 atau 5 x 10 titik, sehingga yang ditampilkan bukan hanya angka desimal saja, tetapi juga huruf latin dan lambang lainya termasuk huruf kanji. Salah satu standar LCD yang dapat berkomunikasi dengan mikrokontroler adalah HD44780U. Standar LCD ini cukup populer digunakan untuk display pada beragam sistem mikrokontroler termasuk AT89S51. untuk berkomunikasi dengan modul LCD jenis ini, AT89S51 hanya membutuhkan 7 atau 11 pin input / output, berapun ukuran LCDnya.

2.3.2. Fungsi – Fungsi Pin LCD.

Pada tabel 2.5 memperlihatkan fungsi – fungsi pin pada konektor antara LCD dengan mikrokontroler AT89S51. kolom pertama adalah nomor pin pada konektor tersebut, kolom kedua adalah simbol atau nama pin tersebut, kolom ketiga adalah fungsi dari pin tersebut.

Dari 16 pin tersebut, 8-pin diantaranya digunakan untuk menerima dan mengirimkan data dari mikrokontroler ke LCD, yaitu pin DB0 sampai DB7. sedangkan 3-pin lainnya digunakan untuk kendali oprasi, pin RS digunakan oleh sistem prosesor untuk memberi tahu LCD, apakah informasi biner yang diletakan di

(18)

DB0 sampai DB7 merupakan instruksi atau data. Jika RS = LOW, berarti informasi biner tersebut adalah instruksi, tetapi jika RS = HIGH, berarti informasi tersebut adalah data. Pin R/W digunakan oleh sistem prosesor untuk memberi tahu LCD, apakah prosesor ingin mengirim (R/W = LOW) atau membaca (R/W = HIGH) data dari LCD. Pin E digunakan oleh sistem prosesor untuk memberi tahu LCD agar memulai memproses sinyal yang diberikan oleh prosesor, ditandai dengan peralihan kondisi pin E dari HIGH menjadi LOW.

Khusus untuk pin DB7, selain untuk transfer informasi biner, pin ini juga dapat berfungsi untuk memberitahu sistem prosesor bahwa LCD masih sibuk belum siap menerima instruksi berikutnya.

Tabel 2.5 Fungsi Konektor LCD

PIN Name Function

1 Vss Ground Voltage 2 Vcc +5V 3 VEE Contrast Voltage 4 RS Register Select 0 = Intruction Register 0 = Data Register

5 R/W Read / Write, to Chooses Write or Read mode 0 = Write mode

1 = Read mode

6 E Enable

0 = Start to lacht data to LCD character 1 = disable

7 DB0 LSB

8 DBI

-9 DB2

(19)

-11 DB4

-12 DB5

-13 DB6

-14 DB7 MSB

15 BPL Back Plane Light

16 GND Ground Voltage

Contoh : konfigurasi hardware

Pada contoh berikut ini akan diperlihatkan contoh sambungan hardware antara mikrokontroler AT89S51 dengan modul LCD. Pada gambar 2.4 dibawah ini diperlihatkan contoh sambungan, terdapat 8-pin data dan 3-pin kendali.

Gambar 2.5 contoh koneksi antara AT89S51 dengan LCD

Untuk memudahkan penulisan program, pada bagian deklarasi program nama – nama pin prosesor yang dihubungkan dengan modul LCD disesuaikan dengan fungsinya, misalnya deklarasi sebagai berikut:

DB0 EQU P1.0 DB1 EQU P1.1 DB2 EQU P1.2 DB3 EQU P1.3 P3.7 P3.6 P3.5 AT89S51 P1.0 – P1.7 E RS R/W LCD Module DB0– DB7

(20)

DB4 EQU P1.4 DB5 EQU P1.5 DB6 EQU P1.6 DB7 EQU P1.7 EN EQU P3.7 RS EQU P3.6 RW EQU P3.5

2.3.3. Pengiriman Data / Instruksi ke LCD.

Informasi yang dikirimkan ke LCD dapat berupa data maupun instruksi. Jika prosesor ingin memberi tahu LCD bahwa informasi yang diletakannya di 8 pin data instruksi adalah instruksi, maka pin RS dibuat LOW, sedangkan jika pin RS ini dibuat HIGH, berarti informasi biner tersebut adalah instruksi, seperti dapat dilihat pada gambar 2.5.

Setiap pengiriman 1-byte informasi dari prosesor ke modul LCD harus ditandai dengan peralihan kondisi pin E dari HIGH menjadi LOW. Segera setelah peralihan pin E ini, modul LCD akan memproses informasi biner tersebut, karena modul LCD memerlukan waktu tertentu untuk memproses kiriman data / instruksi dari prosesor, maka sebelum pengiriman informasi tersebut. Prosesor harus memastikan kesiapan modul LCD untuk menerima kiriman byte baru, kecuali saat pengiriman 4-byte pertama saat inisialisasi, keseiapan LCD menerima kiriman informasi biner dapat diketahui dengan pembacaan DB7.

Untuk memberikan perintah pada LCD sangat mudah. Caranya dengan mengkopi perintah yang dimaksud ke akumulator kemudian memanggil subrutin

(21)

”tulis perintah LCD”. Begitu pula dengan memberikan data pada LCD, yaitu dengan mengkopi data ke akumulator kemudian memanggil subrutin ”tulis data LCD”. Contoh:

MOV A, #00000001B ; kosongkan display

CALL TULIS_ PERINTAH_LCD

Sedangkan flowchart-nya adalah sebagai berikut:

KOPI XXXXXXXXB KE AKUMULATOR KOPI XXXXXXXXB KE AKUMULAOTR PANGGIL SUBRUTIN TULIS_PERINTAH_LCD PANGGIL SUBRUTIN TULIS_DATA_LCD RETRY RETRY Gambar 2.6 Flowchart LCD

(22)

Sedangkan subrutin tulis_perintah_lcd dan tulis_data_lcd adalah sebagai berikut:

TULIS_DATA_LCD:

MOV PIN_DATA_LCD,A ; Kopi data di A ke pin_data_lcd

SETB PIN_RS ; menandakan bahwa ini data

CLR PIN_RW ; menandakan pada mode write

NOP ; tunda beberapa waktu

SETB PIN_E ; laksanakan

NOP ; tunda

NOP ; tunda

CLR PIN_E ; selesai

CALL DLY10MS

RET ; kembali lompat keinstruksi pemanggil

TULIS_PERINTAH_LCD:

MOV PIN_DATA_LCD,A ; Kopi data di A ke pin_data_lcd

SETB PIN_RS ; menandakan bahwa ini data

CLR PIN_RW ; menandakan pada mode write

NOP ; tunda beberapa waktu

SETB PIN_E ; laksanakan

NOP ; tunda

NOP ; tunda

CLR PIN_E ; selesai

CALL DLY10MS

(23)

2.4. Tombol.

Pada tombol dirancang terhubung dengan Pin IC dan ground. Artinya jika tombol ditekan maka pin tersebut berkondisi LOW (Active Low). Sehingga flowchart-nya adalah:

:

Sedangkan subrutinnya menjadi sebagai berikut:

SCAN TOMBOL:

JNB TOMBOL_PENGIRIM_DITEKAN

JNB TOMBOL_DATA A_DATA A_DITEKAN

JNB TOMBOL_DATA B_DATA B_DITEKAN

RET

Gambar 2.7 Flowchart scan tombol

Tombol Pengirim Low? Tombol Data A Low? Tombol Data B Low? Lompat ke subrutin Pengirim_ditekan Lompat ke subrutin Data A_ditekan Lompat ke subrutin Data B_ditekan

Gambar

Gambar 2.1 Blok Diagram AT89S51
Gambar 2.2 konfigurasi Pin Mikrokontroler AT89S51
Tabel 2.1 Fungsi lain dari port 3 Port pin Alternate Functions
Gambar 2.3 Organissi Memori
+7

Referensi

Dokumen terkait

Keuntungan (kerugian) dari perubahan nilai aset keuangan dalam kelompok tersedia untuk

Penelitian ini bertujuan untuk mengetahui inventarisasi faktor internal yang menjadi kekuatan, kelemahan, dan faktor eksternal yang mejadi peluang dan ancaman yang

Tujuan dari penelitian ini adalah (1) untuk mendeskripsikan tentang respon siswa terhadap penerapan metode pembelajaran demonstrasi di kelas VIII SMP Negeri 9 Kota

Sirkuit buffer tegangan menyediakan sarana untuk mengisolasi sinyal input dari beban menggunakan rangkaian yang memiliki amplifieran tegangan satu kali, tanpa

Analisis aliran daya sangat dibutuhkan pada suatu jaringan tenaga listrik transmisi maupun distribusi. Tujuan dari analisis aliran daya antara lain untuk memperoleh

Pengaruh Pemberian Ekstrak Daun Sirih Merah (Piper crocatum) terhadap Ekspresi IL-1 dan Aktivitas Protease Jaringan Paru pada Tikus (Rattus norvegicus) Model Asma yang diinduksi

Loop-mediated Isothermal Amplification (LAMP) merupakan metoda amplifikasi DNA dan RNA yang sederhana, cepat, spesifik dan murah dan menggunakan taq polymerase yang

1. Tuntutan kompetensi lulusan Sekolah Menengah Pertama dilihat dari soal – soal ujian nasional dua tahun terakhir termuat dalam sejumlah 34 kompetensi dasar dari sejumlah 59