Adapun arsitektur dari mikrokontroler AT89S51 dapat dilihat sebagai berikut :<\/p>\n
Gambar 15 Diagram blok mikrokontroler 89S51<\/p>\n Dan arsitektur memori mikrokontroler 8051 dapat dilihat pada gambar<\/p>\n Gambar 16 Arsitektur Memori Mikrokontroller 8051<\/p>\n <\/p>\n Fasilitas Timer dan Counter<\/strong> <\/p>\n Interupsi Timer Counter<\/strong>
<\/a><\/p>\n
<\/a><\/p>\n
\nBanyak aplikasi mikrokontroler memerlukan penghitungan dari kejadian eksternal, seperti frekuensi dari pulsa atau pembangkitan tunda waktu internal antar komputer. Kedua contoh tersebut dapat dilakukan menggunakan teknik software, namun loop software untuk penghitungan atau pewaktuan mejadikan prosesor terbebani. Oleh karena itu untuk menghidari hal tersebut kita dapat menggunakan fasilitas yang tersedia di mikrokontroler berupa up counter 16-bit yang diberi nama T0 dan T1. Setiap counter mungkin deprogram untuk menghitung pulsa clock internal, beraksi sebagai timer atau diprogram sebagai counter untuk menghitung pulsa eksternal.<\/p>\n
\nCounter telah dimasukan ke dalam chip, sehigga processor dapat melakukan kerja penghitungan dan pewaktuan. Ketika program menginginkan untuk menghitung jumlah tertentu dari pulsa internal atau kejadian eksternal, sebuah angka ditempatkan pada counter. Counter bertambah dari angka awal ke maksimum dan kemudian kembali ke nol pada pulsa akhir dan juga mengatur timer flag. Kondisi flag diuji oleh sebuah nstruksi untuk memberitahu program bahwa hitungan telah dilakukan atau flag digunakan untuk meninterupsi program.<\/p>\n