Posts

Showing posts from July, 2017

Penjelasan memori data AT89C51/52

Image
Gambar 1.2 memori program dan memori data Bagian kanan dari gambar 1.2 menampilkan memori data internal dan eksternal yang tersedia pada mikrokontroler flash dari atmel. Pada gambar 1.5 ditunjukan suatu konfigurasi perangkat keras untuk mengakses RAM hingga 2K byte. Dalam hal ini,CPU mengeksekusi intruksi pada Flash internal. PORT 0 bertindak sebagai bus alamat/data yang termultipleks ke RAM dan 3 jalur pada port 2 dugunakan untuk menghalamani (page) RAM. CPU menghasilkan sinyal sinyal RD atau WR seuai kebutuhan selama pengaksesa RAM eksternal. Anda dapat menentukan data eksternal hingga 64K byte. Alamat memori data eksternal bisa 1 atau 2 byte. Alamat 1 byte sering digunakan untuk membantu satu atau lebih jalur I/O dalam penghalamanan RAM, sebagai mana di tunjukan pada gambar 1.5 . Alamat dua byte dapat di pakai dalam kasus jika byte alamat tinggi dikirim melalui port 2. Memori data internal ditunjukan pada gambar 1.6 . Ruang memori dapat d i bagi menjadi tiga blok, yang d...

Penjelasan memori program pada IC AT89C51

Image
Pada gambar di bawah ditunjukan pemetaan bagian bawah dari memori progam. Setelah reset, CPU segera mengerjakan program mulai dari lokasi 0000h. Sebagai mana di tunjukaan pada gambar di atas masing masing interupsi di simpan pada lokasi yang sudah tetap dalam memori program. Sebuah interupsi menyebabkan CPU melompat ke lokasi interupsi yang bersangkutan, yaitu letak dari subrutin layanan interupsi tersebut. Misalnya, external interrupt 0 disimpan pada lokasi 0003h, jika interupsi ini digunakan, maka layanan rutin interupsi ini harus di tuliskan pada lokasi ini, jika tidak, maka lokasi tersebut bisa di pakai sebagai memori program serbaguna (untuk keperluan lainya). Lokasi lokasi layanan interupsi tersebut menempati lokasi lokasi dengan jarak 8-byte: 0003h untuk eksternal interrupt 0, 000Bh untuk timer 0, 0013h untuk external interrupt 1,001Bh untuk timer 1 dan seterusnya. Jika suatu rutin layanan interupsi sangat pendek (kurang dari 8-byte), maka seluruh rutin bisa di simpan p...

Pemisahan memori data dan program pada IC AT89C51/52

Image
Semua produk mikrokontroler flash AT89C51/52 dari atmel memiliki ruang alamat memori data dan program yang terpisah, sebagai mana di tunjukan pada gambar di bawah. Pemisahan memori data dan program tersebut membolehkan memori data diakses dengan alamat 8-bit,sehingga dapat dengan cepat dan mudah disimpan dan di manipulasi oleh CPU 8-bit. Namun demikian, alamat memori data 16-bit bisa juga di hasilkan melalui register DPTR. Blok diagram inti dari AT89C Struktur memori AT89C51/52 Memori program hanya bisa di baca saja. Terdapat memori program yang bisa diakses langsung hinggal 64K byte. Sedangkan strobe (tanda) untuk akses program memori eksternal melalui sinyal PSEN atau program store enable. Memori data menempati suatu ruang alamat yang terpisah dari memori program. Memori eksternal dapat di akses secara langsung hingga 64K byte dalam ruang memori data eksternal. CPU akan memberikan sinyal baca dan tulis, RD dan WR, selama pengaksesan memori data eksternal. Memori da...

Program AT89C51 untuk menghidupkan 4 LED ganjil dan 4 LED genap.

Image
Kali ini saya akan membahas tentang aplikasi dan pemograman sederhana IC AT89C51. Rangkaian yang perlu di ketahui adalah rangkaian sebagai berikut : Gambar rangkaian untuk menghidupkan led Rangkaian tersebut berfungsi untuk menghidupkan 8 led pada port 1. "0" berarti nyala,dan "1" berarti led mati. Program di bawah ini merupakan aplikasi untuk menghidupkan lampu 4 ganjil dan 4 genap secara bergantian : --------------------------------------------- PROGRAM ---------------------------------------------               ORG      0H Mulai : MOV     P1,#01010101B               ACALL DELAY               MOV     P0,#10101010B               ACALL  DELAY               SJMP     MULAI -------------------------------- Subrutin delay -------------------------...

Program dan aplikasi menghidupkan led menggunakan IC AT89C51

Image
Kali ini saya akan membahas tentang aplikasi dan pemograman sederhana IC AT89C51. Rangkaian yang perlu di ketahui adalah rangkaian sebagai berikut : Gambar rangkaian untuk menghidupkan led Rangkaian tersebut berfungsi untuk menghidupkan 8 led pada port 1. "0" berarti nyala,dan "1" berarti led mati. Program di bawah ini merupakan aplikasi untuk membuat kellompok 4 led mati-hidup secara bergantian (flip flop): __________________________________ LAMPU FLIP FLOP PADA PORT 1 ----------------------------------               ORG      0H Mulai : MOV     P1,#00001111B               ACALL DELAY               MOV     P0,#11110000B               ACALL  DELAY               SJMP     MULAI ------------------ Subrutin delai ------------------ DELAY : ...

Ringkasan atau penjelasan masing masing PORT I/O IC AT89C51/52

Image
1.Port 0 Port 0 merupakan port keluaran/masukan (I/O) bertipe Open drain bidirectional. Sebagai port keluaran,masing masing kaki dapat menyerap arus (sink)delapan masukan TTL (sekitar  3,8ma). Pada saat "1" di tuliskan ke kaki kaki port 0 ini,maka kaki kaki port 0 dapat digunakan sebagai masukan masukan berimpendasi tinggi. Port 0 juga dapat dikonfigurasikan sebagai bus alamat/data bagian rendah (low byte)selama proses pengaksesan memori data dan program eksternal. Jika di gunakan dalam mode ini port 0 memiliki pullup internal. Port 0 juga menerima kodekode yang di kirimkan kepadanya selama proses pemograman dan mengeluarkan kode kode selama proses verifikasi program yang telah tersimpan dalam flasg. Dalam hal ini dibutuhkan pullup eksternal selama proses verifikasi program. 2.Port 1 Port 1 merupakan port dwi arah yang dilengkapi dengan pullup internal. Penyangga keluaran port 1 mampu memberikan/menyerap arus empat masukan TTL (sekitar 1,6 ma). Jika "1...

Struktur port dan cara kerja port pada IC AT89C51/52

Image
Pada dasarnya mikrokontroler atmel keluarga 51/52 mempunyai 2 kelompokintruksi untuk mengeluarkan data ke 7port pararel (tanda 'X' artinya sama seperti program sebelumnya) : ●  kelompok intruksi pertama bekerja pada port seutuhnya artinya 8 jalur dari port bersangkutan, misalnya MOV P3,#FFh membuat ke delapan jalur port 0 semuanya dalam kondisi logika '1' (atau isinya 1111 1111 dalam biner) ● kelompok intruksi ke dua hanyai berpengaruh pada salah satu jalur atau bit dari port, misalnya intrukai SETB P3.4 artinya men-set bit-4 dari port 3 (bit 4 dari port 3 = 1>xxx1 xxxx) atau intruksi CLR.P3 di gunakan untuk me-nolkan bit 3 dari port 3 (bit 3 dari port 3 =0> xxxx 0xxx) Selain itu port pararel bisa pula di pakai untuk menerima sinyal digital dari luar microkontroler : ○ intruksi MOV A,P3 digunakan untuk membaca data (digital) pada seluruh bit (bit 0 hingga 7=8bit)port 1 kemudian menyimpanya dalam akumulator. ○ pembacaan data bisa juga dilakukan han...

Konfigurasi konfigurasi PORT I/O pada mikrokontroler atmel keluarga 51/52

Image
Pada gambar di atas ditunjukan diagram fungsional dari masing masing port yang masing masing mengandung sebuah pengancing ( lacth ) bit dan penyangga ( buffer )I/O. Penyangga bit (sama dengan 1 bit register Pi) merupakan jenis D-flip flop,yang akan memasukan (dengan sinyal clock) nilai atau data dari businternal sebagai tanggapan sinyal "tulis ke pengancing" dari CPU. Data yang terbaca dari port itu sendiri di tempatkan dalam bus internal sebagai tanggapan atas sinyal "baca kaki/pin" dari cpu. Beberapa intruksi yang digunakan untuk membaca port akan mengaktifkan sinyal "baca pengancing" ( read lacth )dan lainya mengaktifkan sinyal "baca kaki/pin". Sebagai mana ditunjukan pada gambar di atas penggerak keluaran dari port 0 dan 2 dapat di ubah dari keluaran pengancing (latch) ke arah bus ADDR (untuk P2) dan ADDR/DATA (untuk P0) internal melalui sinyal CONTROL internal yang di isi "1"(secara internal pula) yang kemudian bisa digunakan d...

Fungsi-Fungsi kaki (pin) mikrontroler atmel AT89C51/52

Image
Diagram pin AT89C51/52 Vcc (Pin no 40) 》Suplai tegangan. GND (Pin no 20) 》 g round atau pentanahan. RST 》Masukan reset. Kondisi '1' selama 2 siklus mesin selama osilator bekerja akan mereset mikrokontroler yang bersangkutan. ALE/PROG (Pin no 30) 》Keluaran ALE atau adress latch enable menghasilkan pulsa pulsa untuk mengancing byte rendah ( low byte ) alamat selama mengakses memori eksternal. Kaki ini juga berfungsi sebagai masukan pulsa program ( the program pulse input )atau PROG selama pemograman flash. Pada operasi normal, ALE akan berpulsa dengan laju 1/6 dari frekuensi kristal dan dapat di gunakan sebagai pewaktuan (timing) atau pendekatan (clocking) rangkaian eksternal. Catatan,ada satu pulsa yang di lompati selama pengaksesan memori data eksternal. Jika di kehendaki,operasi ALE bisa di matikan dengan cara mengatur bit 0 dari SFR lokasi 8Eh. Jika isinya '1', ALE hanya akan aktif selama di jumpai intruksi MOVX atau MOVC. Selain itu, kaki ini aka...