I/O dan Struktur Memori

Mikrokontroler 89C51 adalah mikrokontroler dengan arsitektur MCS51 seperti 8031 dengan memori Flash PEROM (Programmable and Erasable Read Only Memory).

Mikrokontroler 89C51
Mikrokontroler 89C51

DESKRIPSI PIN
Nomor Pin
Nama Pin
Alternatif
Keterangan
20
GND

Ground
40
VCC

Power Supply
32…39
P0.7…P0.0
D7…D0 & A7…A0
Port 0 dapat berfungsi sebagai I/O biasa, low order multiplex address/data ataupun menerima kode byte   pada saat Flash Programming
Pada fungsi sebagai I/O biasa port ini dapat memberikan output sink ke delapan buah TTL Input atau dapat diubah sebagai input dengan memberikan logika 1 pada port tersebut
Pada fungsi sebagai low order multiplex address/data
port ini akan mempunyai internal pull up
Pada saat Flash Programming diperlukan external pull up
Terutama pada saat verifikasi program
1…8
P1.0…P1.7

Port 1 berfungsi sebagai I/O biasa atau menerima low order address bytes selama pada saat Flash
Programming
Port ini mempunyai internal pull up dan berfungsi sebagai input dengan memberikan logika 1
Sebagai output port ini dapat memberikan output sink ke empat buah input TTL
21…28
P2.0…P2.7
A8…A15
Port 2 berfungsi sebagai I/O biasa atau high order address, pada saat   mengakses memory secara 16 bit
(Movx @Dptr)
Pada saat mengakes memory secara 8 bit, (Mov @Rn) port ini akan mengeluarkan isi dari P2 Special 
Function Register
Port ini mempunyai internal pull up dan berfungsi sebagai input dengan memberikan logika 1
Sebagai output port ini dapat memberikan output sink Ke empat buah input TTL
10…17

Port 3
Sebagai I/O biasa Port 3 mempunyai sifat yang sama dengan Port 1 maupun Port 2
Sedangkan sebagai fungsi spesial port-port ini mempunyai keterangan sebagai berikut
10
11
12
13
14
15
16
17
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
RXD
TXD
INT0
INT1
T0
T1
WR
RD
Port Serial Input
Port Serial Output
Port External Interrupt 0
Port External Interrupt 1
Port External Timer 0 Input
Port External Timer 1 Input
External Data Memory Write Strobe
External Data Memory Read Strobe
9
RST

Reset akan aktif dengan memberikan input high selama
2 cycle
30
ALE
PROG
Pin ini dapat berfungsi sebagai Address Latch Enable (ALE)
yang me-latch low byte address pada saat mengakses 



memori eksternal
Sedangkan pada saat Flash Programming (PROG) berfungsi sebagai pulse input untuk
Pada operasi normal ALE akan mengeluarkan sinyal clock sebesar 1/16 frekwensi oscillator kecuali pada saat mengakses memori eksternal
Sinyal clock pada pin ini dapat pula didisable dengan  men-set bit 0 dari Special Function Register di alamat 8EH ALE hanya akan aktif pada saat mengakses memori ekster- nal (MOVX & MOVC)
29
PSEN

Pin ini berfungsi pada saat mengeksekusi program yang ter- letak pada memori eksternal. PSEN akan aktif dua kali  setiap cycle
31
EA
VP
Pada kondisi low maka pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan menjalankan program yang ada pada memori eksternal setelah sistem direset
Apabila berkondisi high maka pin ini akan berfungsi untuk menjalankan program yang ada pada memori internal Pada saat Flash Programming pin ini akan mendapat te- gangan 12 Volt (VP)
19
XTAL1

Input Oscillator
18
XTAL2

Output Oscillator

STRUKTUR MEMORI 
Memori dari 89C51 terbagi menjadi:
- RAM Internal
  • Register Bank
  • Bit addressable RAM
  • General Purpose RAM 
- Register Fungsi Khusus (Special Function Register)
- Flash PEROM
- Memori Eksternal

RAM INTERNAL & REGISTER FUNGSI KHUSUS
ram internal & register fungsi khusus
ram internal & register fungsi khusus

Accumulator (ACC)
  • Terletak pada alamat E0H 
  • Operasi Aritmatik  (Add A,#05H) 
  • Operasi Logika   (Anl A,#05H) 
  • Akses Memori Eksternal  (Movx A,@DPTR) 
  • Untuk fungsi umum.

Register B
  • Terletak pada alamat B0H 
  • Fungsi umum 
  • Digunakan bersama Acc untuk operasi Aritmatik (Mul AB).

Program Status Word (D0H)
PSW

Port 
  • Port 0 (80H) 
  • Port 1 (90H) 
  • Port 2 (A0H) 
  • Port 3 (B0H) 

Data Pointer (DPTR)
  • Terdiri dari dua register yaitu o DPH (82H) o DPL (83H) 
  • Untuk akses data atau source code di memori Flash PEROM atau Memori Eksternal. 
Stack Pointer
Stack Pointer

Flash PEROM
- Kapasitas 4 Kb
- Alamat 000H hingga FFFH - Diakses bila:
  • Pin EA/VP 89C51 berlogika high 
  • Ada perintah untuk memanggil instruksi di alamat tersebut - Dapat diproteksi dengan: 
  • Lock Bit 1, tidak dapat dibaca oleh program yang berada di memori eksternal 
  • Lock Bit 2, tidak dapat dibaca oleh peralatan Programmer o Lock Bit 3, sama sekali tidak dapat mengakses/diakses oleh/dari memori eksternal.

External Memory 
  • Dibutuhkan untuk: o Memori berkapasitas besar o Emulasi Program 
  • Sistem pengalamatan Multiplex Addressing. 

Multiplex Addressing 
Pengalamatan 89C51 ke memori eksternal dipisah menjadi;
Multiplex Addressing

Low byte address bus dimultiplex dengan data bus oleh D Latch.
Control Bus
Control Bus
Akses Memori Eksternal terdiri dari:
  • Pembacaan Data
  • Pembacaan Program (Kode) 
  • Penulisan Data/Kode 

Proses Pembacaan 
Proses pembacaan dapat dianalogikan sebagai proses membaca dari halaman tertentu dari sebuah buku di mana pada proses tersebut dibutuhkan:
  • Halaman dari tulisan yang akan dibaca = Alamat Memori 
  • Perintah untuk membaca = Sinyal Read untuk Data dan Sinyal PSEN untuk kode.

Pembacaan Data dari Memori Eksternal
Instruksi:
MOV   DPTR,#[address]  ; Penentuan lokasi data yang akan dibaca 
MOVX A,@DPTR ; Perintah pembacaan data sekaligus meng-
; ambil data tersebut dan disimpan ke Aku-
; mulator A

Timing
Timing Diagram Pembacaan Data dari External Memory (Diambil dari Data Sheet AT89C51)
Timing Diagram Pembacaan Data dari External Memory (Diambil dari Data Sheet AT89C51)

Pembacaan Kode dari Memori Eksternal
Timing Diagram Pembacaan Kode dari External Memory (diambil dari Data Sheet AT89C51)
Timing Diagram Pembacaan Kode dari External Memory (diambil dari Data Sheet AT89C51)

Penulisan Data ke Memori Eksternal
Proses penulisan dapat dianalogikan dengan menuliskan suatu tulisan ke halaman tertentu dalam buku di mana dibutuhkan.
  • Tulisan yang akan ditulis = Data 
  • Halaman yang akan ditulisi = Alamat 
  • Perintah menulis = Sinyal Write
Gambar 1.11 Timing Diagram Penulisan Data ke External Memory diambil dari Data Sheet AT89C51)
Gambar 1.11 Timing Diagram Penulisan Data ke External Memory diambil dari Data Sheet AT89C51)

Posting Komentar

Lebih baru Lebih lama

نموذج الاتصال