Berbagai Jenis Register yang digunakan pada Mikrokontroler 8051

Coba Instrumen Kami Untuk Menghilangkan Masalah





Register adalah bagian utama dari mikrokontroler dan prosesor yang menyediakan cara cepat untuk mengumpulkan dan menyimpan data. Jika kita ingin memanipulasi data dengan pengontrol atau prosesor dengan melakukan penjumlahan, pengurangan, dan sebagainya, kita tidak dapat melakukannya secara langsung di memori, tetapi perlu register untuk memproses dan menyimpan data. Mikrokontroler berisi beberapa jenis register yang dapat diklasifikasikan menurut konten atau instruksi yang beroperasi di dalamnya.

Berbagai Jenis Register di Mikrokontroler 8051

Daftar




Register adalah tempat kecil di dalam CPU yang dapat menyimpan sejumlah kecil data yang digunakan untuk melakukan berbagai operasi seperti penjumlahan dan perkalian serta memuat data yang dihasilkan ke memori utama. Register berisi alamat lokasi memori tempat data akan disimpan. Ukuran register sangat penting untuk pengendali modern . Misalnya, untuk register 64-bit, CPU mencoba menambahkan dua angka 32-bit dan memberikan hasil 64-bit.

Jenis Register

Mikrokontroler 8051 berisi dua jenis register:



  • Register tujuan umum (register beralamat Byte)
  • Register fungsi khusus (Register beralamat bit)
Memori RAM 8051

Memori RAM 8051

Itu 8051 mikrokontroler terdiri dari 256 byte RAM, yang dibagi menjadi dua cara, seperti 128 byte untuk tujuan umum dan 128 byte untuk memori register fungsi khusus (SFR). Memori yang digunakan untuk tujuan umum disebut RAM, dan memori yang digunakan untuk SFR berisi semua register terkait periferal seperti Accumulator, register 'B', Timer atau Counter, dan register terkait interupsi.

Register Tujuan Umum

Memori Tujuan Umum

Memori Tujuan Umum

Memori tujuan umum disebut sebagai RAM dari mikrokontroler 8051, yang terbagi menjadi 3 area seperti bank, area bit-addressable, dan area scratch-pad. Bank berisi register tujuan umum yang berbeda seperti R0-R7, dan semua register tersebut adalah register beralamat byte yang menyimpan atau menghapus hanya data 1-byte.


Bank dan Register

B0, B1, B2, dan B3 adalah singkatan dari bank, dan setiap bank berisi delapan register tujuan umum mulai dari 'R0' hingga 'R7'. Semua register ini dapat beralamat byte. Transfer data antara register tujuan umum ke register tujuan umum tidak dimungkinkan. Bank-bank ini dipilih oleh register Program Status Word (PSW).

Register Tujuan Umum

Register Tujuan Umum

Daftar PSW (Program Status Word)

Register PSW adalah register bit dan byte-addressable. Register ini mencerminkan status operasi yang dilakukan pada pengontrol. Register PSW menentukan pemilihan bank dengan RS1 dan RS0, seperti yang ditunjukkan di bawah ini. Alamat fisik PSW dimulai dari D0h dan bit individu diakses dengan D0h hingga D7h.

Register PSW

Register PSW

Bendera Carry (C) : Alamat bendera Carry adalah D7. Bendera pembawa ini terpengaruh ketika bit dihasilkan dari posisi ke-7.
Ketika C = 0 membawa ulang
C = 1 carry set

Bawa Bendera

Bawa Bendera

Bendera Bantu (AC) : Alamat carry tambahan adalah D5. Carry tambahan ini terpengaruh ketika sedikit dihasilkan dari posisi ke-3 ke posisi ke-4.
AC = 0 bantu disetel ulang
AC = 1 alat bantu disetel

Auxiliary Carry (AC)

Auxiliary Carry (AC)

Overflow Flag (OV) : Alamat dari flag overflow adalah D2. Ketika bit dihasilkan dari posisi ke-6 ke posisi ke-7, maka tanda overflow terpengaruh.

OV = 0 reset flag overflow
OV = 1 set flag overflow

Bendera Overflow

Bendera Overflow

Parity Flag (P) : Alamat dari bendera paritas adalah D0. Saat menjalankan operasi aritmatika, jika hasilnya 1, maka bendera paritas disetel - jika tidak, reset.
RS1 dan RS0
RS1 dan RS0, bit dalam register PSW, digunakan untuk memilih lokasi memori yang berbeda (bank0 ke bank4) di RAM.

Register pemilihan bank

Register pemilihan bank

Berikut ini adalah contoh penggunaan register ini.

Contoh berikut menunjukkan penambahan dua angka dan kemudian penyimpanan nilai akhir di register Bank1 menggunakan program tingkat perakitan.

Org 0000h
MOV PSW, # 00j
MOV A, 15
TAMBAHKAN A, 20
MOV 00j, A
AKHIR

Program perakitan untuk memindahkan 6 bilangan asli di bank0 register R0-R5

Org 0000h (pernyataan alamat awal)
MOV PSW, # 00h (buka memori bank0)
MOV r0, # 00h (alamat awal memori bank0)
MOV r1, # 01h
MOV r2, # 02h
MOV r2, # 03h
MOV r3, # 04h
MOV r4, # 05h
AKHIR

Program perakitan untuk memindahkan 6 bilangan asli di bank1 register R0-R7

Org 0000h (pernyataan alamat awal)
MOV PSW, # 08h (buka memori bank1)
MOV r0, 00h (nilai dikirim ke memori bank1)
MOV r1, 02h
MOV r2, 02h
MOV r2, 03h
MOV r3, 04h
MOV r4, 05h
MOV r5, 06h
MOV r6, 07h
MOV r7, 08h
AKHIR

Register Fungsi Khusus (SFR)

Register fungsi khusus adalah RAM atas di 8.051 mikrokontroler . Register ini berisi semua register yang terkait secara periferal seperti P0, P1, P2, P3, timer atau counter, port serial, dan register terkait interupsi. Alamat memori SFR dimulai dari 80h hingga FFh. Register SFR diimplementasikan oleh register alamat-bit dan register alamat-byte.

Register Fungsi Khusus (SFR)


Register Fungsi Khusus (SFR)

Register akumulator, register B, Po, P1, P2, P3, IE adalah register beralamat bit yang tersisa, semuanya merupakan register beralamat byte.

Aki

Akumulator yang juga dikenal sebagai ACC atau A adalah bit serta register yang dapat dialamatkan byte dengan alamat akumulator. Jika Anda ingin menggunakan register beralamat bit, Anda dapat menggunakan satu bit (E0) dari register dan Anda dapat menggunakan akumulator 8-bit sebagai register beralamat byte. Akumulator menyimpan hasil dari sebagian besar operasi Aritmatika dan logika.

Daftar akumulator

Daftar akumulator

Program Perakitan untuk pengurangan yang digunakan dengan Akumulator

Org 0000h
MOV R0, # 09h
MOV A, # 03h (data 1 byte)
SUBB A, 01j (1 byte data)
AKHIR

B-Register

Register-B adalah register bit dan byte-addressable. Anda dapat mengakses 1-bit atau 8-bit dengan alamat fisik F0h. Misalkan untuk mengakses bit 1, kita harus menggunakan f1. Register B hanya digunakan untuk operasi perkalian dan pembagian.

B-Register

B-Register

Program Assembly untuk perkalian yang digunakan dengan B-Register

Org 0000h
MOV A, # 09h
MOV B, # 03h
MUL A, B (Nilai akhir disimpan di A)
AKHIR
Program Majelis untuk Divisi digunakan dengan B-Register
Org 0000h
MOV A, # 09h
MOV B, # 03h
DIC A, B (Nilai akhir disimpan di A)
AKHIR

Port Register

Mikrokontroler 8051 terdiri dari 4 port input dan output (P0, P1, P2, dan P3) atau pin 32-I / O. Setiap pin dirancang dengan transistor dan register P. Itu konfigurasi pin sangat penting untuk mikrokontroler yang bergantung pada status logika register. Konfigurasi pin sebagai masukan yang diberikan oleh 1 atau keluaran 0 bergantung pada status logika. Jika logika 1 diterapkan ke bit register P, transistor output mematikan pin yang sesuai yang bertindak sebagai pin input.

Port Register dari 8051

Port Register dari 8051

Program perakitan untuk mengaktifkan LED pada Port0

ORG 0000h
KEMBALI: MOV P0, # 00h
ACALL DEL1
MOV P0, # 0FF
ACALL DEL1
PENGEMBALIAN SJMP
DEL1: MOV R2, # 200
DEPAN: DJNZ R0, # 230
DJNZ R2, DEL
BAIK
AKHIR

Penghitung dan register

Banyak mikrokontroler terdiri dari satu atau lebih pengatur waktu dan penghitung . Pengatur waktu digunakan untuk menghasilkan penundaan waktu yang berharga dan sumber untuk pengatur waktu adalah osilator kristal. Penghitung digunakan untuk menghitung jumlah kejadian eksternal - misalnya, penghitung objektif , dan sumber penghitung adalah pulsa eksternal yang diterapkan melintasi pin penghitung.

Mikrokontroler 8051 terdiri dari dua timer 16-bit dan counter seperti timer 0 dan timer 1. Kedua timer tersebut terdiri dari register 16-bit di mana byte yang lebih rendah disimpan di TL dan byte yang lebih tinggi disimpan di TH. Timer dapat digunakan sebagai penghitung serta untuk operasi pengaturan waktu yang bergantung pada sumber pulsa clock ke penghitung.

Penghitung dan Timer di mikrokontroler 8051 berisi dua register fungsi khusus: TMOD (Timer Mode Register) dan TCON (Timer Control Register) , yang digunakan untuk mengaktifkan dan mengonfigurasi pengatur waktu dan penghitung.

Jenis Register Geser

Register geser adalah jenis rangkaian logika sekuensial yang terutama digunakan untuk penyimpanan data digital. Register geser adalah register beralamat bit yang hanya menyimpan satu bit data. Register geser dikonstruksi dengan sandal jepit - sekelompok sandal jepit yang dihubungkan sebagai rantai sehingga keluaran dari satu sandal jepit menjadi masukan dari flip-flop berikutnya.

Semua flip-flop digerakkan oleh sinyal clock yang diimplementasikan oleh D-flip-flap. Register geser terutama digunakan untuk komunikasi serial .

Ini diklasifikasikan menjadi 4 jenis:

  • Serial in Serial out (SISO)
  • Serial in Parallel Out (SIPO)
  • Paralel dalam Serial out (PISO)
  • Parallel in Parallel Out (PIPO)
D- register flipflop

D- register flipflop

Ini semua adalah jenis register yang berbeda di mikrokontroler 8051. Kami berharap kami berhasil memberi Anda konten yang relevan dengan program yang sesuai untuk setiap pendaftaran. Selanjutnya, untuk bantuan apa pun untuk mengetahui pengkodean beberapa register lain, Anda dapat menghubungi kami dengan memberi komentar di bawah.

Kredit Foto: