MESIN KETIK ELEKTRONIK DENGAN TAMPILAN M1632 LCD OLEH MODUL DST-52

dokumen-dokumen yang mirip
PENGGUNAAN KEYPAD 4X3 DAN PC KEYBOARD PADA MODUL DST-52 DENGAN TAMPILAN M1632 LCD

PENULISAN KARAKTER DENGAN MENGGUNAKAN TEKNIK PENULISAN PADA KEYPAD HANDPHONE OLEH MODUL DST-51, KEYPAD 4X3 DAN M1632 LCD

MENAMPILKAN 1000 KARAKTER PESAN PADA MODUL M1632 LCD OLEH MODUL DST-51

Aplikasi Modul InfraRed Object Detector Sebagai Pengukur Jarak

PENGHITUNG WAKTU DENGAN TAMPILAN LCD M1632 OLEH DST-51

Aplikasi Pengukur Ketinggian Air Mengunakan Modul Sensor InfraRed Object Detector

PENAMPIL TOMBOL-TOMBOL REMOTE CONTROL SONY PADA M1632 LCD OLEH MODUL DST-52

PROGRAMMABLE TIMER DENGAN TAMPILAN M1632 LCD MENGGUNAKAN MODUL DST-51

ANTAR MUKA M1632 LCD DENGAN MODUL DST-52 MENGGUNAKAN BAHASA C

Teknik Interface Keypad 4x3 ke DST-51

TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD

AD Channel AD Conversion

ANTAR MUKA DST-51 DENGAN MODUL AD-0809

APLIKASI MODUL DST -52 SEBAGAI JAM DIGITAL DENGAN INPUT DARI PC KEYBOARD DAN M1632 LCD SEBAGAI PENAMPIL

Wireless Infrared Printer dengan DST-51 (Pengambilan Data dari Standard Parallel Port)

Pengendalian 8 buah Motor oleh DST-51

Register-register MT8888

Antar Muka Modul RTC-1287 dengan Modul DST-51

PANDUAN PRAKTIKUM DASAR MIKROKONTROLER KELUARGA MCS-51 MENGGUNAKAN DT-51 MINIMUM SYSTEM VER 3.0 DAN DT-51 TRAINER BOARD

THERMOMETER DIGITAL DENGAN MODUL DST-51, ADC-0809 DAN LCD 2X16

DESKRIPSI SINGKAT INSTRUKSI-INSTRUKSI PADA AT89S51

AKSES MEMORI Menggunakan DT-51 MinSys

KOMUNIKASI DATA DENGAN MENGGUNAKAN TEKNIK RS485

PENGATURAN KECEPATAN MOTOR DENGAN PC OLEH DST-5 2

DASAR INPUT/OUTPUT (1) (PORT PPI DAN PORT 1 SEBAGAI OUTPUT)

Memprogram Port sebagai Output dan Input Sederhana

DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT)

DT-51 Application Note

DOWNLOAD BITMAP FILE KE LCD GRAFIK 240X64 PIXEL OLEH MODUL DST-51

Percobaan 5 PENGENALAN MIKROKONTROLER 8051

Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL

Percobaan 5. TIMER/COUNTER Menggunakan DT-51 MinSys

PORT PARALEL MIKROKONTROLER ATMEL AT89C51

Memprogram Interface Display

BAHASA PEMOGRAMAN AT89S/Cxx (assembly)

I/O dan Struktur Memori

LAMPIRAN D DATA SHEET

Akuisasi data dengan remote host AT89s51 melalui serial RS232

Percobaan 4. Mengakses built-in routine LCD pada DT-51 Minimum sistem. Membuat program untuk menampilkan karakter ASCII pada LCD.

Mengenal bahasa assembly

Daftar Isi. Trademarks & Copyright

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051

Trademarks & Copyright

Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode )

de KITS Application Note AN24 - How 2 Use de KITS Phone Interface with DT-51 MinSys ver 3.0

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

Gambar 1. Rangkaian interface ke LCD Karakter 2 x16

PORT SERIAL MIKROKONTROLER ATMEL AT89C51

BAB 13 INTERFACE KE PRINTER DOT MATRIKS

de KITS Application Note AN51 How 2 Use de KITS SPC Character LCD w/ PC

APLIKASI HITACHI M1632 LCD PADA SC - AVR

DT-51Application Note

Alarm Pintu, Harap Pintu Tutup Kembali, Jangan Buka Pintu Lama-lama versi 2

BAB 3 PERANCANGAN ALAT DAN PROGRAM

Antarmuka PC Keyboard dengan DST-AVR

BAB IV PENGUJIAN DAN ANALISA SISTEM

PERCOBAAN 9 T I M E R/ COUNTER

PERCOBAAN 15 I N T E R U P S I

de KITS Application Note AN9-8 Channel Temperature Display

PERCOBAAN 3. KONTROL DISPLAY 7-SEGMENT Menggunakan DT-51 MinSys

Daftar Isi. Trademarks & Copyright

INSTRUKSI DAN BAHASA PEMOGRAMAN MIKROKONTROLER

Reference Manual DST-51/2 V3.7

Menggunakan Bahasa Pemrograman Assembly

Percobaan 7 INTERFACE MIKROKONTROLER DAN MOTOR STEPPER

BAB IV ANALISA DAN HASIL UJI COBA RANGKAIAN

Universitas Sumatera Utara

APLIKASI MIKROKONTROLER

BAB 2 LANDASAN TEORI. Dalam bab ini penulis akan membahas tentang komponen-komponen yang

TIMER DAN COUNTER MIKROKONTROLER ATMEL

DAFTAR PUSTAKA. Agfianto Eko Putra, BELAJAR MIKROKONTROLLER AT89C51/52/53, Gava Media, 2005.

Memprogram Interupsi AT89S51

Percobaan 8 INTERFACE MIKROKONTROLER DAN KOMPUTER SECARA SERIAL

DT-BASIC Application Note

PETUNJUK PEMROGRAMAN DAN SET INSTRUKSI

TERJADI INTERRUPT MELAYANI INTERRUPT KEMBALI MENERUSKAN PROGRAM YANG TERHENTI PROGRAM YANG SEDANG BERJALAN. Gambar 4.1 Interrupt

4. Port Input/Output Mikrokontroler MCS-51

Antarmuka LCD pada DST-AVR

Percobaan 6. SERIAL INTERFACE Menggunakan DT-51 MinSys

DT-51 Application Note

Daftar Isi. Daftar Isi Pertemuan 6: Perintah Masukkan dari Keyboard P6.1. Teori Masukkan dari Keyboard... 3

INTERRUPT. Cara penggunaan int [no int]

INTRUKSI-INTRUKSI BAHASA PEMROGRAMAN ASSEMBLY

Memprogram Interface Motor

BAB III PERANCANGAN SISTEM

SISTEM PENGONTROLAN ALAT ELEKTRONIK DENGAN MEDIA KOMPUTER DAN MIKROKONTROLER AT89C51 MELALUI MEDIA KOMUNIKASI SERIAL PORT RS232

PERCOBAAN 2 SAKLAR PUSH BUTTON

Program Studi Fisika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Lambung Mangkurat

BAB II LANDASAN TEORI

PERCOBAAN 1 DISPLAY LED

DT-51 Application Note

DT-51 Application Note

MODUL 5 APLIKASI DISPLAY LCD

PEMBUATAN ALAT PRAKTIKUM MIKROKONTROLER (AT89S51)

DT-AVR Application Note

DT-51 Application Note

BAB IV PENGUJIAN DAN ANALISA DATA

SISTEM INTERUPSI MIKROKONTROLER ATMEL

DT-BASIC Application Note

TEKNIK MERANCANG APLIKASI DENGAN DST-UNI PROG

Transkripsi:

MESIN KETIK ELEKTRONIK DENGAN TAMPILAN M1632 LCD OLEH MODUL DST-52 Akhir-akhir ini, keberadaan mesin ketik sudah mulai tergusur dengan adanya printer. Namun sebuah printer membutuhkan komputer untuk mengendalikannya. Oleh karena itu artikel kali ini akan membahas penggunaan Modul DST -52 untuk mengendalikan printer sebagai pengganti komputer. KP43865 M1632 LCD PC KEYBOARD MODUL DST-52 Gambar 1 Blok Diagram Sistem PRINTER Sebagai penampil data dalam hal ini adalah M1632 LCD yang mempunyai konfigurasi 2 baris dan 16 kolom karakter berfungsi sebagai penampil data yang sedang diketik. Dengan adanya konfigurasi 2 baris dan 16 kolom, tampilan pada LCD dapat menampung 32 karakter. Namun jumlah karakter yang diketik tidak hanya mencapai 32, pada karakter ke 33, M1632 LCD akan terhapus dan karakter ke 33 akan tampil pada kolom pertama baris pertama kembali. Hal ini dijelaskan lebih detail pada artikel Penggunaan Keypad 4x3 dan PC Keyboard pada Modul DST - 52 dengan tampilan M1632 LCD. VCC P0.7 P0.6 P0.5 P0.4 P3.2 P2.1/A9 14 13 12 11 10 9 8 7 6 5 4 U? D7 D6 D5 D4 D3 D2 D1 D0 E R/W RS LCD MATRIX 2X16 VCC VLCD GND 2 3 1 10K Gambar 2 Antar Muka Modul DST-52 dengan M1632 LCD PC Keyboard dalam hal ini berfungsi sebagai input data yang langsung terhubung ke konektor Keyboard yang ada pada Modul DST -52. Selain melalui PC Keyboard, karakter yang akan diketik juga dapat dimasukkan melalui keypad 4x3 dengan metode penulisan keypad handphone.

P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 R1 2 3 4 5 6 VCC 7 8 9 1 R-PACK S1 KEYPAD 4X3 1 2 3 4 5 6 7 8 9 * 0 # JP1 P1.3 1 2 P1.0 P1.1 3 4 P1.2 P1.2 P1.3 5 6 P1.4 P1.5 7 8 P1.1 P1.6 P1.7 9 10 P1.0 PORT 1 P1.4 P1.5 P1.6 Gambar 3 Antar Muka Keypad 4x3 dengan Modul DST-52 Proses jalannya program tampak pada gambar 5 di mana proses diawali dengan inisialisasi terhadap LCD dan keyboard. Interupsi keyboard diaktifkan sehingga pada proses pengambilan input di mana program sedang menunggu masukan dari keypad, data dari PC Keyboard juga dapat dilayani. Data yang diterima pada proses ambil input akan langsung ditampilkan pada LCD dan dicetak ke printer. Pada karakter ke 17 maka tampilan karakter akan dipindah ke baris 2 dan pada karakter ke 33 layar M1632 akan dihapus serta data karakter akan kembali tampak pada kolom pertama dan baris pertama LCD. Lebih detail mengenai pengambilan data dari PC Keyboard dan Keypad dapat dilihat di artikel Penggunaan Keypad 4x3 dan PC Keyboard pada Modul DST -52 dengan tampilan M1632 LCD. Gambar 4 menunjukkan hubungan printer dengan Modul DST -52 yaitu dengan menggunakan Port A. Port ini adalah merupakan salah satu dari ekstra I/O DST -5 1 maupun DST -52 dan terletak di alamat 4000H.

P1 1 14 2 15 3 16 4 17 5 18 6 19 7 20 8 21 9 22 10 23 11 24 12 25 13 INT1/STB PA0/D0 PA1/D1 INIT/RST PA2/D2 PA3/D3 PA4/D4 PA5/D5 PA6/D6 PA7/D7 PA0/D0 PA2/D2 PA4/D4 PA6/D6 INT0 T0 CS4 CS6 WR JP1 1 2 3 4 5 6 7 8 9 10 PORT 1 JP2 1 2 3 4 5 6 7 8 9 10 CONTROL BUS 3 U1A 74LS00 2 1 VCC PA1/D1 PA3/D3 PA5/D5 PA7/D7 INT1/STB T1 CS3 CS7 RD RST MCS51 CONNECTOR DB25 Gambar 4 Antar Muka Printer dengan Modul DST-52

Inisial LCD Inisial Keyboard Aktifkan Interupsi Keyboard Ambil Input Ya Tampilkan data ke LCD Cetak ke Printer Karakter ke 17 Karakter ke 33 Ya Pindah ke Baris 2 Listing 1 $MOD51 DSEG CharCounter: Ds 1 StackTemp: Ds 1 Org 50H CSEG Gambar 4 Diagram Alir Mesin Ketik Elektronik Delay_100mS EQU 00A2H ;Menunda waktu selama 100 ms (timer 0 digunakan) Delay_500mS EQU 0099H ;Menunda waktu selama 500 ms (timer 0 digunakan) ;============= ;HD44780

;============= GeserDisplay_Kanan EQU 05BDH ;Menggeser tampilan LCD HD44780 ke kanan GeserDisplay_Kiri EQU 05C4H ;Menggeser tampilan LCD HD44780 ke kiri Posisi_Awal EQU 05CBH ;Mengatur posisi cursor LCD ke posisi awal GeserCursor_Kiri EQU 05D2H ;Menggeser Cursor LCD ke kiri GeserCursor_Kanan EQU 05D9H ;Menggeser Cursor LCD ke kanan KirimPesan_LCD EQU 05E0H ;Mengirim data di alamat yang ditunjuk oleh DPTR ke LCD hingga data 0F ;- DPTR diisi dengan alamat awal data yang dikirim ;- Akhir data adalah 0FH Init_LCD ;Inisialisasi LCD EQU 05ECH Kirim_Perintah EQU 062BH ;Mengirim data ke register perintah LCD ;- Data diisi di akumulator Kirim_Karakter EQU 064AH ;Mengirim data ke register data LCD ;- Data diisi di akumulator Baris2 EQU 0654H ;Memindah posisi cursor ke baris 2 Ambil_ScanCode EQU 0865H ;Mengambil 1 byte scan code keyboard ;- Nilai scan code berada pada akumulator KirimScanCode EQU 08A3H ;Mengirim 1 byte scan code keyboard ;- Nilai scan code berada pada akumulator InitKeyboard ;Inisialisasi Keyboard EQU 08C4H CapslockLED EQU 08DDH ;Mengaktifkan LED Caps Lock Keyboard ROM EQU 2000H STB Bit INT1 Org ROM ;Reset Vector Ajmp Start ; Org ROM+3H ;External Interrupt 0 Vector Ljmp Intr0 Org ROM+0BH ;Timer 0 Interrupt Vector

Reti ; Org ROM+13H ;External Interrupt 1 Vector Reti ; Org ROM+1BH ;Timer 1 Interrupt Vector Reti ; Org ROM+23H ;Serial Interrupt Vector Reti ; Start: Lcall Init_LCD ;Inisial LCD Lcall InitKeyboard ; Lcall InitPPI Setb EA ; Setb EX0 ; Mov CharCounter,#00 ; Mov StackTemp,SP Loop: Mov DPTR,#TabelKeypad ;Akses Keypad Lcall Ambil_keypad ; Setb EX0 InputDiperoleh: Mov A,Nilai ;Hasil dari penekanan keypad ;tersimpan di variabel nilai Push ACC Lcall Kirim_Karakter Pop ACC Lcall Kirim_Printer Inc CharCounter ;Char Counter + 1 Mov R7,CharCounter ; Cjne R7,#16,Cek32 Lcall Baris2 Ajmp Loop ; ;Kirim hasil ke LCD ;Char Counter = 16, pindah ;ke baris 2 LCD Cek32: Cjne R7,#32,Loop ;Char Counter = 32, kembali Clr EX0 Ajmp Start ;ke baris 1 Kirim_Printer: Mov Movx Clr Nop Setb Ret DPTR,#4000H @DPTR,A STB STB Intr0: Clr EX0 Push ACC Push 07H Lcall AmbilKarakterKeyboard Pop 07H Mov Nilai,A Lcall Delay_100mS Lcall Delay_100mS Pop ACC

Mov A,SP Mov B,StackTemp Clr C Subb A,B LoopRecoverStack: Pop B Djnz ACC,LoopRecoverStack Mov DPTR,#Inputdiperoleh Push DPL Push DPH Setb EX0 Reti AmbilKarakterKeyboard: Push DPH Push DPL LoopAmbilKarakterKbd: Mov DPTR,#AmbilKarakterSelesai Jb INT0,$ Lcall AmbilKeyboard AmbilKarakterSelesai: Jnc LoopAmbilKarakterKbd Pop DPL Pop DPH Ret InitPPI: Mov Mov Movx Ret DPTR,#4003H A,#80H @DPTR,A $include (keypad2.asm) $include (kboard2.asm) TabelKodeTombol: DB ' 0',0 Org TabelKodeTombol+10 DB '.,?!-&1',0 Org TabelKodeTombol+20 DB 'ABC2',0 Org TabelKodeTombol+30 DB 'DEF3',0 Org TabelKodeTombol+40 DB 'GHI4',0 Org TabelKodeTombol+50 DB 'JKL5',0 Org TabelKodeTombol+60 DB 'MNO6',0 Org TabelKodeTombol+70 DB 'PQRS7',0 Org TabelKodeTombol+80 DB 'TUV8',0 Org TabelKodeTombol+90

DB 'WXYZ9',0 Org TabelKodeTombol+110 DB '#',0 Org TabelKodeTombol+120 DB '*',0 $include (tabkey.asm) END