Daftar Isi. Trademarks & Copyright

dokumen-dokumen yang mirip
DT-51 Application Note

Daftar Isi. Trademarks & Copyright

Smart Peripheral Controller ALPHANUMERIC DISPLAY

Analog Input Output DT-51 ADDA

Trademarks & Copyright

2. SPESIFIKASI EKSTERNAL SPC KEYMATIC

de KITS Application Note AN9-8 Channel Temperature Display

ALPHANUMERIC DISPLAY

2. SPESIFIKASI EKSTERNAL SPC DC MOTOR

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

Quick Start. Smart Peripheral Controller STEPPER MOTOR

Trademarks & Copyright

AD Channel AD Conversion

DT-SENSE Color Sensor Q uick S tart

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

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

AKSES MEMORI Menggunakan DT-51 MinSys

DC MOTOR. Smart Peripheral Controller

KEYMATIC. Smart Peripheral Controller

BAB IV HASIL PENGUKURAN DAN PENGUJIAN ALAT SISTEM PENGONTROL BEBAN DAYA LISTRIK

Smart Peripheral Controller INFRARED TRANSCEIVER

AVR USB ISP Trademarks & Copyright

AT89 USB ISP Trademarks & Copyright

DT-SENSE. Flame Detector

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

DT-SENSE. UltraSonic Ranger (USR)

Trademarks & Copyright

Wireless Gamepad Interface

DT-SENSE. IR Proximity Detector

Smart Peripheral Controller Low Cost Serial LCD/OLED

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

DT-SENSE. Humidity Sensor

de KITS Application Note AN44 - Morse Code Generator

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

DT-SENSE. Temperature & Humidity Sensor

DT-SENSE. Barometric Pressure & Temperature Sensor

Pengendalian 8 buah Motor oleh DST-51

DT-SENSE. Color Sensor

DT-SENSE. Temperature Sensor

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

ANTAR MUKA DST-51 DENGAN MODUL AD-0809

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

Percobaan 5. TIMER/COUNTER Menggunakan DT-51 MinSys

Memprogram Port sebagai Output dan Input Sederhana

PORT PARALEL MIKROKONTROLER ATMEL AT89C51

Memprogram Interface Display

DT-COMBO AVR-51 STARTER KIT

BAB 3 PERANCANGAN ALAT DAN PROGRAM

Trademarks & Copyright

I/O dan Struktur Memori

AVR USB ISP mkii ver 2

BAB III ANALISA DAN CARA KERJA RANGKAIAN

PC-Link Application Note

Programmer. Petunjuk Penggunaan

de KITS Application Note AN30 Rotating Display with DT-51 MinSys & de KITS SPC DC Motor

AVR USB ISP mkii Trademarks & Copyright

BAB III PERANCANGAN DAN PEMBUATAN ALAT

Controller System. CodeVisionAVR Demo

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

DT-SENSE. Photoreflector

BAB IV IMPLEMENTASI DAN EVALUASI

DT-BASIC Application Note

BAB III RANCANGAN DAN CARA KERJA ALAT

Teknik Interface Keypad 4x3 ke DST-51

BAHASA PEMOGRAMAN AT89S/Cxx (assembly)

Sistem Keamanan Pintu Gerbang Berbasis AT89C51 Teroptimasi Basisdata Melalui Antarmuka Port Serial

PENGHITUNG WAKTU DENGAN TAMPILAN LCD M1632 OLEH DST-51

KOMUNIKASI DATA DENGAN MENGGUNAKAN TEKNIK RS485

de KITS Application Note AN20 - How 2 Use de KITS SPC Alphanumeric Display with StarTech PPI Card

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

Aplikasi Pengukur Ketinggian Air Mengunakan Modul Sensor InfraRed Object Detector

Register-register MT8888

PERCOBAAN 5 STACK DAN SUBROUTINE. Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

PC-Link Application Note

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

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

Neo Stepper Motor 1.2A

Programmer. Petunjuk Penggunaan

DT-51 Application Note

DT-SENSE. Photoreflector ver. 2.0

Daftar Isi Pendahuluan Pemasangan DT51 Perangkat Lunak DT51 Appendix

DESKRIPSI SINGKAT INSTRUKSI-INSTRUKSI PADA AT89S51

INSTRUKSI DAN BAHASA PEMOGRAMAN MIKROKONTROLER

Aplikasi Modul InfraRed Object Detector Sebagai Pengukur Jarak

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

Antar Muka Modul RTC-1287 dengan Modul DST-51

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051

DT-IO Application Note

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

DT-51 Application Note

SST-01 LCD Sub System 01 LCD Interface

de KITS Application Note AN34 Jam Pasir Digital

Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN ( )/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius

AVR-51 USB ISP Trademarks & Copyright

DT-Sense Current Sensor With OpAmp Gambar 1 Blok Diagram AN212

Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode )

ELINS MICRO- C DEVELOPMENT BOARD

Low Cost Motor Controller

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

Infrared Transceiver

Transkripsi:

Daftar Isi. Pendahuluan.... Spesifikasi DT KND.... Tata Letak DT KND.... Memasang DT KND.... Perlengkapan DT KND.... Sistem yang Dianjurkan.... Hubungan DT Ver.0 dengan DT KND.... Pengujian DT KND.... Perangkat Lunak DT KND.... Modul dan Rutin.... Contoh Program... 0 Appendix Skema DT KND... 9 Trademarks & Copyright AT is a trademark of International Business Machines Corp. IBM, PC, and PC-DOS are trademarks of International Business Machines Corp. MS-DOS is a registered trademark of Microsoft Corporation. Pentium is a registered trademark of Intel Corporation. ALDS is copyright by Himpunan Mahasiswa Elektronika Sekolah Tinggi Teknik Surabaya.

. Pendahuluan DT KND merupakan Keypad And Segment Display add-on board untuk 9C Development Tools DT Ver.0. DT KND berfungsi untuk menerima input tombol keypad serta menampilkan digit / karakter yang diinginkan ke Segment Display. Dengan dilengkapi rutin-rutin untuk keypad maupun display maka DT KND sangat mudah digunakan dalam sistem kontrol yang membutuhkan input tombol dan tampilan.. Spesifikasi DT KND Spesifikasi DT KND sebagai berikut : Kompatibel penuh dengan DT Ver.0. tombol Keypad dengan susunan matriks x.. digit Segment Display dengan tinggi 0. inch jenis super bright (sangat terang). Menggunakan sistem scanning. Kemudahan interface, mudah dihubungkan dengan mikroprosesor / mikrokontroler lain. Tersedia rutin siap pakai untuk Keypad dan Segment Display.. Tata Letak DT KND Tata letak DT KND ditunjukkan pada gambar -. Keypad dan Segment Display diletakkan pada sisi yang berlainan, sehingga bila diinginkan pemasangan pada panel akan menjadi mudah dan rapi.

Gambar - Tata Letak DT KND Detail urutan masing-masing konektor sebagai berikut : PA0 PA PA PA PA PA PA PA PC0 PC PC PC PC PC PC PB0 PB PB PB PB PB JP PORT A & PORT B JP PORT C & PORT

. Memasang DT KND Berikut ini akan dijelaskan persiapan serta langkah-langkah yang diperlukan untuk menghubungkan DT KND dengan DT Ver.0 atau sistem yang lain.. Perlengkapan DT KND Setiap kemasan DT KND berisi : buah board DT disket program buku manual. Sistem yang Dianjurkan Perangkat keras : PC XT / AT / Pentium TM IBM Compatible dengan port serial (COM / COM). Board DT Ver.0 Floppy Disk., kapasitas, Mbytes. Hard Disk dengan kapasitas minimum 00 Kbytes Perangkat lunak : Sistem operasi MS-DOS TM atau PC-DOS TM. File-file yang ada pada disket program.. Hubungan DT Ver.0 dengan DT KND DT KND memang di-desain sebagai add on board DT Ver.0, tetapi tidak menutup kemungkinan untuk dihubungkan dengan sistem mikroprosesor / mikrokontroler yang lain. Apabila Anda ingin menghubungkan DT KND dengan sistem yang lain kami sarankan untuk mempelajari skema DT KND (lihat Appendix).

Untuk menghubungkan DT KND dengan DT Ver.0 dianjurkan untuk menggunakan kabel pita (flat ribbon cable). Hubungannya ditunjukkan pada tabel-tabel berikut : DT [Port A & Port B] PA0 PA PA PA PA PA PA Pin DT KND [JP] PA0 PA PA PA PA PA PA Pin DT [Port A & Port B] PA PB0 PB PB PB PB PB Pin 9 0 DT KND [JP] PA PB0 PB PB PB PB PB Pin 9 0 DT [Port C & Port ] PC0 PC PC PC PC PC PC Pin DT KND [JP] PC0 PC PC PC PC PC PC Pin DT KND memerlukan catu daya V DC yang dihubungkan dengan konektor JP. Perhatikan polaritasnya jangan sampai terbalik, karena dapat mengakibatkan kerusakan.. Pengujian DT KND Pengujian DT KND dapat dilakukan dengan menghubungkan board DT KND dengan board DT Ver.0 (baca bagian.). Hubungkan catu daya ke masing-masing board. Kemudian jalankan program TESKND.EXE (memori eksternal) atau TESKND.EXE (memori internal) yang terdapat pada disket program. Segment akan menampilkan angka 0-9 dan penekanan tombol keypad akan menampilkan angka 0-9 serta fungsi geser ke kanan atau ke kiri.. Perangkat Lunak DT Disket DT KND berisi file-file berikut :

Test File TESKND.EXE, TESKND.HEX, dan TESKND.ASM (menggunakan memori eksternal). TESKND.EXE, TESKND.HEX, dan TESKND.ASM (menggunakan memori internal). Sample File SAMPLE.ASM, SAMPLE.ASM, SAMPLE.ASM, dan SAMPLE.ASM. Modul dan Library. DATADIS.ASM : display library berisi kode karakter untuk tampilan Segment. DATAKEY.ASM : keypad library berisi kode untuk penekanan tombol keypad. KNDEXT.ASM : modul menggunakan memori eksternal KNDINT.ASM : modul menggunakan memori internal Datasheet ULN0A.PDF : datasheet ULN0A. Modul dan Rutin Pada DT KND telah disediakan buah modul program yaitu KNDEXT.ASM dan KNDINT.ASM. Modul-modul ini berisi rutin-rutin yang mempermudah Anda dalam mengembangkan program untuk Keypad dan Segment Display dengan DT Ver.0. A. KNDEXT.ASM Modul ini menggunakan memori eksternal (EEPROM) sebagai memori display, modul ini cocok digunakan bila pada memori internal 9C sudah tidak tersedia cukup ruang lagi (biasanya dipakai untuk stack memory dan variabel). Kelebihan dari modul ini adalah karakter tampilan tersimpan pada Non Volatile memory sehingga tidak hilang saat catu daya mati dan dapat dipakai lagi saat catu daya menyala. Resources DT yang dipakai (otomatis tidak dapat dipakai untuk keperluan lain) adalah :

Memori internal dengan alamat H-0H. Timer 0 dan interuptnya PPI Adapun rutin-rutin pada modul ini sebagai berikut : InitKND Fungsi : Menginisialisasi PPI dan Interupt untuk keperluan scanning display dan keypad. Input : - Output : - Remark WriteS Fungsi : Sebelum memakai rutin-rutin yang lain pada modul KNDEXT.ASM, Anda harus memanggil rutin ini. : Menuliskan karakter ke memori display untuk ditampilkan. Input : ACC diisi dengan karakter yang akan ditulis. Ouput : - Karakter yang tersedia pada library sebagai berikut : Kode Karakter Kode Karakter 0H '0' 0CH 'C' H '' 0DH 'd' H '' 0EH 'E' H '' 0FH 'F' H '' 0H 'G' H '' H 'H' H '' H 'i' H '' H 'J' H '' H 'L' 9H '9' H 'o' 0AH '.' H 'P' 0BH 'A' H 'U' Contoh penggunaan : MOV A,#0H LCALL WriteS ; menuliskan 0 pada memory display serta ditampilkan

ClrDisMem Fungsi : Menghapus seluruh karakter pada memori display dan tampilan. Input : - Output : - Remark : - CursorON Fungsi : Menampilkan kursor Input : - Output : - Remark : Apabila rutin ClrDisMem dijalankan, maka pada tampilan akan tampak kursor yang berkedip CursorOFF Fungsi : Mematikan kursor Input : - Output : - Remark : - RealDis Fungsi Input : - Output : - Remark VirtualDis Fungsi Input : - Output : - : Menset memori display sebesar byte sesuai dengan jumlah Segment pada tampilan. : Jika anda memakai rutin RealDis (real display), maka karakter maksimum yang dapat Anda tuliskan hanya, penulisan karakter yang ke akan menyebabkan seluruh tampilan terhapus dan ditampilkan sebagai karakter ke. : Menset memori display sebesar byte sesuai dengan x jumlah Segment ( digit) pada tampilan.

Remark : Jika Anda memakai VirtualDis (virtual display), maka seakan-akan Anda memiki tampilan sebanyak karakter, penulisan karakter yang ke akan menggeser tampilan sebelumnya ke kiri kali demikian seterusnya sampai penulisan karakter yang ke. ShftDisRight Fungsi : Menggeser tampilan ke kanan satu kali (tanpa mengubah memori display). Input : - Output : - Remark ShftDisLeft Fungsi Input : - Output : - Remark EnbKeyInt Fungsi Input : - Output : - Remark : Rutin ini hanya berlaku jika display diset pada kondisi virtual. : Menggeser tampilan ke kiri satu kali (tanpa mengubah memori display). : Rutin ini hanya berlaku jika display diset pada kondisi virtual. : Mengaktifkan External Interrupt agar menghasilkan sinyal interupt setiap kali ada keypad yang ditekan. : Dengan mengaktifkan keypad interrupt Anda tidak perlu melakukan poolling untuk mengetahui apakah ada tombol yang ditekan, yang perlu Anda siapkan adalah interrupt service routine untuk external interrupt (lihat contoh program sample.asm), Kode tombol yang ditekan akan berada pada variabel KeyCode.

Kode (heksadesimal) masing-masing tombol keypad ditunjukkan pada gambar berikut : 0H 0H 09H 0AH 0H 0H 0H 0BH 0H 0H 0H 0CH DisKeyInt Fungsi Input : - Output : - Remark : Mematikan External Interrupt (kondisi default) sebagai keypressed interrupt : Untuk mengetahui apakah ada tombol keypad yang ditekan Anda harus melakukan poolling pada variabel KeyPressed, jika berlogika maka ada tombol yang ditekan, kode tombol yang ditekan akan berada pada variabel KeyCode (lihat contoh sample.asm). 9

B. KNDINT.ASM Modul ini menggunakan memori internal 9C alamat 0H-H sebagai memori display, modul ini cocok digunakan bila pada memori internal 9C masih tersedia cukup ruang (biasanya dipakai untuk stack memory dan variabel). Kelebihan dari modul ini adalah kecepatan prosesnya, sehingga tidak menimbulkan blink/kedip pada Segment Display. Resources DT yang dipakai (otomatis tidak dapat dipakai untuk keperluan lain) adalah Memori internal dengan alamat H-0H. Memori internal dengan alamat 0H-H (perhatikan bahwa SP minimum diset pada address H). Timer 0 dan interuptnya. PPI Adapun rutin-rutin untuk modul ini persis sama dengan rutin-rutin pada KNDEXT.ASM seperti yang telah dijelaskan sebelumnya.. Contoh Program Berikut ini beberapa contoh program untuk DT KND (diasumsikan menggunakan Assembler ALDS ). SAMPLE.ASM : Contoh program menggunakan KNDEXT.ASM tanpa interupt. ;------------------------------------------------------ ;Sample Program Using DT KND Routine ; Without External Interrupt ;------------------------------------------------------.CODE ORG 000H LJMP Start ORG LJMP 00BH Scanning ORG 00H INCLUDE KNDEXT.ASM 0

JMPTABLE: LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP S9Act LJMP S0Act LJMP SAct LJMP SAct SAct: MOV A,#0 SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# S9Act: MOV A,#

S0Act: MOV A,#9 SAct: ACALL ShftDisRight SAct: ACALL ShftDisLeft Start: MOV P,#0FBH MOV SP,#0H LCALL InitKND LCALL CursorOn LCALL VirtualDis LCALL ClrDisMem Loop: JNB KeyPressed,$ CLR KeyPressed MOV A,KeyCode MOV DPTR,#JMPTABLE DEC A MOV B,# MUL AB JMP @A+DPTR END SAMPLE.ASM : Contoh program menggunakan KNDEXT.ASM dengan interupt. ;------------------------------------- ;Sample Program Using DT KND Routine ; With External Interrupt ;-------------------------------------.CODE ORG 000H LJMP Start ORG LJMP ORG LJMP 00BH Scanning 0H ISR_EI

ORG 00H INCLUDE KNDEXT.ASM ISR_EI: MOV A,KeyCode MOV DPTR,#JMPTABLE DEC A MOV B,# MUL AB JMP @A+DPTR JMPTABLE: LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP S9Act LJMP S0Act LJMP SAct LJMP SAct SAct: MOV A,#0 SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# SAct: MOV A,#

SAct: MOV A,# SAct: MOV A,# S9Act: MOV A,# S0Act: MOV A,#9 SAct: ACALL ShftDisRight SAct: ACALL ShftDisLeft Start: MOV P,#0FBH MOV SP,#0H LCALL InitKND LCALL CursorOn LCALL VirtualDis LCALL ClrDisMem LCALL EnbKeyInt AJMP $ END SAMPLE.ASM : Contoh program menggunakan KNDINT.ASM tanpa interupt. ;------------------------------------- ;Sample Program Using DT KND Routine ; Without External Interrupt ;-------------------------------------.CODE ORG 000H LJMP Start ORG LJMP 00BH Scanning

ORG 00H INCLUDE KNDINT.ASM JMPTABLE: LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP S9Act LJMP S0Act LJMP SAct LJMP SAct SAct: MOV A,#0 SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# S9Act: MOV A,#

S0Act: MOV A,#9 SAct: ACALL ShftDisRight SAct: ACALL ShftDisLeft Start: MOV P,#0FBH MOV SP,#H LCALL InitKND LCALL CursorOn LCALL VirtualDis LCALL ClrDisMem Loop: JNB KeyPressed,$ CLR KeyPressed MOV A,KeyCode MOV DPTR,#JMPTABLE DEC A MOV B,# MUL AB JMP @A+DPTR END SAMPLE.ASM : Contoh program menggunakan KNDINT.ASM dengan interupt. ;------------------------------------- ;Sample Program Using DT KND Routine ; With External Interrupt ;-------------------------------------.CODE ORG 000H LJMP Start ORG LJMP ORG LJMP 00BH Scanning 0H ISR_EI

ORG 00H INCLUDE KNDINT.ASM ISR_EI: MOV A,KeyCode MOV DPTR,#JMPTABLE DEC A MOV B,# MUL AB JMP @A+DPTR JMPTABLE: LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP SAct LJMP S9Act LJMP S0Act LJMP SAct LJMP SAct SAct: MOV A,#0 SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# SAct: MOV A,# SAct: MOV A,#

SAct: MOV A,# SAct: MOV A,# S9Act: MOV A,# S0Act: MOV A,#9 SAct: ACALL ShftDisRight SAct: ACALL ShftDisLeft Start: MOV P,#0FBH MOV SP,#H LCALL InitKND LCALL CursorOn LCALL VirtualDis LCALL ClrDisMem LCALL EnbKeyInt AJMP $ END Bila Anda menemui kesulitan dalam menggunakan DT KND, hubungi technical support kami melalui e-mail : tech-sup@mitra.net.id

B A 9 9 0 9 0 9 0 9 0 9 0 9 0 9 C A C A C A C A C A C A G F G F G F G F G F G F C O M C A C O M C A C O M C A C O M C A C O M C A C O M C A A B A B A B A B A B A B D EF E D C A C D P E D C A C D P E D C A C D P E D C A C D P E D C A C D P E D C A C D P B A Skema DT KND Appendix D C VCC R PA0 PA PA PA PA PA PA PA 0 RE SP ACK U? I N O UT I N O UT I N O UT I N O UT I N O UT I N O UT I N O UT I N O UT CO M UL N 0 A R R R R R R R V CC PB 0 PB PB PB PB PB R... = 0 R9... = K A BC G DP CO M CO M CO M CO M CO M CO M U Q N 9 0 U Q N 9 0 U Q N 9 0 U Q N 9 0 U Q N 9 0 U Q N 9 0 S S R R R S 0 P B 0 P B P B P B P C P C P C P C P C P C P C0 D N D N D N D N S 9 S S S S S S S S R R R R PA0 PA PA PA PB 0 PB PB PB PC0 PC PC PC J P 0 HE AD ER X J P 0 HE AD ER X P A P A P A P A P B P B P B P B P C P C P C P C V CC G ND G ND T it le S iz e VCC JP HEA DE R D T K N D N um ber R ev is ion A Da t e : - J u l- 0 0 0 Sh e e t o f F ile : D: \ I E\ S ch \ DT K ND. s c h Dr a w n B y : D C 9