6. Menggunakan Port Serial AT89S51 (II)
6.1 (Lanjutan)
Berikut salah satu contoh program list penggunaan port serial AT89S51:
Org 0000h
Inisialisasi:
mov scon, #01010000b
mov a, pcon
setb acc.7
mov pcon, a
mov tmod, #20h
mov th1, #-3
setb tr1
Main:
acall RecCh
6. Menggunakan Port Serial AT89S51 (I)
Selain pengiriman data dengan metode parallel, Mikrokontroler AT89S51 juga mendukung metode pengiriman dan pembacaan data secara serial. Pada metode ini, data 8-bit yang hendak dikirimkan akan diurai dan dikirimkan bertahap bit demi bit. Pengiriman dan penerimaan data serial dilakukan melalui fasilitas register SBUF (Serial Buffer) pada mikokontroler AT89S51. Untuk mengirimkan data, SBUF perlu ditulis melalui accumulator. Sedangkan untuk menerima data serial, data pada SBUF perlu dibaca oleh accumulator. Pin mikrokontroler AT89S51 yang berfungsi untuk fasilitas serial adalah P3.0 (RXD) pin ke 10 dan P3.1 (TXD) pin ke 11.
6.1. Komunikasi AT89S51 dengan PC.
Baca selebihnya »
5. Membuat Penundaan Terhadap Suatu Proses
Proses penundaan sangat berguna untuk aplikasi-aplikasi mikrokontroler, sebagai contoh untuk lama aktivasi nyala lampu dsb. Penundaan (delaying) dapat dilakukan dengan cara menghentikan kerja dari mikrokontroler dalam artian memaksa mikrokontroler untuk tidak melakukan kerja.
5.1 Program Membuat LED Aktif Berkelap-kelip
Program ini akan membuat LED yang terhubung pada P0 akan aktif secara berkelap-kelip dengan penundaan waktu tertentu.
Program 4
org 0000h
Main:
mov p0, #0ffh
acall Delay
mov p0, #0
acall Delay
sjmp Main
Delay:
mov r0, #10
Loop:
djnz r2, Loop
djnz r1, Loop
djnz r0, Loop
ret
Untuk mengatur penundaan dapat dilakukan dengan mengubah nilai variable pada r0 (register 0), semakin besar nilai yang dimasukkan maka interval penundaan akan semakin lama. Dengan nilai variable maksimum yang dapat diinputkan adalah 255.
5.2 Program Membuat LED Bergeser Ke Kiri dan Ke Kanan




