Microcontroller Kits
Simple Mikrokontroller 89s51 Trainer
Standart
Mikrokontroller 89s51 Trainer
Super Mikrokontroller Trainer 89s51
All Kits
Programmer via USB Port
ย
Percobaan 12.1. Pengambilan data karakter keyboard PC dan display ke LED
Pada percobaan ini data keyboard PC diinterfacekan ke mikrokontroller dengan menggunaan port P3 bit 2 dan 3. Hasil pengambilan data keyboard selanjutnya ditampilkan pada LED.
Untuk melakukan percobaan ini lakukan beberapa langkah sebagai berikut:
1. Hubungkan jumper keyboard dua kabel ke rangkaian mikrokontroller bit P3.2 dan bit P3.3.
2. Pasang jumper LED_EN
2. Hubungkan modul keyboard PC PS/2 ke konektor keybaord
3. Hubungkan modul Microcontroller Trainer dengan power supply +5V
4. Hubungkan modul Microcontroller Trainer dengan rangkaian programmer
5. Buka Program M-IDE Studio for MCS-51, sebagai editor dan compiler program
6. Ketik program berikut ini: (download file prog122a.asm
ย
dispclr equ 00000001bfuncset equ 00111000bentrmod equ 00000110bdispon equ 00001100bKbdData bit P3.2KbdClock bit INT1;P3.3DataKeyboard equ 30h ; org 0hForever: JB KbdClock,$ acall ambilKeyboard jnc Forever Mov P0, Datakeyboard clr C sjmp Forever ;;============================================;Subrutine AmbilKeyboard;Subrutine berikut berfungsi untuk mendeteksi apakah keyboard ;sedang ditekan atau dilepas. Bila tombol tidak dilepas maka ;akan menuju pada subrutine ;Kybd_tidakLepas;dan memberi tanda pada bit C = 0 sehingga bila C = 0 ; maka data tidak akan dicetak;Bila tombol keyboard dilepas maka data scan code diambil ;dan dikonversi ke dengan dengan menggunakan ; look up table serta menandai bit C = 1;===========================================AmbilKeyboard: acall ambil_scancode cjne a,#0F0h,kybd_tidakLepas JB KbdClock,$ acall ambil_Scancode Setb C Acall Konversi_Scancode ret ; Kybd_tidakLepas: Clr C ret ;;======================================================;Subrutine Konversi_ScanCode;Pada subrutine ini digunakan untuk menerjemahkan scan code ke bentuk
;karakter ; dengan menggunakan look up table.;======================================================Konversi_ScanCode: Mov DPTR,#TableKeyboard movc A,@A+DPTR mov DataKeyboard,A ret ;Ambil_scanCode: clr A Jnb KbdClock,$ mov R0,#08h Ambil_ScanCode2: Jb KbdClock,$ Mov C,KbdData Rr A mov acc.7,C Jnb KbdClock,$ Djnz R0,Ambil_ScanCode2 Jb KbdClock,$ Jnb KbdClock,$ Jb KbdClock,$ Jnb KbdClock,$ ret ;delay: mov R5,#0 delay1:mov R4,#02fh djnz R4,$ djnz R5,delay1 ret ;TableKeyboard: DB 00 DB 0F9H DB 00 DB 0F5H,0F3H,0F1H,0F2H,0FCH DB 00H DB 0FAH,0F8H,0F6H,0F4H DB 0C0H DB '~' DB 00H DB 00H DB 0C1H DB 0C2H DB 00H DB 0C3H DB 'Q1' DB 00H,00H,00H DB 'ZSAW2' DB 00H,00H DB 'CXDE43' DB 00H,00H DB ' VFTR5' DB 00H,00H DB 'NBHGY6' DB 00H,00H,00H DB 'MJU78' DB 00H,00H DB ',KIO09' DB 00H,00H DB './L;P-' DB 00H,00H,00H DB 27H DB 00H DB '[=' DB 00H,00H DB 0C5H DB 0C6H DB 0AH DB ']' DB 00H DB '' DB 00H,00H,00H,00H,00H,00H,00H,00H DB 08H DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H DB 0DH DB 00H DB 0FBH DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H DB 0F7H
end
7. Simpanlah program yang anda ketik dan beri nama : prog122a.asm
8. Pada program MIDE tersebut pilih Build /F9 atau untuk melakukan kompilasi program dari *.asm ke *.hex.
9. Lakukan pemrograman mikrokontroller dengan menggunakan Program ISP Software ( Lihat Petunjuk Penggunaan)
10. Lakukan pengamatan untuk data keyboard yang ditampilkan.
ย
Komentar, pertanyaan dan diskusi tentang topik tersebut. Klik disini
ย
ย
HARDWARE
1.Target
2.Programmer
DASAR TEORI1.Organisasi Mem
1.1. Mem.Data
1.2. Mem.Prog
1.4. SFR2.Pengalamatan3.Set Instruksi
3.1.Copy Data
3.2.Aritmatika
3.3.Logika
3.4.Lompatan4.Interupsi5.Timer Counter6.Serial Kom.7.Bahasa Assemb.8.Perangkat LunakMIDE dan ISP Soft.
PERCOBAAN 1
LED
PERCOBAAN 2
SAKLAR
PERCOBAAN 3
7 Segmen
PERCOBAAN 4
LCD Character
PERCOBAAN 5
ADC
PERCOBAAN 6
DAC
PERCOBAAN 7
Keypad
PERCOBAAN 8
Motor Stepper
PERCOBAAN 9
Timer Counter
PERCOBAAN 10
Komunikasi Serial
PERCOBAAN 11
Interupsi
PERCOBAAN 12
Keyboard PC
PERCOBAAN 13
Printer Dot Matr.
PERCOBAAN 14
RTC12C887
PERCOBAAN 15
P W M
ย
ย