Mikrokontroler Atmega8535



ATMega8535 merupakan salah satu mikrokontroler keluarga ATMEL dari perkembangan terakhir, yaitu generasi AVR (Alf and Vegard’s Risc Processor).  Mikrokontroler  AVR memilikia RISC (Reduced Instruction Set Computing) 8 bit, dimana semua instruksi dikemas dalam kode 16-bit (16-bit Word) dan sebagian besar instruksi di eksekusi dalam 1 (satu) siklus clock, serta mempunyai kecepatan maksimal 16MHZ. Selain itu, ATMega8535 mempunyai 6 pilihan mode sleep untuk menghemat daya listrik.

Fitur-fitur yang diberikan oleh mikrokontroler ATMega8535 adalah sebagai berikut:

1.    Saluran I/O sebanyak 32 buah, yaitu Port A sampai Port D (port A, B, C, D)

2.    ADC (Analog to Digital Converter) 10 bit sebanyak 8 chanel.

3.   Tiga buah Timer/Counter dengan kemampuan pembandingan, yaitu 2 buah timer/counter 8 bit, dan 1 buah timer/counter 16 bit.

4.    CPU yang memiliki 32 buah register

5.    131 Instruksi yang hanya membutuhkan 1 siklus clock

6.    Watchdog Timer dengan osilator internal

7.    Tegangan operasi 2,7 V – 5,5 V

8.    Internal SRAM sebesar 512 byte

9.    Memori Flash sebesar 8 KB dengan kemampuan Read While Write.

10.  Unit interupsi internal dan eksternal

11.  Port antarmuka SPI (Serial Pheripheral Interface).

12.  Kecepatan hampir mencapai 16 MPIS pada Kristal 16 Mhz

13.  Internal downloader USB AVR (In-system Programming dilengkapi LED programming indicator)

14.  Tidak membutuhkan power tambahan saat melakukan download program

15. EEPROM (Electrically Erasble Programmable Read Only Memory). sebesar 512 byte yang dapat diprogram saat operasi.

16.  Antarmuka komparator analog.

17.  Port USART untuk komunikasi serial.

Beberapa karakteristik ADC Internal Yang terdapat pada mikrokontroller ATMega8535 adalah:

a.       Mudah dalam pengoperasian.

b.      Resolusi 10 bit.

c.       Memiliki 8 masukan analog.

d.      Konversi pada saat CPU sleep.

e.      Interrupt waktu konversi selesai

Berikut diagram blok ATmega8535 :

Berikut sekema minimum system ATmega 8535 :

Konfigurasi pin ATmega8535 :
Berikut ini adalah penjelasan umum susunan kaki dari ATmega8535 :
1.   VCC merupakan pin masukan positif catu daya. Setiap piranti elektronika digital membutuhkan sumber daya yang umumnya sebesar 5V. Oleh karena itu, biasanya di PCB kit mikrokontroler selalu ada IC regulator 7805
2.   GND sebagai pin ground
3.   Port A (PA0..PA7) merupakan pin I/O dua arah dan dapat diprogram sebagai pin masukan ADC
4.   Port B (PB0..PB7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu Timer/Counter, komparator analog, dan SPI
5.   Port C (PC0..PC7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu TWI, komparator analog dan Timer Osilator
6.  Port D (PD0..PD7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu komparator analaog, interupsi eksternal, dan komunikasi serial
7.   Reset merupakan pin yang digunakan untuk me-reset mikrokontroler
8.  XTAL1 dan XTAL2 sebagai pin masukan clock eksternal. Suatu mikrokontroler membutuhkan sumber detak (clock) agar dapat mengeksekusi instruksi yang ada di memeori. Semakin tinggi nilai kristalnya, semakin cepat mikrokontroler tersebut
9.   AVCC sebagai pin masukan tegangan untuk ADC
10. AREF sebagai pin masukan tegangan referensi
c. Memori mikrokontroler ATMega8535
Organisasi memori mikrokontroler ATMega8535 dapat dibagi atas dua bagian berbeda berdasarkan fungsinya dalam menyimpan data program, yaitu memori program dan memori data. Memori program digunakan untuk  instruksi yang akan dijalankan oleh mikrokontroler. Memori jenis ini biasanya bertipe ROM (Read Only Memory), yang digunakan untuk menyimpan program. Sedangkan memori data digunakan sebagai tempat penyimpanan data-data yang sedang diakses oleh mikrokontroler.
Memori Data
Memori data terbagi menjadi 3 bagian, yaitu 32 buah register umum, 64 buah register I/O, dan 512 byte SRAM Internal. Register keperluan umum menempati space data pada lamat terbawah, yaitu $00 sampai $1f. Sementara itu, register khusus untuk menangani I/O dan control terhadap mikrokontroler menempati 64 alamat berikutnya, yaitu mulai dari $20 sampai $5f. Register tersebut merupakan register khusus yang dipergunakan untuk mengatur fungsi terhadap berbagai peripheral mikrokontroler, seperti control register, timer/counter, fungsi-fungsi I/O, dan sebagainya. Alamat memori berikutnya digunakan untuk SRAM 512 byte, yaitu pada lokasi $60 sampai dengan $25F. Selain itu, AVR ATMega8535 juga memiliki memori data berupa EEPROM 8-bit sebanyak 512 byte. Alamat EEPROM dimulai dari $000 sampai dengan $1FF.
Memori Program
Memori program yang terletak dalam flash PEROM (Programmable Erasble Read Only Memory) tersusun dalam word atau 2 byte karena setiap instruksi memiliki lebar 16-bit atau 32-bit. Flash PEROM adalah PROM yang dapat ditulis ulang beberapa kali, dan dapat dihapus secara elektrik atau dengan tegangan listrik. AVR ATMega8535 memiliki 4Kbyte X 16-bit Flash PEROM dengan alamat mulai dari $000 sampai dengan $FFF. AVR tersebut memiliki 12-bit Program Counter(PC) sehingga mampu mengalamati isi Flash.
d. Status Register (SREG)
Status register adalah register berisi status yang dihasilkan pada setiap operasi yang dilakukan ketika suatu intruksi dieksekusi SREG merupakan bagian dari inti CPU mikrokontroler.
1.       Bit 7-1: Global Interrupt Enable.
Bit harus diset untuk meng-enable interupsi. Hal ini dilakukan dengan cara mengaktifkan interupsi yang akan digunakan, melalui meng-enable bit control register yang bersangkutan secar individu. Bit akan di-clear apabila terjadi suatu interupsi yang dipicu oleh hardware, dan bit tidak akan mengizinkan terjadinya interupsi, serta akan diset kembali oleh RET1.
2.       Bit 6-T: Bit Copy Storage.
Instruksi BLD dan BST menggunakan bit-T sebagai sumber atau tujuan dalam operasi bit. Suatu bit dalam sebuah register GPR dapat disalinke bit T menggunakan instruksi BST, dan sebaliknya bit T dapat disalin kembali ke suatu bit dalam register GPR menggunakan intruksi BLD.
3.       Bit 5-h: Half carry flag.
4.       Bit 4-s: Sign Bit.
Bit S merupakan hasil operasi EOR antara flag-N (negative) dan Flag V (complement dua overflow).
5.       Bit 3-V: Two’s Complement Overflow Flag.
Bit berguna untuk mendukung operasi aritmatika.
6.       Bit 2-N: Negative Flag.
Apabila suatu operasi menghasilkanbilangan negative, maka flag-N akan diset.
7.       Bit 1-Z: Zero Flag.
Bit akan diset bila hasil operasi yang diperoleh adalah nol.
8.       Bit 0-C: Carry Flag.
Apabila suatu operasi menghasilkan carry, maka bit akan diset.
e. I/O Port
Port I/O pada mikrokontroler ATMega8535 dapat difungsikan sebagai input ataupun output dengan keluaran high atau low. Untuk mengatur fungsi port I/O sebagai input ataupun output, perlu dilakuan setting pada DDR dan Port. Tabel 2.1 merupakan table konfigurasi setting untuk Port I/0.
Tabel Konfigurasi setting untuk Port I/O
DDR bit = 1DDR bit = 0
Port bit = 1Output HighInput pull-up
Port bit = 0Output LowInput Floating
Logika Port I/O dapat diubah-ubah dalam program secara byte atau hanya bit tertentu. Mengubah sebuah keluaran bit I/O dapat menggunakan perintah cbi (clear bit I/O) untuk menhasilkan output low atau perintah sbi (set bit I/O) untuk menghasilkanoutput high. Pengubahan secara byte dengan perintah in atau out yang menggunakan register bantu. Port I/O sebagai output hanya memberikan arus sourching sebesar 20mA sehingga untuk menggerakan motor servo perlu diberikan penguat tambahan atau dengan konfigurasi port sebagai sinking current, seperti port untuk menyalakan LED yang kan menyala saat port diberikan logika low, dan mati saat port diberikan logika  high.  Berikut ini instruksi yang terdapat pada I/O:
1. In
Membaca data I/O Pot atau internal peripheral register (Timers, UART) ke dalam register.
2. Out
Menulis data sebuah register ke I/O port atau internal peripheral register.
3. Idi (load immediate)
Untuk menulis konstanta ke register sebelum konstanta itu dituliskan ke I/O Port.
4. Sbi (set bit in I/O)
Untuk membuat Logika high satu bit I/O register.
5. Cbi (clear bit in I/O)
Untuk membuat Logika low satu bit I/O register.
6. Sbic (skip if bit in I/O I cleared)
Untuk mengecek apakah bit I/O register clear. Jika clear, skip satu perintah dibawahnya.
7. Sbis (skip if bit in I/O is set)
Untuk mengecek apakah bit I/O register set. Jika set, skip satu perintah dibawahnya.


Baca Juga Ya...!!!:

Tidak ada komentar: