Member baru? Bingung? Perlu bantuan? Silakan baca panduan singkat untuk ikut berdiskusi.

Welcome to Forum Sains Indonesia. Please login or sign up.

Maret 28, 2024, 03:23:26 PM

Login with username, password and session length

Topik Baru

Artikel Sains

Anggota
Stats
  • Total Tulisan: 139,653
  • Total Topik: 10,405
  • Online today: 87
  • Online ever: 1,582
  • (Desember 22, 2022, 06:39:12 AM)
Pengguna Online
Users: 0
Guests: 86
Total: 86

Aku Cinta ForSa

ForSa on FB ForSa on Twitter

port keyboard

Dimulai oleh muflih, Februari 17, 2011, 11:55:12 AM

« sebelumnya - berikutnya »

0 Anggota dan 1 Pengunjung sedang melihat topik ini.

muflih

mohon bantuannya susunan port keyboard ps2, saya mo hubungkan ke AT89S52. apakah pin keluaran keyboar telah TTL sehingga dapat langsung dihubungkan ke input serial AT89S52 atau harus melalui IC MAX232 baru ke AT89S52.
mohon pencerahan

muflih

kok nga ada yang kasih pencerahannya ???

Too Payz

#2
Kutipkok nga ada yang kasih pencerahannya ???
Wakawkakwakwakwkaa....  ;D   ;D
Sori ketawa.....

Tanya om google dlu sebelum bertanya ke yg lain..
Niar nanti pertanyaannya lebih dalam..
Seperti cara mengakses keyboard PS/2 bagaimana?

nih link-linknya. kata kunci google : keyboard ps/2
[pranala luar disembunyikan, sila masuk atau daftar.]
[pranala luar disembunyikan, sila masuk atau daftar.]
[pranala luar disembunyikan, sila masuk atau daftar.]
[pranala luar disembunyikan, sila masuk atau daftar.]

Yang paling detail link yang ketiga beyondlogic,
disitu dicontohkan interface dengan mikrokontroller HC705J1A.
Jadi mikrok MCS51 maupun AVR dikoneksikan langsung aja + pullup resistor.

Semoga ceraaaaaahhhh....  :D   :D   ;)

rakanety

Bagaimana pak bila port keyboard dengan menggunakan SPC keymatic?? mohon bantuannya...

reviannizar

keyboard PS-2 memiliki clock dan data, source ini menggunakan kompiler learn com, mungkiin tidak bisa menggunakan kompiler lain, perlu penyesuaian, terutama penulisan label yang biasanya wajib di beri : (titik 2).
program keyboard ini menggunakan AT89C2051, bila menggunakan yang lain tinggal merubah stak pointernya.
output berupa data serial COM 1200 bps, bila ingin kecepatan tinggal mengganti c_spinit.
program ini juga dilengkapi input remote dengan remote universal SM-309E dengan kode set 061, bila tidak berlu bisa dihapus, tentunya harus tahulah...

;---------------------------------------
;=======================================
;   Program system Keyboard
;   Keyboard system   
;   Oleh   : jbiru
;   Kristal   : 22,1184 Mhz
;   Tanggal   : 14/05/2005
;      : 30/07/2007
;      : 20/01/2011
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;=======================================
sp_dlybtn      equ   1fh
sp_ectbtn      equ   1eh
;=======================================
sp_none      equ   255
sp_tvav      equ   15
;---------------------------------------
sp_mute      equ   25
sp_pns      equ   26
sp_pip      equ   sp_pns
sp_tmr      equ   sp_pns
sp_menu      equ   20
sp_zoom      equ   21
sp_iok      equ   22
sp_pwr      equ   23
sp_fca      equ   24
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sp_iesc      equ   14
sp_ient      equ   13
;=======================================
sp_min      equ   16
sp_plus      equ   17
sp_up      equ   18
sp_down      equ   19
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kb_F1      equ   1
kb_F2      equ   2
kb_F3      equ   3
kb_F4      equ   4
kb_F5      equ   5
kb_F6      equ   6
kb_F7      equ   7
kb_F8      equ   8
kb_F9      equ   9
kb_F10      equ   0
kb_F11      equ   11
kb_F12      equ   12
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kb_esc      equ   sp_iesc
kb_enter      equ   sp_ient
kb_tab      equ   sp_none
kb_bksp      equ   sp_iesc
kb_del      equ   sp_iesc
;---------------------------------------
kb_end      equ   sp_none
kb_down      equ   sp_down
kb_pgdn      equ   sp_none
kb_left      equ   sp_min
kb_ins      equ   sp_none
kb_right      equ   sp_plus
kb_home      equ   sp_none
kb_up      equ   sp_up
kb_pgup      equ   sp_none
kb_pwr      equ   sp_pwr
kb_sleep      equ   sp_none
kb_wakeUP      equ   sp_none
;---------------------------------------
kb_lshift      equ   sp_none
kb_rshift      equ   sp_none
kb_num      equ   sp_none
kb_cap      equ   sp_none
kb_scroll      equ   sp_none
;=======================================
c_maxkey      equ   4
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
v_irdly      equ   R2
;=======================================
   org   08h
;---------------------------------------
v_ita      DS   1
v_itb      DS   1
v_key      DS   c_maxkey
v_irdata      DS   8
v_keydly      DS   1
v_keycod      DS   1
v_keysda      DS   1
v_keytmp      DS   1
;---------------------------------------
c_dlybtn      equ   30 ; 1,5 s
v_dlybtn      DS   1
v_evbtn      DS   1
v_kbpres      DS   1
v_nextkey      DS   1
;=======================================
   org   20h
sys_sts      DS   1
kbs_sts      DS   1
ird_sts      DS   1
exa_sts      DS   1

s_base      equ   sys_sts.0
s_ita      equ   sys_sts.1
s_itb      equ   sys_sts.2
s_cry      equ   sys_sts.3
s_sbtn      equ   sys_sts.4
s_nextkey      equ   sys_sts.5
s_kpress      equ   sys_sts.6
s_dlybtn      equ   sys_sts.7

s_key      equ   kbs_sts.0
s_skey      equ   kbs_sts.1
s_shift      equ   kbs_sts.2
s_sshift      equ   kbs_sts.3
s_keydly      equ   kbs_sts.4
s_insert      equ   kbs_sts.5
s_kbpres      equ   kbs_sts.6
s_tmp      equ   kbs_sts.7

s_outdta      equ   exa_sts.0
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
out_dta      equ   P3.1
key_clk      equ   P3.2 ; int0
key_dta      equ   P3.3
key_int      equ   IE.0
;=======================================
c_syssp      equ   128-24
;---------------------------------------
   org   0
   ajmp   sys_main
;=======================================
   org   3
   sjmp   int_skey
;---------------------------------------
c_systmr      equ   256-192
c_dlystart   equ   100
c_ita      equ   96
c_itb      equ   5
c_nextkey      equ   3 ; (1/2sec)
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   org   0Bh
;---------------------------------------
   setb   s_base
   mov   s_cry,C
   acall   ird_clk
   mov   C,s_cry
   djnz   v_ita,inttmrr
   mov   v_ita,#c_ita
   setb   s_ita
   djnz   v_itb,inttmrr
   mov   v_itb,#c_itb
   setb   s_itb
   jnb   s_nextkey,inttmrr
   djnz   v_nextkey,inttmrr
   mov   v_nextkey,#c_nextkey
   clr   s_nextkey
inttmrr   reti
;---------------------------------------
int_skey   clr   key_int
   push   Acc
   push   B
   mov   v_key+3,v_key+2
   mov   v_key+2,v_key+1
   mov   v_key+1,v_key+0
   mov   A,#0
   mov   B,#8
   mov   v_key,#0
   clr   s_key
intskeys   jb   key_clk,intskey3
   clr   s_skey
intskey1   db   0,0,0
intskey2   djnz   v_key,intskeys
   clr   Acc.0
   mov   v_key,A
   setb   s_key
   pop   B
   pop   Acc
   setb   key_int
   reti
intskey3   jb   s_skey,intskey1
   setb   s_skey
   jnb   key_dta,intskey4
   setb   Acc.0
intskey4   jb   s_key,intskey2
   rl   A
   djnz   B,intskey2
   setb   s_key
   sjmp   intskey1