PORT SERIAL
TUJUAN
1. Mahasiswa memahami rangkaian interface port serial
2. Mahasiswa memahami mengkonfigurasikan komunikasi serial pada port
serial PC
3. Mahasiswa memahami penulisan bahasa assembly untuk konfigurasi
port serial
4. Mahasiswa memahami penulisan pemrograman delphi untuk
komunikasi dengan mikrokontroller.
Gambar 10.3. (a) Pemberian nama koneksi (b) Pemilihan koneksi pada
COM1
org 0h
nop
call initserial
mov dptr,#MyCharacter
gets: clr A
Movc A,@A+dptr
cjne A,#0,Next
sjmp getin
Next: call sendout
inc dptr
sjmp gets
getin: call inchar
cjne A,#'1',next1
mov P0,#11111110b
next1: cjne A,#'2',next2
mov P0,#11111101b
next2: cjne A,#'4',next3
mov P0,#11111011b
next3: sjmp getin
;
initserial:
mov scon,#52h ; Konfigurasi komunikasi serial mode 1
mov tmod,#20h ; Baud rate 2400 BPS
mov th1,#0F3H
setb tr1
ret
;
inchar:
detecti: jnb ri,detecti ; Deteksi bit RI apakah data sudah diterima atau belum
clr ri
mov a,sbuf
ret
;
Sendout:
detecto: jnb ti,detecto;
clr ti ;
mov sbuf,a ;
ret
;
MyCharacter:
DB ' Tekan Tombol 1, 2 atau 4',13,10,0
End
org 0h
nop
call initserial
gets: call inchar
mov P0,a
sjmp gets
;
initserial:
mov scon,#52h ; Konfigurasi komunikasi serial mode 1
mov tmod,#20h ; Baud rate 2400 BPS
mov th1,#-13
setb tr1
ret
;
inchar:
detect: jnb ri,detect ; Deteksi bit RI apakah data sudah diterima atau belum
clr ri
mov a,sbuf
ret
;
End
org 0h
call initserial
;
start: call ADC; ambil data dari adc
call Sendout
sjmp start
;
ADC: clr P3.3
nop
setb P3.3
eoc: jb P3.2,eoc
clr P3.4
mov A,P1
setb P3.4
ret
;
Sendout:
detect: jnb ti,detect;
clr ti ;
mov sbuf,a ;
ret
;
initserial:
mov scon,#52h;initialize serial mode 1
mov tmod,#20h;timer1 mode 2
mov th1,#0F3h;Reload value for baud rate 2400
setb tr1
ret
end