4. Port Input/Output Mikrokontroler MCS-51
4. Port Input/Output Mikrokontroler MCS-51
Mikrokontroler MCS-51 memiliki 2 jenis port input/output, yaitu
Mikrokontroler MCS-51 memiliki 2 jenis port input/output, yaitu port port I/OI/O parallel
parallel dandan port port I/O I/O serial serial .. Port Port I/O I/O parallelparallel sebanyak 4 buah dengansebanyak 4 buah dengan nama P0,P1,P2 dan P3. Masing-masing port ini bersifat
nama P0,P1,P2 dan P3. Masing-masing port ini bersifat bidirectional bidirectional (dua- (dua-arah), memiliki
arah), memiliki latchlatch (dengan ini maka data output akan tetap berada pada (dengan ini maka data output akan tetap berada pada statusnya
statusnya hingga hingga ada pengirimada pengiriman data an data baru), baru), memiliki memiliki buffer buffer outputoutput sehingga setiap pin-nya dapat dibebani dengan 4 buah gerbang IC TTL sehingga setiap pin-nya dapat dibebani dengan 4 buah gerbang IC TTL standar (kecuali Port 0
standar (kecuali Port 0 sebanyak 8) dan memiliki buffer input.sebanyak 8) dan memiliki buffer input.
Port serialnya bersifat
Port serialnya bersifat full-duplex full-duplex (dalam satu saat bisa menerima sekaligus(dalam satu saat bisa menerima sekaligus mengirim data), bisa digunakan untuk
mengirim data), bisa digunakan untuk shift shift register register , atau, atau UniversalUniversal Aynchronous
Aynchronous Receiver Receiver and and TransmitterTransmitter (UART) dengan data terkirim(UART) dengan data terkirim sepanjang 8 atau 9 bit.
sepanjang 8 atau 9 bit.
4.1.
4.1. PoPort Irt I /O Pa/O Paralral lelel l
4.1.1. Fungsi Port 4.1.1. Fungsi Port
Port
Port I/O I/O parallel parallel P0,P1,P2 dan P3 memiliki fungsi khusus terutama jika P0,P1,P2 dan P3 memiliki fungsi khusus terutama jika digunakan untuk mengakses peralatan di luar
digunakan untuk mengakses peralatan di luar chipchip mikrokontroler.mikrokontroler. Fungsi khusus tersebut adalah :
Fungsi khusus tersebut adalah : P0 dan P2 :
P0 dan P2 :
Port 0 memiliki
Port 0 memiliki addressaddress 80h sedangkan Port 280h sedangkan Port 2 addressaddressnya 0A0h.nya 0A0h. Port-port ini digunakan untuk mengakses eksternal memori.
Port-port ini digunakan untuk mengakses eksternal memori. Address Address eksternal memori yang digunakan bisa selebar 8 bit atau 16 bit. Pada eksternal memori yang digunakan bisa selebar 8 bit atau 16 bit. Pada akses
akses addressaddress 8 bit, maka dipergunakan Port 0 sebagai8 bit, maka dipergunakan Port 0 sebagai bus address bus address yang dimultipleks-waktu dengan
bit
bit dibutuhkan dibutuhkan dua dua buah buah port port 8 8 bit, bit, yaitu yaitu Port Port 0 0 dan dan Port Port 2. 2. Port Port 00 berfungsi
berfungsi untuk untuk mengeluarkan mengeluarkan data data byte byte rendahrendah addressaddress eksternaleksternal memori, yang dimultipleks-waktu dengan byte data yang sedang memori, yang dimultipleks-waktu dengan byte data yang sedang dibaca atau ditulis. Port 2 digunakan untuk mengeluarkan data byte dibaca atau ditulis. Port 2 digunakan untuk mengeluarkan data byte tinggi
tinggi addressaddress eksternal eksternal memori. memori. Untuk Untuk eksekusi eksekusi instruksi instruksi yangyang memerlukan
memerlukan addressaddress eksternal memori selebar 8 bit, maka yangeksternal memori selebar 8 bit, maka yang berfungsi
berfungsi hanyalah hanyalah Port Port 0, 0, sedangkan sedangkan Port Port 2 2 mengerluarkan mengerluarkan datadata sebagaimana terletak pada register P2 pada
sebagaimana terletak pada register P2 pada special special function function register register (SFR). Proses
(SFR). Proses multiplexing datamultiplexing data dengan dengan addressaddress pada pada Port Port )) membutuhkan sebuah
membutuhkan sebuah chip latchchip latch eksternal dan sebuaheksternal dan sebuah tri-statetri-state bidirectional buffer
bidirectional buffer yang yang diakses mdiakses melalui sinyal elalui sinyal kendali ALkendali ALE dan -E dan -RD serta -WR.
RD serta -WR.
Pada saat akses
Pada saat akses addressaddress 16 bit, isi register P0 berubah menjadi 0FFh, 16 bit, isi register P0 berubah menjadi 0FFh, sedangkan isi register P2 adalah tetap seperti semula.
sedangkan isi register P2 adalah tetap seperti semula. Contoh akses
Contoh akses addressaddress memori eksternal 16 bit adalah melalui memori eksternal 16 bit adalah melalui instruksi
instruksi MM OVX OVX A,@A,@DPTR.DPTR. Pada instruksi ini address 16 bit untukPada instruksi ini address 16 bit untuk eksternal memori dipegang oleh register DPTR. Pada instuksi eksternal memori dipegang oleh register DPTR. Pada instuksi tersebut data yang ada pada memori eksternal dengan
tersebut data yang ada pada memori eksternal dengan addressaddress sebagaimana nilai DPTR dipindahkan/disalin ke register sebagaimana nilai DPTR dipindahkan/disalin ke register Accumulator
Accumulator . Akses eksternal memori melalui. Akses eksternal memori melalui addressaddress 8 bit misalnya 8 bit misalnya pada
pada instruksiinstruksi MM OVX OVX A,@A,@R0 R0 . Pada instruksi ini address 8 bit untuk. Pada instruksi ini address 8 bit untuk eksternal memori dipegang oleh register R0.. Pada instuksi tersebut eksternal memori dipegang oleh register R0.. Pada instuksi tersebut data yang ada pada memori eksternal dengan address sebagaimana data yang ada pada memori eksternal dengan address sebagaimana nilai R0 dipindahkan/disalin ke register
P3 : P3 :
Port ini memiliki
Port ini memiliki addressaddress 0B0h dimana tiap pin nya memiliki fungsi 0B0h dimana tiap pin nya memiliki fungsi khusus sebagai berikut:
khusus sebagai berikut:
Tabel 4.1. Fungsi alternatif pin-pin Port 3 Tabel 4.1. Fungsi alternatif pin-pin Port 3
Simbol
Simbol PosisiPosisi Nama dan artiNama dan arti
-RD P3.7
-RD P3.7 external data memory read strobeexternal data memory read strobe
-WR P3.6
-WR P3.6 external data memory write strobeexternal data memory write strobe
T1 P3.5
T1 P3.5 timer/counter 1 external inputtimer/counter 1 external input
T0 P3.4
T0 P3.4 timer/counter 0 external inputtimer/counter 0 external input
-INT1 P3.3
-INT1 P3.3 external interrupt 1external interrupt 1
-INT0 P3.2
-INT0 P3.2 external interrupt 0external interrupt 0
TXD P3.1
TXD P3.1 serial data output port serial data output port
RXD P3.0
RXD P3.0 serial data input port serial data input port
Fungsi-fungsi alternatif di atas hanya bisa berfungsi jika bit-bit yang Fungsi-fungsi alternatif di atas hanya bisa berfungsi jika bit-bit yang bersangkutan pada register P3 diberi status '
bersangkutan pada register P3 diberi status '1'.1'.
P1 : P1 :
Port ini memiliki
Port ini memiliki addressaddress 090h, dan biasanya digunakan untuk090h, dan biasanya digunakan untuk penggunaan
penggunaan paralel paralel port port secara secara umumumum. . Khusus Khusus pada pada seri seri 8052 8052 adaada pin yang m
pin yang memiliki fungsemiliki fungsi khusus i khusus yaitu :yaitu :
Tabel 4.2. Fungsi alternatif pin-pin Port 1 Tabel 4.2. Fungsi alternatif pin-pin Port 1
Simbol
Simbol PosisiPosisi Nama dan artiNama dan arti
T2EX P1.1
T2EX P1.1 Timer/counter 2 capture/reload triggerTimer/counter 2 capture/reload trigger
T2 P1.0
Pin dengan fungsi khusus ini memiliki karakteristik yang sama d
Pin dengan fungsi khusus ini memiliki karakteristik yang sama d enganengan Port 3.
Port 3.
4.2. Pembacaan dan Penulisan Port Paralel 4.2. Pembacaan dan Penulisan Port Paralel
Dengan melihat konstruksi port paralel yang kesemuanya memiliki
Dengan melihat konstruksi port paralel yang kesemuanya memiliki latchlatch,, maka ada dualisme proses pembacaan port, antara pembacaan
maka ada dualisme proses pembacaan port, antara pembacaan latchlatch dengan pembacaan pin. Ada beberapa instruksi yang melakukan dengan pembacaan pin. Ada beberapa instruksi yang melakukan pembacaan
pembacaan latch latch, dan sebagian lain melakukan pembacaan pin. Instruksi, dan sebagian lain melakukan pembacaan pin. Instruksi yang membaca
yang membaca latchlatch adalah instruksi yang fungsinya membaca suatu nilai, adalah instruksi yang fungsinya membaca suatu nilai, mungkin mengubahnya dan kemudian menuliskannya kembali. Sedangkan mungkin mengubahnya dan kemudian menuliskannya kembali. Sedangkan instruksi yang hanya melakukan pembacaan suatu nilai saja, maka instruksi yang hanya melakukan pembacaan suatu nilai saja, maka pembacaanya adalah pembacaan pin.
pembacaanya adalah pembacaan pin.
Contoh instruksi yang membaca
Contoh instruksi yang membaca latchlatch adalah :adalah : ANL (logical AND), ANL (logical AND), ORL (logical OR), ORL (logical OR), XRL (logical XOR), XRL (logical XOR),
JBC (jump if bit = 1 and clear bit), JBC (jump if bit = 1 and clear bit), CPL (compelement bit), CPL (compelement bit), INC (increment), INC (increment), DEC (decrement), DEC (decrement),
DJNZ (decrement and jump if not zero), DJNZ (decrement and jump if not zero), MOV (move),
MOV (move), CLR (clear), CLR (clear), SETB (set bit). SETB (set bit).
Penulisan ke port paralel dapat dilakukan dengan cara menuliskan ke Penulisan ke port paralel dapat dilakukan dengan cara menuliskan ke register port yang bersangkutan, baik secara bit maupun byte. Yang perlu register port yang bersangkutan, baik secara bit maupun byte. Yang perlu diperhatikan ialah fungsi Port 0 dan Port 2 yang digunakan untuk akses diperhatikan ialah fungsi Port 0 dan Port 2 yang digunakan untuk akses memori eksternal. Data yang ditulis pada Port 0 akan berubah menjadi memori eksternal. Data yang ditulis pada Port 0 akan berubah menjadi 0FFh jika terjadi akses ke memori eksternal. Data pada Port 2 akan 0FFh jika terjadi akses ke memori eksternal. Data pada Port 2 akan berubah
berubah menjadi menjadi datadata address byteaddress byte tertinggi pada saat akses ke memori tertinggi pada saat akses ke memori eksternal, dan kembali pada isinya yang semula setelah proses akses eksternal, dan kembali pada isinya yang semula setelah proses akses tersebut selesai. Penulisan ke Port 3 menentukan aktif tidaknya pin-pin tersebut selesai. Penulisan ke Port 3 menentukan aktif tidaknya pin-pin dengan fungsi khusus sebagaimana pada tabel 4.1. Penulisan '1' pada suatu dengan fungsi khusus sebagaimana pada tabel 4.1. Penulisan '1' pada suatu bit mengaktifkan f
bit mengaktifkan fungsi alternatif pada pin pada bit tersebut.ungsi alternatif pada pin pada bit tersebut.
4.3. Port I/O Serial 4.3. Port I/O Serial
Port I/O serial yang dimiliki oleh MCS-51 memiliki karakteristik Port I/O serial yang dimiliki oleh MCS-51 memiliki karakteristik full full duplex
duplex (dapat menerima sekaligus mengirimkan data secara simultan), dan (dapat menerima sekaligus mengirimkan data secara simultan), dan receive-buffered
receive-buffered (dapat memulai penerimaan data yang kedua sebelum (dapat memulai penerimaan data yang kedua sebelum data yang pertama dibaca dari register pembacaan).
data yang pertama dibaca dari register pembacaan). Port serial dapat bekerja dalam 4 mode :
Port serial dapat bekerja dalam 4 mode :
Mode 0 : Mode 0 :
Pada mode ini data serial diterima dan dikirim lewat pin RXD, Pada mode ini data serial diterima dan dikirim lewat pin RXD, sedangkan pin TXD berfungsi untuk mengirimkan
sedangkan pin TXD berfungsi untuk mengirimkan shift shift clock clock . Data. Data yang diterima dan dikirim adalah selebar 8 bit dengan bit terendah yang diterima dan dikirim adalah selebar 8 bit dengan bit terendah dikirimkan/diterima pertama kali. Kecepatan pengiriman (
dikirimkan/diterima pertama kali. Kecepatan pengiriman (baud ratebaud rate)) adalah tetap
Mode 1 : Mode 1 :
Pada m
Pada mode ode ini ini data data 8 8 bit bit dikirim/diterima dikirim/diterima dengan dengan 2 2 bit bit tambahan,tambahan, dengan urutan :
dengan urutan :
start bit (logika 0), start bit (logika 0),
8 bit data (dengan bit terendah di depan), 8 bit data (dengan bit terendah di depan), 1 stop bit (logika 1).
1 stop bit (logika 1).
Pada saat penerimaan, stop bit masuk pada bit RB8 pada register Pada saat penerimaan, stop bit masuk pada bit RB8 pada register
SCON (salah satu
SCON (salah satu special function special function register register ). Baud rate pada mode ini). Baud rate pada mode ini adalah variabel.
adalah variabel.
Mode 2 : Mode 2 :
Pada mode ini data 8 bit dikirim/diterima dengan 3 bit tambahan Pada mode ini data 8 bit dikirim/diterima dengan 3 bit tambahan dengan urutan :
dengan urutan :
start bit (logika 0), start bit (logika 0),
8 bit data (dengan bit terendah di depan), 8 bit data (dengan bit terendah di depan), 1 bit tambahan yang dapat d
1 bit tambahan yang dapat diprogram,iprogram, 1 stop bit (logika 1).
1 stop bit (logika 1).
Pada saat pengiriman, bit yang dapat diprogram adalah bit yang Pada saat pengiriman, bit yang dapat diprogram adalah bit yang terdapat pada bit TB8 pada register SCON. Pada saat penerimaan, terdapat pada bit TB8 pada register SCON. Pada saat penerimaan, bit
bit yang yang dapat dapat diprogram diprogram masuk masuk pada pada bit bit RB8 RB8 pada pada register register SCONSCON (salah satu
(salah satu special function special function register register ). Baud rate pada mode ini adalah). Baud rate pada mode ini adalah 1/32 atau 1/64 frekuensi osilator.
1/32 atau 1/64 frekuensi osilator.
Mode 3 : Mode 3 :
Pada mode ini data 8 bit dikirim/diterima dengan 3 bit tambahan Pada mode ini data 8 bit dikirim/diterima dengan 3 bit tambahan dengan urutan :
dengan urutan :
start bit (logika 0), start bit (logika 0),
8 bit data (dengan bit terendah di depan), 8 bit data (dengan bit terendah di depan), 1 bit tambahan yang dapat d
1 bit tambahan yang dapat diprogram,iprogram, 1 stop bit (logika 1).
1 stop bit (logika 1). Mode ini persis
Mode ini persis sama densama dengan mgan mode 2 kode 2 kecuali ecuali baud rate-nya baud rate-nya yangyang variabel.
variabel.
4.4. Pembacaan dan Penulisan Port Serial 4.4. Pembacaan dan Penulisan Port Serial
Pengiriman data pada port serial dapat dilakukan dengan cara menuliskan Pengiriman data pada port serial dapat dilakukan dengan cara menuliskan data tersebut ke register SBUF (salah satu
data tersebut ke register SBUF (salah satu special function register - special function register - SFRSFR).). Penerimaan data serial adalah melalui pembacaan register SBUF.
Penerimaan data serial adalah melalui pembacaan register SBUF.
4.5. Pengaturan Baud Rate 4.5. Pengaturan Baud Rate
Baud
Baud raterate adalah kecepatan transmisi data serial, berupa banyaknya adalah kecepatan transmisi data serial, berupa banyaknya transisi logika pada saluran data serial tiap detik. Semakin besar nilai
transisi logika pada saluran data serial tiap detik. Semakin besar nilai baudbaud rate
rate, maka semakin cepat proses pengiriman/ penerimaan data serial., maka semakin cepat proses pengiriman/ penerimaan data serial. Pada mode 0,
Pada mode 0, baud ratebaud rate adalah tetap sebesar 1/12 frekuensi osilator. Bit adalah tetap sebesar 1/12 frekuensi osilator. Bit SMOD
SMOD pada register pada register PCON PCON menentukanmenentukan baud ratebaud rate pada Mpada Mode ode 2. 2. UntukUntuk SMOD=1
SMOD=1 baud ratebaud rate adalah 1/32 frekuensi osilator, dan jika SMOD = 0 adalah 1/32 frekuensi osilator, dan jika SMOD = 0 maka
maka baud ratebaud rate adalah 1/64 frekuensi osilator adalah 1/64 frekuensi osilator . Baud rate. Baud rate untuk mode 1 untuk mode 1 dan 3 ditentukan oleh kecepatan
dan 3 ditentukan oleh kecepatan overflowoverflow pada pada Timer Timer 1 atau 1 atau Timer Timer 2 (satu 2 (satu timer untuk pengiriman dan satu
timer untuk pengiriman dan satu lagi untuk penerimaan). Dengan demikianlagi untuk penerimaan). Dengan demikian dimungkinkan penerimaan dan pengiriman data dengan kecepatan yang dimungkinkan penerimaan dan pengiriman data dengan kecepatan yang berbeda.
berbeda. Namun perlu Namun perlu diingat bahwa fasilitas diingat bahwa fasilitas ini hanya dipunyai oleh ini hanya dipunyai oleh typetype 8052 karena tipe 8051 tidak memiliki
8052 karena tipe 8051 tidak memiliki Timer Timer 2. 2. Baud rate
Baud rate = Baud rate = 32 32 2 2SMODSMOD x (
x (Timer 1 overflow rateTimer 1 overflow rate))
Konfigurasi
Konfigurasi timer timer 1 yang diperlukan untuk menjalankan fungsi di atas 1 yang diperlukan untuk menjalankan fungsi di atas adalah :
adalah : timer
timer dijalankan pada operasi "timer" atau "counter", dengan mode dijalankan pada operasi "timer" atau "counter", dengan mode 1,2 atau 3
1,2 atau 3
timer 1 interrupt
timer 1 interrupt dibuat tidak bekerja ( dibuat tidak bekerja (disabled disabled ))
Kombinasi
Kombinasi baud ratebaud rate yang mungkin adalah sebagaimana pada tabel berikut yang mungkin adalah sebagaimana pada tabel berikut ::
Tabel 4.3. Kombinasi Pemilihan Baud Rate Tabel 4.3. Kombinasi Pemilihan Baud Rate
Baud
Baud f f OSCOSC SMODSMOD Timer1Timer1 Rate
Rate C/-TC/-T ModeMode ReloadReload
Mode
Mode 0 0 Max Max : : 1 1 Mhz Mhz 12 12 MHz MHz X X X X X X XX Mode
Mode 2 2 Max Max : : 375K 375K 12 12 MHz MHz 1 1 X X X X XX Mode Mode 1,3 1,3 : : 62,5K 62,5K 12 12 MHz MHz 1 1 0 0 2 2 FFhFFh 19,2k 19,2k 11.059 11.059 MHz MHz 1 1 0 0 2 2 FDhFDh 9,6k 9,6k 11.059 11.059 MHz MHz 0 0 0 0 2 2 FDhFDh 4,8k 4,8k 11.059 11.059 MHz MHz 0 0 0 0 2 2 FAhFAh 2,4k 2,4k 11.059 11.059 MHz MHz 0 0 0 0 2 2 F4hF4h 1,2k 1,2k 11.059 11.059 MHz MHz 0 0 0 0 2 2 E8hE8h 137,5k 137,5k 11.968 11.968 MHz MHz 0 0 0 0 2 2 1Dh1Dh 110k 110k 6 6 MHz MHz 0 0 0 0 2 2 72h72h 110k 110k 12 12 MHz MHz 0 0 0 0 1 1 FEEBhFEEBh
Konfigurasi
Konfigurasi Timer Timer 2 yang berfungsi sebagai 2 yang berfungsi sebagai baud ratebaud rate generator adalah :generator adalah : bit TCLK
bit TCLK dan/atau RCLK pada register T2CON diset.dan/atau RCLK pada register T2CON diset.
Jika RCLK=1 maka serial port menggunakan pulsa Timer 2 overflow Jika RCLK=1 maka serial port menggunakan pulsa Timer 2 overflow untuk
untuk baud ratebaud rate penerimaan penerimaan data. data. Sebaliknya Sebaliknya jika jika RCLK=0 RCLK=0 makamaka serial port menggunakan pulsa Timer 1
serial port menggunakan pulsa Timer 1 overflow.overflow. Jika TCLK=1 maka
Jika TCLK=1 maka serial serial portport menggunakmenggunakan an pulsapulsa Timer 2 overflowTimer 2 overflow untuk
untuk baud ratebaud rate pengiriman data. Sebaliknya jika TCLK=0 maka pengiriman data. Sebaliknya jika TCLK=0 maka serial port
serial port menggunmenggunakan pulsaakan pulsa Timer 1 overflow.Timer 1 overflow.
Mode untuk
Mode untuk baud ratebaud rate generator seperti pada mode generator seperti pada mode auto-reload auto-reload , yaitu, yaitu adanya
adanya overflow overflow pada register timer TH2 menyebabkan dimuatnya pada register timer TH2 menyebabkan dimuatnya kembali data 16-bit yang ada register RCAP2H dan RCAP2L ke TH2 kembali data 16-bit yang ada register RCAP2H dan RCAP2L ke TH2 dan TL2.
dan TL2. Baud rate Baud rate yang dihasilkan mengikuti persamaan yang dihasilkan mengikuti persamaan Baud Rate Baud Rate = = 16 16 1 1 x (
x (Timer 2 overflow rateTimer 2 overflow rate)) Timer 2 interrupt
Timer 2 interrupt tidak perlu dinon-aktifkan tidak perlu dinon-aktifkan
4.6. Ko
4.6. Komunikmunikasi dengan banyak prosessorasi dengan banyak prosessor
Serial Port
Serial Port yang dimiliki oleh mikrokontroler MCS-51 memungkinkanyang dimiliki oleh mikrokontroler MCS-51 memungkinkan dijalankannya komunikasi dengan dengan lebih dari dua mikrokontroler dijalankannya komunikasi dengan dengan lebih dari dua mikrokontroler pada
pada jalur jalur kabel kabel komunikasi yang komunikasi yang sama sama ((multiprocessor communicationmultiprocessor communication).). Fasilitas yang unik ini dimungkinkan oleh adanya bit ke-9 pada Fasilitas yang unik ini dimungkinkan oleh adanya bit ke-9 pada komunikasi serial port dengan mode 2 dan 3 yang dapat diprogram lewat komunikasi serial port dengan mode 2 dan 3 yang dapat diprogram lewat bit
SCON. Mikrokontroler MCS-51 dap
SCON. Mikrokontroler MCS-51 dapat dikonfigurasikan agar mengaktifkanat dikonfigurasikan agar mengaktifkan sinyal interupsi jika bit ke-9 ini (bit RB8) adalah '1'. Hal ini diperoleh sinyal interupsi jika bit ke-9 ini (bit RB8) adalah '1'. Hal ini diperoleh dengan cara memberikan nilai '1' pada bit SM2 di register SCON. Cara dengan cara memberikan nilai '1' pada bit SM2 di register SCON. Cara kerja komunikasi dengan banyak prosesor ini adalah sebagai berikut :
kerja komunikasi dengan banyak prosesor ini adalah sebagai berikut :
Sebuah mikrokontroler pusat dapat mengirimkan data atau Sebuah mikrokontroler pusat dapat mengirimkan data atau address
address ke ke mikrokontroler-mikrokmikrokontroler-mikrokontroler ontroler lainnya lainnya padapada jalur data serial po
jalur data serial port. Untuk membedakan antara data denganrt. Untuk membedakan antara data dengan address
address, maka pada bit , maka pada bit ke-9 ditentukan ke-9 ditentukan '0' untu'0' untuk k data dan '1'data dan '1' untuk
untuk addressaddress..
Andaikan ada 5 buah mikrokontroler dengan
Andaikan ada 5 buah mikrokontroler dengan addressaddress masing-masing 1,2,3,4 dan 5. Mikrokontroler pusatnya masing-masing 1,2,3,4 dan 5. Mikrokontroler pusatnya adalah yang
ber-adalah yang ber-addressaddress 1. Jika mikrokontroler pusat ingin 1. Jika mikrokontroler pusat ingin berkomunikasi
berkomunikasi dengan dengan mikrokontroler mikrokontroler lain, lain, dia dia cukupcukup mengawalinya dengan mengirimkan 8 bit address mengawalinya dengan mengirimkan 8 bit address mikrokontroler yang ingin dihubung
mikrokontroler yang ingin dihubungi dan bit kei dan bit ke-9 di-9 di set set '1'.'1'. Dengan adanya bit ke-9 yang berharga '1' dan karena SM2 Dengan adanya bit ke-9 yang berharga '1' dan karena SM2 pada
pada masing-mmasing-masing register asing register SCON-nya diset '1', maka SCON-nya diset '1', maka padapada semua mikrokontroler bawahan akan terbangkit sinyal semua mikrokontroler bawahan akan terbangkit sinyal interrupt.
interrupt.
Program pelayanan interrupt dibuat sedemikian rupa untuk Program pelayanan interrupt dibuat sedemikian rupa untuk mengecek data
mengecek data addressaddress yang masuk apakah menunjuk padayang masuk apakah menunjuk pada mikrokontroler yang bersangkutan. Jika demikian maka mikrokontroler yang bersangkutan. Jika demikian maka mikrokontroler tersebut diaktifkan oleh mikrokontroler mikrokontroler tersebut diaktifkan oleh mikrokontroler pusat,
pusat, selanjutnya selanjutnya menunggmenunggu u pengiriman pengiriman data data selanjutnyaselanjutnya dan menjalankan proses sesuai dengan perintah dari dan menjalankan proses sesuai dengan perintah dari
mikrokontroler pusat. Jika
mikrokontroler pusat. Jika addressaddressnya bukan menunjuknya bukan menunjuk mikrokontroler yang bersangkutan, maka pengiriman data mikrokontroler yang bersangkutan, maka pengiriman data selanjutnya diabaikan dan program pelayanan
selanjutnya diabaikan dan program pelayanan interruptinterrupt selesai.