Anda di halaman 1dari 45

Mega

Microcontroller

Agus Pracoyo
Kontrak Kuliah

1. Pengertian Mikrokontroler
2. Arsitektur dan varian Mikrokontroler
3. General Purpose Input/Output (GPIO) atau Digital
Input/Output
4. GPIO Sebagai Output
• Running LED
• Operasi logika
5. GPIO Sebagai Input
• Membaca button switch
• Pengkodean Key-pad
6. Interupsi eksternal dan aplikasinya
7. 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

MICROPRO- ROM RAM I/O


CESSOR
(CPU)

ADDRESS BUS

CONTROL BUS
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 Flip-
flop 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

MICROPRO- ROM RAM I/O


Port
CESSOR
(CPU)

ADDRESS BUS

CONTROL BUS

• Single Chip Microcomputer


• One Chip Microcomouter
• Mikrokomputer Chip Tunggal
• Embeded Komputer
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. BASCOM
2. Code Vision
3. MikroC
4. MikroBASIC
5. MikroPASCAL
6. C (AVR Stodio)
Proses kompilasi dari bhs tingkat tinggi ke hex

Tulis program pd. Proses kompilasi


EDITOR oleh compiler

File HEX

Down loadder

LAB. MICROPROCESSOR Polinema


Atmel-AVR?

AVR : Alf and Vegard RISC atau


AVR : Advanced Virtual RISC
RISC : Reduced Instruction Set Computing
CISC : 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. Keluarga AVR tiny
- Kapasitas memory program 1 sd 8 kByte
- Jumlah pin (kaki) 8 sd 20
- Jumlah peripheral terbatas
2. 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 3. ATmega8535
- Flash = 8 KByte - Flash = 8 KByte
- EEPROM = 0,5 KByte
- EEPROM = 0,5 KByte
- SRAM= 1024 Byte
- SRAM = 512 Byte
- ADC
- ADC

2. ATmega8515 4. ATmega64
- Flash = 8 KByte - Flash = 64 KByte
- EEPROM = 0,5 KByte - EEPROM = 2 KByte
- SRAM= 512 Byte - SRAM= 4096 Byte
- ADC
Keluarga Mega-AVR

5. ATmega128 7. ATmega256
- Flash = 128 KByte - Flash = 256 KByte
- EEPROM = 4 KByte - EEPROM = 4 KByte
- SRAM= 4096 Byte - SRAM = 8292 Byte
- ADC - ADC
6. ATmega32 8. ATmega48
- Flash = 32 KByte - Flash = 128 KByte
- EEPROM = 1 KByte - EEPROM = 4 KByte
- SRAM= 2048 Byte - SRAM= 4096 Byte
- ADC - ADC
Keluarga Tiny-AVR

1. ATtiny13 3. ATtiny11
- Flash = 1 KByte
- Flash = 1 KByte - EEPROM = -
- EEPROM = 0,064 KByte - SRAM= -
- SRAM= 64 Byte
- ADC
2. ATtiny2313 4. ATtiny12
- Flash = 2 KByte - Flash = 1 KByte
- EEPROM = 0,128 KByte - EEPROM = 0,04 KByte
- SRAM= 128 Byte - SRAM= -
- ADC
Keluarga Tiny-AVR

5. ATtiny24 7. ATtiny25
- Flash = 2 KByte
- Flash = 2 KByte
- EEPROM = 0,128 KByte
- EEPROM = 0,128 KByte
- SRAM= 128 Byte
- SRAM = 128 Byte
- ADC
- ADC
6. ATtiny261
8. ATtiny26
- Flash = 2 KByte - Flash = 2 KByte
- EEPROM = 0,128 KByte - EEPROM = 0,125 KByte
- SRAM= 128 Byte - SRAM= 128 Byte
- ADC - ADC
Keluarga Tiny-AVR
9. ATtny44 12. ATtiny84
- Flash = 4 KByte - Flash = 8 KByte
- EEPROM = 0,256 KByte - EEPROM = 0,512 KByte
- SRAM = 256 Byte - SRAM = 512 Byte
- ADC - ADC
10. ATtiny45 13. ATtiny85
- Flash = 4 KByte - Flash = 8 KByte
- EEPROM = 0,256 KByte - EEPROM = 0,512 KByte
- SRAM = 256 Byte - SRAM = 512 Byte
- ADC - ADC
11. ATtiny461
- Flash = 4 KByte
- EEPROM = 0,256 KByte
- SRAM = 256 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-B PORT-A

Real Mega- Real


World AVR World

PORT-D 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

Anda mungkin juga menyukai