Anda di halaman 1dari 24

5/3/2010

E4160 SISTEM MIKROPEMPROSES & PENGAWAL MIKRO


MIKROPENGAWAL (MICROCONTROLLER)

PENGENALAN

mikropengawal merupakan mikrokomputer dalam satu serpih (cip). Ia terdiri daripada mikroprosessor, ingatan dalaman (ROM/RAM), input output secara siri dan selari, pemasa, pembilang serta periferal-periferal lain. Diantara contoh-contoh serpihan mikropengawal ialah Motorola (M68HC11, M68HC12, M68HC16, M68HC05), Intel (8X51, 8X96, 8X251, 80186), Microchip (PIC 165X, PIC166X, PIC 167X, PIC 16FXX, PIC 18FXX), Atmel, Ziloq dan sebagainya

5/3/2010

GAMBARAJAH BLOK MIKROPENGAWAL

M68HC11

5/3/2010

MODEL PENGATURCARAAN 68HC11

MODEL PENGATURCARAAN 68HC11

Penumpuk A, B & D Penumpuk A & B adalah penumpuk kegunaan umum yang bersaiz 8 bit. Ia boleh diolah menjadi satu daftar 16 bit atau 2 daftar 8 bit yang berasingan yang mana bole digabungkan menjadi penumpuk 16 bit iaitu penumpuk D (penumpuk A=MSB, B =LSB). Penumpuk ini digunakan untuk menyimpan hasil pengiraan aritmetik dan pengolahan data. Daftar Indeks X & Y Daftar X & Y digunakan sebagai penuding ingatan atau pun input/output dalam pemindahan dan pengolahan data.

5/3/2010

MODEL PENGATURCARAAN 68HC11

Penunjuk Tindanan (SP) Penunjuk Tindanan (Stack Pointer) digunakan untuk menyimpan alamat RAM yang menunjukkan ke puncak tindanan. Lebar SP adalah 16bit, maka saiz maksimum tindanan = 216 = 64K bait. Pembilang Aturcara (PC) Pembilang aturcara merupakan daftar 16 bit yang menuding kepada suruhan selanjutnya yang perlu dicapai & dilaksanakan serta ditokok secara automatic oleh CPU. PC tidak boleh diubah secara langsung oleh pengaturcara dan hanya boleh diubah oleh suruhan cabang dan lompat secara tidak langsung

MODEL PENGATURCARAAN 68HC11

EPROM dalaman EPROM dalaman bersaiz 512 bait dan terletak dialamat $B600 - $B7FF. EPROM ini boleh digunakan untuk menyimpan aturcara dan data. RAM dalaman RAM dalaman bersaiz 256 bait dan terletak dialamat $00$FF. RAM ini boleh digunakan untuk menyimpan aturcara sementara dan data-data sebagai tindanan.

5/3/2010

MODEL PENGATURCARAAN 68HC11

Daftar daftar kawalan Terdapat 64 daftar kawalan di alamat $1000- $103F. Daftar-daftar ini digunakan untuk mengawal operasi peripheral- peripheral dalaman yang terdapat dalam 68HC11 seperti pemasa (timer), input output selari dan sesiri,penukar analog kepada digital (A/D converter) dan sebagainya.

MODEL PENGATURCARAAN 68HC11

Daftar Kod Keadaan (CCR)-Bendera

5/3/2010

BAHASA HIMPUNAN 68HC11

Bahasa himpunan bagi 68HC11 terdiri daripada satu suruhan yang mengandungi mnemonik dan alamat berkesan dimana mnemonic merupakan suruhansuruhan yang akan menterjemahkan kepada bahasa mesin/kod manakala alamat berkesan merupakan alamat sebenar dimana data akan dibaca/ diambil (punca) atau ditulis /disimpan (destinasi) oleh kod. Contohnya: Mnemonic alamat berkesan LDAA #$56 STAA $1009

RAGAM PENGALAMATAN 68HC11

Ragam pengalamatan (addressing modes) merupakan cara bagaimana data atau alamat berkesan bagi kendendalian sesuatu suruhan/ arahan ditulis. Ragam pengalamatan yang berbeza membolehkan penulisan sesuatu aturcara ditulis dengan lebih pendek, mudah dibaca, dan mudah dinyahpepijat. Terdapat enam ragam pengalamatan dalam 68HC11 iaitu;

Ragam terdekat ( immediate mode) Ragam ini menggunakan symbol # sebagai awalan pada setiap kendalian dimana kendalian adalah terdiri daripada saru pemalar atau data terdekat sahaja. Contoh: LDAA #16 LDD #$0A

5/3/2010

RAGAM PENGALAMATAN 68HC11

Ragam tersirat (inherent mode) Ragam ini tidak mempunyai kendalian dan ia hanya terdiri dari opkod sahaja. Contoh: DEX RTS Ragam langsung (direct mode) Ragam ini melibatkan kendalian / alamat berkesan sebayak 8 bit (1 bait) iaitu dalam julat $00-$FF. Ingatan $00-$FF ini dipanggil ingatan halaman sifar (page zero memory). Dalam 68HC11, ingatan ini adalah bersaiz 256 bait (RAM dalaman). Contoh: STAA $66 LDAA $F0

RAGAM PENGALAMATAN 68HC11

Ragam terluas/ alamat panjang (extended mode)


Ragam ini melibatkan kendalian/alamat berkesan sebanyak 16 bit (2 bait) iaitu dalam julat $0000-$FFFF. Contoh: STAA $4444 LDAB $5455 Ragam ini tidak melibatkan alamat berkesan secara lansung dalam sesuatu kendalian dimana alamat berkesan diberikan oleh kandungan daftar indek X atau Y yang ditambah dengan offset (offset = pemalar 8 bit tak bertanda). Contoh: STAA 100,X LDAA $6E,Y

Ragam indeks tak langsung (Indexed mode)

5/3/2010

RAGAM PENGALAMATAN 68HC11

Ragam relatif (relative mode)


Raga

mini melibatkan alamat berkesan yang bernilai 8 bit bertanda(offset) relatif kepada nilai semasa pembilang aturcara (PC). Biasanya ragam ini digunakan dalam suruhan cabang. Julat offset ialah -128 hingga +127 yang mana suruhan cabang hanya bileh lompat/cabang sejauh 127 bait ke depan atau 128 bait kebelakang dari nilai pembilang aturcara semasa (PC). Bagi suruhan cabang; Offset = alamat destinasi (alamat asal +2)

SET SURUHAN 68HC11

Terdapat enam kumpulan set suruhan dalam 68HC11 iaitu; Suruhan pindahan data Suruhan aritmetik Suruhan pindahan kawalan Suruhan logik dan pemindahan bit Suruhan anjak dan putar Suruhan pelbagai Setiap suruhan memerlukan masa pelaksanaan. Masa pelaksanaan diberikan dalam unit Kitar Suruhan (cycle) dimana;

5/3/2010

SET SURUHAN 68HC11

SURUHAN PINDAH DATA

Suruhan pindah data boleh dibahagikan kepada; Suruhan muat (Load) data Suruhan ini digunakankan untuk pindahkan data dari ingatan/input output yang diberikan oleh alamat berkesan (ALB) kedalam daftar atau penumpuk. Mnemonik asas adalah LD (LOAD). Contoh : LDAA ALB - muat penumpuk A dengan data dari ALB LDAB ALB -muat penumpuk B dengan data dari ALB Suruhan simpan (store) data Suruhan ini digunakan untuk simpan data dari daftar atau penumpuk kedalam ingatan atau input output yang diberikan oleh alamat berkesan. Mnemonik asas adalah ST (STORE). Contoh: STAA ALB - simpan penumpuk A ke dalam ALB STAB ALB - simpan penumpuk B ke dalam ALB

5/3/2010

SURUHAN PINDAH DATA

Suruhan pindah (transfer) dan tukar ganti (exchange)


Suruhan ini digunakan untuk memindahkan data dari penumpuk atau daftar ke penumpuk atau daftar secara dalaman. Suruhan ini tidak memerlukan alamat berkesan dalam kendaliannya. Contoh: TAB - pindah A ke dalam B TBA -pindah B ke dalam A

Suruhan padam daftar dan ingatan (clear)


Suruhan ini digunakan untuk memadamkan data pada daftar atau ingatan. Contoh: CLRA - padam penumpuk A CLRB -padam penumpuk B

SURUHAN PINDAH DATA

Suruhan simpan dan ambil dari tindanan (push & Pull) Suruhan ini melibatkan pergerakan data dalam penuding tindanan (Stack Pointer). Contoh: PSHA - letak/simpan/tindan 1 bait penumpuk A atas tindanan/ingatan yang ditunjukkan oleh SP PSHB - letak/simpan/tindan 1 bait penumpuk B atas tindanan/ingatan yang ditunjukkan oleh SP

10

5/3/2010

CONTOH APLIKASI SET SURUHAN


Selesaikan aturcara dibawah dan setiap arahan adalah berkaitan antara satu arahan dengan arahan yang berikutnya; Diberi kandungan ingatan:

CONTOH APLIKASI SET SURUHAN

Penyelesaian;

11

5/3/2010

PERKAKASAN 68HC11

Cip-cip untuk 68HC11 terdiri daripada jenis PLCC ( Plastic Leaded Chip Carrier) dan DIP (plastic dual inline package)

68HC11 DIP (48 PIN)

12

5/3/2010

68HC11 DIP

68HC11 DIP

13

5/3/2010

68HC11 DIP

68HC11 DIP

14

5/3/2010

68HC11 DIP

68HC11 DIP

15

5/3/2010

68HC11 DIP

68HC11 DIP

16

5/3/2010

68HC11 DIP

68HC11 DIP

17

5/3/2010

KENDALIAN 68HC11

Terdapat empat jenis kendalian untuk 68HC11 iaitu;


Ragam

Serpih Tunggal (single chip) Ragam terluas (expanded) Ragam ikat but (bootstrap) Ragam Uji (test)

KENDALIAN 68HC11

Ragam Serpih tunggal

Dalam ragam mini 68HC11 tidak memerlukan bas data/alamat luaran untuk berkendali. Maka liang B dan C boleh digunakan sebagai I/O dimana hanya ingatan dalaman sahaja digunakan diamana aturcara hendaklah ditulis dalam ROM di alamat $E000-$FFFF.

Ragam terluas

Dalam ragam mini 68HC11 memerlukan bas data/alamat luaran untuk berkendali. Maka liang B dan C digunakan sebagai bas data dan alamat luaran diamana ruang alamat maksimum yang boleh dicapai hanya 64K.

18

5/3/2010

KENDALIAN 68HC11

Ragam Ikat but

Dalam ragam mini 68HC11 tidak memerlukan bas data/alamat luaran untuk berkendali. Maka liang B dan C boleh digunakan sebagai I/O. Berguna untuk pembelajaran dan mengaturcara EEPROM.

Ragam Uji

Ragam ini hanya digunakan untuk pengujian dalaman sahaja.

PENGANTARAMUKAAN
PENGANTARAMUKAAN

PERIFERAL /PERISIAN

DALAMAN 68HC11
PERANTARAMUKAAN

PERIFERAL DALAMAN SECARA

AM PERANTARAMUKAAN MASUKAN-KELUARAN SELARI PERANTARAMUKAAN ANALOG PERANTARAMUKA SIRI PERANTARAMUKA PERIFERAL SIRI

19

5/3/2010

68HC11 DALAM APLIKASI KAWALAN

Dalam sistem kawalan, penggunaan mikropengawal amat luas. Contohnya dalam aplikasi kereta mainan, robotik, sistem keselamatan rumah, dan sebagainya.

68HC11 DALAM APLIKASI KAWALAN

APLIKASI 7SEGMEN
Secara

umumnya, LED 7 Ruas terdiri daripada 7 ruas yang dilabel sebagai ruas a,ruas b, ruas c, ruas d, ruas e, ruas f dan ruas ruas g seperti yang ditunjukkan

20

5/3/2010

68HC11 DALAM APLIKASI KAWALAN

68HC11 DALAM APLIKASI KAWALAN

21

5/3/2010

68HC11 DALAM APLIKASI KAWALAN

68HC11 DALAM APLIKASI KAWALANCONTOH

Contoh: Bina jadual kebenaran bagi memarkan perkataan baca pada satu LED 7 ruas secara anod sepunya . Kirakan pemalar , sekiranya lengah 100ms diantara setiap huruf/aksara yang dipaparkan dan anggapkan frekuensi pengayun adalah 8MHz. Tuliskan satu aturcara untuk paparkan perkataan baca pada satu LED 7 ruas secara anod sepunya.

22

5/3/2010

68HC11 DALAM APLIKASI KAWALANCONTOH

Penyelesaian;

68HC11 DALAM APLIKASI KAWALANCONTOH

23

5/3/2010

68HC11 DALAM APLIKASI KAWALANCONTOH

24

Anda mungkin juga menyukai