Arsitektur AVR [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

Mega



Microcontroller



Agus Pracoyo



Kontrak Kuliah 1. 2. 3. 4.



5.



6. 7.



Pengertian Mikrokontroler Arsitektur dan varian Mikrokontroler General Purpose Input/Output (GPIO) atau Digital Input/Output GPIO Sebagai Output • Running LED • Operasi logika GPIO Sebagai Input • Membaca button switch • Pengkodean Key-pad Interupsi eksternal dan aplikasinya Analog input



MIKROKOMPUTER



APAKAH: MIKROKOMPUTER? MIKROPROSESSOR? MIKROKONTROLER?



MIKROKOMPUTER MIKROKOMPUTER ADALAH: Perangkat elektronik digital dengan komponen utama CPU /Microprocessor, Memory, dan unit Input/Output yang bekerja atas dasar sederetan instruksi (program) dalam bilangan biner yang tersimpan di dalam memory. Instruksi-instruksi tersebut dieksekusi oleh Microprocessor.



Arsitektur Mikrokomputer ARSITEKTUR MIKRO KOMPUTER DATA BUS



OSCILLA TOR



MICROPROCESSOR (CPU)



ROM



RAM



ADDRESS BUS CONTROL BUS



I/O



Bagian-bagian dari Mikrokomputer 1. Mikroprosesor disebut juga sebagai CPU (Central Processing Unit) yang bertugas untuk mengakses dan mengeksekusi perintah-perintah mesin dalam kode biner yang tersimpan di dalam memory 2. ROM (Read Only Memory), yaitu memory yang hanya bisa dibaca saja dan dihapus dengan cara tertentu 3. RAM (Random Access Memory), yaitu memory yang dapat dibaca dani ditulis 4. Unit Input/Output, merupakan bagian antar muka (interface) yang menghubungkan antara Mikrokomputer dengan peralatan luar



Jenis Memory 1. ROM (Read Only Memory) Memory yg hanya bias dibaca dan ditulis dengan cara tertentu. Jenis-jenis ROM  ROM OTP (One Time Programming), ROM yang hanya bias diprgram 1 kali saja  EEPROM (Electrically Erasable Programmable Read Only Memory). Memory yang bisa ditulis dan dihapus secara elektrik. Yang termasuk memory jenis ini adalah FLASH ROM. Perbedaan utama antara EEPROM dan memori flash adalah bahwa EEPROM dapat "menulis" ke setiap byte memori, kapan saja. Memori flash hanya dapat menulis ke seluruh bagian, atau "sektor", dari memori pada suatu waktu.



Jenis Memory  EPROM (Erasable Promgrammable Read Only Memory), memory yang penghapusannya menggunakan sinar UV



ROM OTP



EEPROM



EPROM



Jenis Memory 2. RAM (Random Access Memory), Memory baca tulis  Static RAM (SRAM) Adalah jenis RAM dengan sel memory berupa latch Flipflop 1 bit yang terdiri atas 6 transistor, sehingga pada saat beroperasi tidak membutuhkan siklus refresh. Sel memory SRAM



Jenis Memory  Dynamic RAM (DRAM) Adalah jenis RAM dengan sel memory berupa capacitor dan 1 buah transistor untuk menyimpan bilangan 1 bit. Muatan listrik pada kapasitor perlahan bocor, sehingga tanpa intervensi data pada chip akan segera hilang. Untuk mencegah hal ini, DRAM membutuhkan sirkuit penyegaran (refresh) memori eksternal yang secara berkala menulis ulang data dalam kapasitor, untuk mengembalikannya ke muatan Sel memory DRAM semula.



Bentuk Fisik SRAM dan DRAM



Static RAM 2KB Demensi besar, kecepatan lebih tinggi



Dynamic RAM 1GB Demensi lebih kecil, kecepatan lebih rendah



MICROPROCESSOR 2. Microprocessor adalah: Mikroprosesor adalah komponen elektronik yang digunakan oleh komputer untuk melakukan tugas utama mengeksekusi program langkah demi langkah. Ia merupakan rangkaian terintegrasi (IC) yang berisi jutaan komponen sangat kecil termasuk transistor, resistor, dan dioda yang bekerja bersama. Beberapa generasi Microprocessor sebagai berikut:



ARSITEKTUR MICROPROCESSOR



3. Microcontroller adalah: Mkikrokomputer yang ditanam di dalam rangkaian terintegrasi (IC). Mikrokontroler terdiri atas Microprocessor, Memory, dan Peripheral I/O yang dapat deprogram.



Microcontroller ARSITEKTUR MIKRO KOMPUTER DATA BUS



OSCILLA TOR



MICROPROCESSOR (CPU)



ROM



RAM



ADDRESS BUS CONTROL BUS



• • • •



Single Chip Microcomputer One Chip Microcomouter Mikrokomputer Chip Tunggal Embeded Komputer



I/O



Port



Bahasa Pemrograman Microprocessor Bahasa Pemrograman dibagi 3: 1. Bahasa tingkat tinggi (high level language) • C • BASIC • PASCAL 1. Bahasa Assambly 2. Bahasa tingkat mesin (low level language)



Kompiler Bhs. Level tinggi 1. 2. 3. 4. 5. 6.



BASCOM Code Vision MikroC MikroBASIC MikroPASCAL C (AVR Stodio)



Proses kompilasi dari bhs tingkat tinggi ke hex Tulis program pd. EDITOR



Proses kompilasi oleh compiler



File HEX



Down loadder



LAB. MICROPROCESSOR Polinema



Atmel-AVR? AVR AVR RISC CISC



: : : :



Alf and Vegard RISC atau Advanced Virtual RISC Reduced Instruction Set Computing Complex Instruction Set Computing



Arsitektur AVR dikembangkan th 1996 oleh 2 mahasiswa Nurwegian Institute of Technology yaitu Alf-Egil Bogen dan Vegard Wollan



Eksekusi instruksi arsitektur CISC



Mencapai hingga 1 MIPS per MHz



Eksekusi instruksi arsitektur RISC



Keluarga AVR Secara umum, AVR dapat dikelompokkan dalam 10 kelas, yaitu:  Keluarga AVR Otomotif  Keluarga AVR Z-link  Keluarga AVR management Batere  Keluarga AVR CAN (Controller Areal Network)  Keluarga AVR LCD  Keluarga AVR Pencacah  Keluarga TinyAVR  Keluarga MegaAVR  Keluarga AVR USB  Keluarga XMEGA



Keluarga AVR yg Dibahas 1.



2.



Keluarga AVR tiny - Kapasitas memory program 1 sd 8 kByte - Jumlah pin (kaki) 8 sd 20 - Jumlah peripheral terbatas Keluarga AVR mega - Kapasitas memory program 4 sd 256 kB - Jumlah pin (kaki) 28 sd 100 - Jumlah set instruksi lebih banyak - Jumlah peripheral lebih banyak



Bentuk Fisik kel.AVR



Keluarga Mega-AVR 1. ATmega8 - Flash = 8 KByte - EEPROM = 0,5 KByte - SRAM= 1024 Byte - ADC



2. ATmega8515 - Flash = 8 KByte - EEPROM = 0,5 KByte - SRAM= 512 Byte



3. ATmega8535 - Flash = 8 KByte - EEPROM = 0,5 KByte - SRAM = 512 Byte - ADC



4. ATmega64 - Flash = 64 KByte - EEPROM = 2 KByte - SRAM= 4096 Byte - ADC



Keluarga Mega-AVR 5. ATmega128



7. ATmega256



- Flash = 128 KByte



- Flash = 256 KByte



- EEPROM = 4 KByte - SRAM= 4096 Byte - ADC



- EEPROM = 4 KByte - SRAM = 8292 Byte - ADC



6. ATmega32 - Flash = 32 KByte - EEPROM = 1 KByte - SRAM= 2048 Byte - ADC



8. ATmega48 - Flash = 128 KByte - EEPROM = 4 KByte - SRAM= 4096 Byte - ADC



Keluarga Tiny-AVR 1. ATtiny13 - Flash = 1 KByte - EEPROM = 0,064 KByte - SRAM= 64 Byte - ADC



2. ATtiny2313 - Flash = 2 KByte - EEPROM = 0,128 KByte - SRAM= 128 Byte - ADC



3. ATtiny11 - Flash = 1 KByte - EEPROM = - SRAM= -



4. ATtiny12 - Flash = 1 KByte - EEPROM = 0,04 KByte - SRAM= -



Keluarga Tiny-AVR 5. ATtiny24 - Flash = 2 KByte - EEPROM = 0,128 KByte - SRAM= 128 Byte - ADC



6. ATtiny261 - Flash = 2 KByte - EEPROM = 0,128 KByte - SRAM= 128 Byte - ADC



7. ATtiny25 - Flash = 2 KByte - EEPROM = 0,128 KByte - SRAM = 128 Byte - ADC



8. ATtiny26 - Flash = 2 KByte - EEPROM = 0,125 KByte - SRAM= 128 Byte - ADC



Keluarga Tiny-AVR 9. ATtny44



12. ATtiny84



- Flash = 4 KByte



- Flash = 8 KByte



- EEPROM = 0,256 KByte - SRAM = 256 Byte - ADC



- EEPROM = 0,512 KByte - SRAM = 512 Byte - ADC



10. ATtiny45 - Flash = 4 KByte - EEPROM = 0,256 KByte - SRAM = 256 Byte - ADC



11. ATtiny461 - Flash = 4 KByte - EEPROM = 0,256 KByte - SRAM = 256 Byte - ADC



13. ATtiny85 - Flash = 8 KByte - EEPROM = 0,512 KByte - SRAM = 512 Byte - ADC



 Fitur



Peripheral Mega-AVR      



Digital Input/Output Analog input (ADC 10 bit 8 kanal) Interupsi eksternal 8 bit dan 16 bit counter/timer/PWM Serial Peripheral Interface (SPI) USART (Universal Syncronouse Asynconouse Receiver/Transmitter) RS-232 port.  TWI (Two Wire Interface) / I2C bus



Konfigurasi pin Mega-AVR



Diagram blok pin Mega-AVR



PORT-A



PORT-B



Real World



PORT-D



MegaAVR



Real World



PORT-C



Diagram blok Mega-AVR



Peta memory program Mega-AVR



Peta EEPROP Mega-AVR8535



0x000



EEPROM



0x1FF



Peta memory data Mega-AVR



Register Pointer (R26 – R31)



Register-register AVR Status Register (SREG)



Bit ini harus berlogika “1” agar seluruh interupsi pada AVR dalam kondisi Enable. Jika I = 0 maka seluruh Interupsi AVR disable.



Sebagai bit tujuan atau bit sumber pada Instruksi BLD (Bit Load) dan BST (BitStore)



Bit Half carry, bit ini untuk operasi half carry pada beberapa operasi arithmetic pada operasi BCD



Bit S selalu merupakan hasil EXOR antara bit N (Negative) dan bit V (komplement II Over flow flag V).



Bit V dipergunakan ubtuk mendukung operasi aritmatika complement 2



Bit dipergunakan untuk menunjukkan apakah sebuah operasi aritmatika atau logika bernilai negative. Jika hasilnya negative maka N berlogika 1



Bit Z dipergunakan untuk menunjukkan apakah sebuah operasi aritmatika atau logika bernilai nol. Jika hasilnya nol maka Z berlogika 1 dan sebaliknya.



Bit C dipergunakan untuk menunjukkan apakah sebuah operasi aritmatika atau logika menghasilkan carry pada operasi aritmatika 1 byte. Jika terjadi carry, C berlogika 1 dan sebaliknya.



Register Stack Pointer (SP)



Diagram Waktu Eksekusi Instruksi Arsitektur HARVARD



Mencapai hingga 1 MIPS per MHz



Terima kasih