atmega

Upload: dianti-utamidewi

Post on 18-Jul-2015

156 views

Category:

Documents


0 download

TRANSCRIPT

ATMEGA1. ATmega8 8-Kbyte self-programming Flash Program Memory, 1-Kbyte SRAM, 512 Byte EEPROM, 6 or 8 channel 10-bit A/D. Up to 16 MIPS throughput at 16 MHz. 5V operation. 3V version: ATmega8L

2. ATmega8515 8-Kbyte self-programming Flash Program Memory, 512 Byte SRAM and EEPROM. Up to 16 MIPS throughput at

16 MHz. 5V operation. 3V version: ATmega8515L

3. ATmega8535 8-Kbyte self-programming Flash Program Memory, 512 Byte SRAM and EEPROM, 8 channel 10-bit A/D. Up to

16 MIPS throughput at 16 MHz. 5V operation. 3V version: ATmega8535L

4. ATmega162 16-Kbyte self-programming flash Program Memory, 1-Kbyte SRAM, 512 Byte EEPROM, JTAG interface for on-chipdebug. Up to 16 MIPS throughput at 16 MHz. 1.8V version: ATmega162V

5. ATmega16 16-Kbyte self-programming Flash Program Memory, 1-Kbyte SRAM, 512 Byte EEPROM, 8 channel 10-bit A/D, JTAG interface for on-chip-debug. Up to 16 MIPS throughput at 16 MHz. 5V operation. 3V version: ATmega16L

6. ATmega32 32-Kbyte self-programming Flash Program Memory, 2-Kbyte SRAM, 1-Kbyte EEPROM, 8 channel 10-bit A/D, JTAG interface for on-chip-debug. Up to 16 MIPS throughput at 16 MHz. 5V operation. 3V version: ATmega32L

7. ATmega64 64-Kbyte self-programming Flash Program Memory, 4-Kbyte SRAM, 2-Kbyte EEPROM, 8 channel 10-bit A/D, JTAG interface for on-chip-debug. Up to 16 MIPS throughput at 16 MHz. 5V operation. 3V version: ATmega64L

8. ATmega128 128-Kbyte self-programming Flash Program Memory, 4-Kbyte SRAM, 4-Kbyte EEPROM, 8 channel 10-bit A/D, JTAG interface for on-chip-debug. Up to 16 MIPS throughput at 16 MHz. 5V operation. 3V version: ATmega128L

Mikrokontroler AVR ATMega16A. Fitur-fitur Mikrokontroler AVR 8-bit daya-rendah dengan unjuk-kerja tinggi. Arsitektur RISC tingkat lanjut 131 Instruksi yang ampuh Hampir semuanya dieksekusi dalam satu detak ( clock ) saja 32 x 8 General Purpose Working Registers Operasi statis penuh

Throughput hingga 16 MIPS pada 16 MHz Pengali On-chip 2-cycle High Endurance Non-volatile Memory segments 16K Bytes of In-System Self-programmable Flash program memory 512 Bytes EEPROM 1K Byte Internal SRAM Write/Erase Cycles: 10,000 Flash/100,000 EEPROM Data retention: 20 years at 85C/100 years at 25C Optional Boot Code Section with Independent Lock BitsIn-System Programming by On-chip Boot ProgramTrue Read-While-Write Operation Programming Lock for Software Security Antarmuka JTAG (IEEE std. 1149.1 Compliant) Boundary-scan Capabilities According to the JTAG Standard Extensive On-chip Debug Support Programming of Flash, EEPROM, Fuses, and Lock Bits through the JTAG Interface Fitur-fitur periferal Dua Pewaktu/Pencacah 8-bit dengan Praskalar dan Mode Pembanding terpisah. Sebuah Pewaktu/Pencacah 16-bit Timer/Counter Dengan Praskalar, Mode Pembanding danCapture yang terpisah. Pencacah Real Time dengan Osilator terpisah Empat kanal PWM 8-kanal, 10-bit ADC 8 Single-ended Channels

B. Diagram Pin dan Diagram Blok

Berikut kita jelaskan secara singkat fungsi dari masing-masing PIN pada Mikrokontroler AVRATMega16. Vcc Masukan tegangan catu daya GND Ground, emang apalagi kalau bukan ground... Port A (PA7..PA0) Port A berfungsi sebagai masukan analog ke ADC internal padamikrokontroler ATMega16, selain itu juga berfungsi sebagai portI/O dwi-arah 8-bit, jika ADC-nya tidak digunakan. Masing-masingpin menyediakan resistor pull-upinternal 4 yang bisa diaktifkanuntuk masing-masing bit. Port B (PB7..PB0) Port B berfungsi sebagai sebagai port I/O dwi-arah 8-bit.Masing-masing pin menyediakan resistor pull-up internal yang bisadiaktifkan untuk masing-masing bit.Port B juga memiliki berbagai macam fungsi alternatif,sebagaimana ditunjukkan pada Tabel 1.1

Port C (PC7..PC0) Port C berfungsi sebagai sebagai port I/O dwi-arah 8-bit.Masing-masing pin menyediakan resistor pull-up internal yang bisadiaktifkan untuk masing-masing bit.Port C juga digunakan sebagai antarmuka JTAG, sebagaimanaditunjukkan pada Tabel 1.2 Port D (PD7..PD0) Port D berfungsi sebagai sebagai port I/O dwi-arah 8-bit.Masing-masing pin menyediakan resistor pull-up internal yang bisadiaktifkan untuk masing-masing bit.Port D juga memiliki berbagai macam fungsi alternatif,sebagaimana ditunjukkan pada Tabel 1.3 /RESET Masukan Reset. Level rendah pada pin ini selama lebih dari lamawaktu minimum yang ditentukan akan menyebabkan reset,walaupun clock tidak dijalankan. XTAL1 Masukan ke penguat osilator terbalik (inverting ) dan masukan kerangkaian clock internal. XTAL2 Luaran dari penguat osilator terbalik AVCC Merupakan masukan tegangan catu daya untuk Port A sebagaiADC, biasanya dihubungkan ke Vcc, walaupun ADC-nya tidak digunakan. Jika ADC digunakan sebaiknya dihubungkan ke Vccmelalui tapis lolos-bawah (low-pass filter ). AREF Merupakan tegangan referensi untuk ADC

Mikrokontroler AVR Atmega8 AVR ATmega8 adalah mikrokontroler CMOS 8-bit berarsitektur AVR RISC yang memiliki 8K byte in-System Programmable Flash. Mikrokontroler dengan konsumsi daya rendah ini mampu mengeksekusi instruksi dengan kecepatan maksimum 16MIPS pada frekuensi 16MHz. Jika dibandingkan dengan ATmega8L perbedaannya hanya terletak pada besarnya tegangan yang diperlukan untuk bekerja. Untuk ATmega8 tipe L, mikrokontroler ini dapat bekerja dengan tegangan antara 2,7 - 5,5 V sedangkan untuk ATmega8 hanya dapat bekerja pada tegangan antara 4,5 5,5 V.

ATmega8 memiliki 28 Pin, yang masing-masing pin nya memiliki fungsi yang berbeda-beda baik sebagai port maupun fungsi yang lainnya. Berikut akan dijelaskan fungsi dari masing-masing kaki ATmega8. VCC Merupakan supply tegangan digital. GND Merupakan ground untuk semua komponen yang membutuhkan grounding.

Port B (PB7...PB0) Didalam Port B terdapat XTAL1, XTAL2, TOSC1, TOSC2. Jumlah Port B adalah 8 buah pin, mulai dari pin B.0 sampai dengan B.7. Tiap pin dapat digunakan sebagai input maupun output. Port B merupakan sebuah 8-bit bi-directional I/O dengan internal pull-up resistor. Sebagai input, pin-pin 7 yang terdapat pada port B yang secara eksternal diturunkan, maka akan mengeluarkan arus jika pull-up resistor diaktifkan. Khusus PB6 dapat digunakan sebagai input Kristal (inverting oscillator amplifier) dan input ke rangkaian clock internal, bergantung pada pengaturan Fuse bit yang digunakan untuk memilih sumber clock. Sedangkan untuk PB7 dapat digunakan sebagai output Kristal (output oscillator amplifier) bergantung pada pengaturan Fuse bit yang digunakan untuk memilih sumber clock. Jika sumber clock yang dipilih dari oscillator internal, PB7 dan PB6 dapat digunakan sebagai I/O atau jika menggunakan Asyncronous Timer/Counter2 maka PB6 dan PB7 (TOSC2 dan TOSC1) digunakan untuk saluran input timer. Port C (PC5PC0) Port C merupakan sebuah 7-bit bi-directional I/O port yang di dalam masingmasing pin terdapat pull-up resistor. Jumlah pin nya hanya 7 buah mulai dari pin C.0 sampai dengan pin C.6. Sebagai keluaran/output port C memiliki karakteristik yang sama dalam hal menyerap arus (sink) ataupun mengeluarkan arus (source). RESET/PC6 Jika RSTDISBL Fuse diprogram, maka PC6 akan berfungsi sebagai pin I/O. Pin ini memiliki karakteristik yang berbeda dengan pin-pin yang terdapat pada port C lainnya. Namun jika RSTDISBL Fuse tidak diprogram, maka pin ini

akan berfungsi sebagai input reset. Dan jika level tegangan yang masuk ke pin ini rendah dan pulsa yang ada lebih pendek dari pulsa 8 minimum, maka akan menghasilkan suatu kondisi reset meskipun clock-nya tidak bekerja. Port D (PD7PD0) Port D merupakan 8-bit bi-directional I/O dengan internal pull-up resistor. Fungsi dari port ini sama dengan port-port yang lain. Hanya saja pada port ini tidak terdapat kegunaan-kegunaan yang lain. Pada port ini hanya berfungsi sebagai masukan dan keluaran saja atau biasa disebut dengan I/O. AVcc Pin ini berfungsi sebagai supply tegangan untuk ADC. Untuk pin ini harus dihubungkan secara terpisah dengan VCC karena pin ini digunakan untuk analog saja. Bahkan jika ADC pada AVR tidak digunakan tetap saja disarankan untuk menghubungkannya secara terpisah dengan VCC. Jika ADC digunakan, maka AVcc harus dihubungkan ke VCC melalui low pass filter. AREF Merupakan pin referensi jika menggunakan ADC.

Pada AVR status register mengandung beberapa informasi mengenai hasil dari kebanyakan hasil eksekusi instruksi aritmatik. Informasi ini digunakan untuk altering arus program sebagai kegunaan untuk meningkatkan performa pengoperasian. Register ini di-update setelah operasi ALU (Arithmetic Logic Unit) hal tersebut seperti yang tertulis dalam datasheet khususnya pada bagian Instruction Set Reference. Dalam hal ini untuk beberapa kasus dapat membuang penggunaan kebutuhan instrukasi perbandingan yang telah didedikasikan serta dapat menghasilkan peningkatan dalam hal kecepatan dan kode yang lebih sederhana dan singkat. Register ini tidak secara otomatis tersimpan ketika memasuki sebuah rutin interupsi dan juga ketika menjalankan sebuah perintah setelah

kembali dari interupsi. Namun hal tersebut harus dilakukan melalui software. Mikrokontroler AVR Atmega 8 memiliki Port USART pada Pin 2 dan Pin 3 untuk melakukan komunikasi data antara mikrokontroler dengan mikrokontroler ataupun mikrokontroler dengan komputer. USART dapat difungsikan sebagai transmisi data sinkron, dan asinkron. Sinkron berarti clock yang digunakan antara transmiter dan receiver satu sumber clock. Sedangkan asinkron berarti transmitter dab receiver mempunyai sumber clock sendiri-sendiri. USART terdiri dalm tiga blok yaitu clock generator, transmiter, dan receiver.

ATMega8535ATMega8535 merupakan salah satu mikrokontroler 8 bit buatan Atmel untuk keluarga AVR yang diproduksi secara masal pada tahun 2006. Karena merupakan keluarga AVR, maka ATMega8535 juga menggunakan arsitektur RISC. Secara singkat, ATMega8535 memiliki beberapa kemampuan: 1. Sistem mikrokontroler 8 bit berbasis RISC dengan kecepatan maksimal 16 MHz. 2. Memiliki memori flash 8 KB, SRAM sebesar 512 byte dan EEPROM (Electrically Erasable Programmable Read Only Memory) sebesar 512 byte. 3. Memiliki ADC (Pengubah analog-ke-digital) internal dengan ketelitian 10 bit sebanyak 8 saluran. 4. Memiliki PWM (Pulse Wide Modulation) internal sebanyak 4 saluran.

5. Portal komunikasi serial (USART) dengan kecepatan maksimal 2,5 Mbps. 6. Enam pilihan mode sleep, untuk menghemat penggunaan daya listrik.

1. 2. 3.

VCC untuk tegangan pencatu daya positif. GND untuk tegangan pencatu daya negatif. PortA (PA0 - PA7) sebagai port Input/Output dan memiliki kemampuan lain yaitu sebagai input untuk ADC

4.

PortB (PB0 PB7) sebagai port Input/Output dan juga memiliki kemampuan yang lain.

5. 6.

PortC (PC0 PC7) sebagai port Input/Output untuk ATMega8535. PortD (PD0 PD7) sebagai port Input/Output dan juga memiliki kemampuan yang lain.

7. 8.

RESET untuk melakukan reset program dalam mikrokontroler. XTAL1 dan XTAL2 untuk input pembangkit sinyal clock.

9. 10.

AVCC untuk pin masukan tegangan pencatu daya untuk ADC. AREF untuk pin tegangan referensi ADC. Untuk melakukan pemrograman dalam mikrokontroler AVR, Atmel

telah menyediakan software khusus yang dapat diunduh dari website resmi Atmel. Software tersebut adalah AVRStudio. Software ini menggunakan bahasa assembly sebagai bahasa perantaranya. Selain AVRStudio, ada beberapa software pihak ketiga yang dapat digunakan untuk membuat program pada AVR. Software dari pihak ketiga ini menggunakan bahasa pemrograman tingkat tinggi seperti bahasa C, Java, atau Basic. Untuk melakukan pemindahan dari komputer ke dalam chip, dapat digunakan beberapa cara seperti menggunakan kabel JTAG atau menggunakan STNK buatan Atmel.

Dari gambar tersebut dapat dilihat bahwa ATMega8535 memiliki bagian sebagai berikut: 1. Saluran I/O sebanyak 32 buah, yaitu Port A, Port B, Port C, dan Port D. 2. ADC 10 bit sebanyak 8 saluran. 3. Tiga buah Timer/Counter dengan kemampuan pembandingan. 4. CPU yang terdiri atas 32 buah register. 5. Watchdog Timer dengan osilator internal. 6. SRAM sebesar 512 byte. 7. Memori Flash sebesar 8 kb dengan kemampuan Read While Write. 8. Unit interupsi internal dan eksternal. 9. Port antarmuka SPI. 10. EEPROM sebesar 512 byte yang dapat diprogram saat operasi. 11. Antarmuka komparator analog. 12. Port USART untuk komunikasi serial. Fitur ATMega8535 Kapabilitas detail dari ATMega8535 adalah sebagai berikut: 1. System mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16 Mhz. 2. Kapabilitas memory flash 8KB,SRAM sebesar 512 byte,dan EEPROM (Electrically Erasable Programmable Read Only Memory) sebesar 512 byte. 3. ADC internal dengan fidelitas 10 bit sebanyak 8 channel. 4. Portal komunikasi serial (USART) dengan kecepatan maksimal 2,5 Mbps. 5. Enam pilihan mode sleep menghemat penggunaan daya listrik. Konfigurasi Pin ATMega8535 Konfigurasi pin ATMega8535 bisa dilihat pada gambar .Dari gambar tersebut dapat dijelaskan secara fungsional konfigurasi pin ATMega8535 sebagai berikut: 1. VCC merupakan pin yang berfungsi sebagai pin masukan catu daya. 2. GND merupakan pin ground. 3. Port A (PA0..PA7) merupakan pin I/O dua arah dan 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 Oscillator. 6. Port D (PD0..PD7) merupakan pin I/O dua arah dan pin

fungsi khusus, yaitu komparator analog,interupsi eksternal,dan komunikasi serial. 7. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler. 8. XTAL1 dan XTAL2 merupakan pin masukan clock ekstenal. 9. AVCC merupakan pin masukan tegangan untuk ADC. 10. AREF merupakan pin masukan tegangan referensi ADC. Untuk memprogram mikrokontroler dapat menggunakan bahasa assembler atau bahasa tingkat tinggi yaitu bahasa C. Bahasa yang digunakan memiliki keunggulan tersendiri, untuk bahasa assembler dapat diminimalisasi penggunaan memori program sedangkan dengan bahasa C menawarkan kecepatan dalam pembuatan program. Untuk bahasa assembler dapat ditulis dengan menggunakan text editor setelah itu dapat dikompilasi dengan tool tertentu misalnya asm51 untuk MCS51 dan AVR Studio untuk AVR.