Top Banner
I/O PADA MIKROKONTROLER AVR SISTEM MIKROPROSESSOR UNIVERSITAS JENDERAL ACHMAD YANI RIZAL SURYANA
21

I/O PADA MIKROKONTROLER AVR

Jan 02, 2016

Download

Documents

alea-duke

I/O PADA MIKROKONTROLER AVR. SISTEM MIKROPROSESSOR UNIVERSITAS JENDERAL ACHMAD YANI RIZAL SURYANA. I/O. Perangkat I/O digunakan oleh processor untuk berkumikasi dengan dunia luar - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: I/O PADA MIKROKONTROLER AVR

I/O PADA MIKROKONTROLER AVR

SISTEM MIKROPROSESSORUNIVERSITAS JENDERAL ACHMAD YANIRIZAL SURYANA

Page 2: I/O PADA MIKROKONTROLER AVR

I/OPerangkat I/O digunakan oleh

processor untuk berkumikasi dengan dunia luar

Perangkat I/O merupakan pengkondisi sinyal sebelum dapat diolah oleh processor atau setelah diolah prosessor ygn berupa data digital

Logika 1 (high) = 5 Volt dan Logika 0 (low) = 0 Volt

Page 3: I/O PADA MIKROKONTROLER AVR

I/O berkomunikasi dengan prosessorProgrammed I/O Prosessor

mengirim dan menerima data pada I/O sesuai instruksi

Interrupt-driven I/O sinyal dari luar mengatur eksekusi intruksi prosessor.

Direct Memory Access (DMA) Memungkinkan trasnsfer data langsung antara peripheral I/O dengan Memori tanpa keterlibatan Prosessor.

Page 4: I/O PADA MIKROKONTROLER AVR

PETA I/O PADA LOKASI MEMORI

Page 5: I/O PADA MIKROKONTROLER AVR

KONFIGURASI I/O AVR

Page 6: I/O PADA MIKROKONTROLER AVR

REGISTER I/ODDRxPortxPINx

Page 7: I/O PADA MIKROKONTROLER AVR

REGISTER DDRxDigunakan untuk memilih arah

pinJika DDRx = 1 sebagai outputJika DDRx = 0 sebagai input

Page 8: I/O PADA MIKROKONTROLER AVR

REGISTER PortxRegister Portx digunakan untuk 2

keperluan◦Portx berfungsi sebagai output jika DDRx

= 1 Portxn = 1 maka pin Pxn akan berlogika high Portxn = 0 maka pin Pxn akan berlogika low

◦Portx berfungsi untuk mengaktfikan resistor pullup jika DDRx = 0 Portxn = 1 maka pin Pxn sebagai pin input

dengan resistor pull up Portxn = 0 maka pin Pxn sebagai pin input

tanpa resistor pull up

Page 9: I/O PADA MIKROKONTROLER AVR

PINx digunakan sebagai register input

Page 10: I/O PADA MIKROKONTROLER AVR

Contoh Penggunaan I/OBahasa Assembler

◦ In r16, PinA◦ Out PortA, r17◦ Sbi PortB,7◦ Cbi PortB,5◦ Sbic PortA,3◦ Sbis PortC,1

Bahasa C◦ PORTA = 12◦ nilaiA = PINB◦ bitFlag = PINC.2◦ PORTD.0 = 1◦ PORTD.4 = 0

Page 11: I/O PADA MIKROKONTROLER AVR

TIMER/COUNTERFasilitas yang dimiliki

mikrokontroller untuk membuat delay atau tundaan

Pada dasarnya hanya menghitung pulsa clock

Frekuensi pulsa clock yang dihitung tersebut bisa sama dengan frekuensi crystal atau diperlambat dengan menggunakan prescaler (8, 64, 256 dan 1024)

Page 12: I/O PADA MIKROKONTROLER AVR

FASILITAS TIMER/COUNTER AVR

Timer/Counter0 8 bitTimer/Counter1 16 bitTimer/Counter2 8 bit8 bit dan 16 bit adalah jumlah

data yang bisa ditampung pada register penampungnya

Page 13: I/O PADA MIKROKONTROLER AVR

PERHITUNGAN NILAI MAKSIMUM TIMERSebuah AVR menggunakan Crystal 8 MHz

dan Timer 16bit, maka waktu maksimum timer yang dihasilkan adalah :TMAX = 1/fCLK x (FFFFH + 1)

= 0.125uS x 65536 = 0.008192 Second

Untuk menghasilkan waktu Timer yang lebih lama dapat digunakan prescaler, misalnya 1024 :TMAX = 1/fCLK x (FFFFH + 1) x N

= 0.124uS x 65536 x 1024 = 8.388608 Second

Page 14: I/O PADA MIKROKONTROLER AVR

REGISTER PENGATURAN TIMER

TCNT digunakan untuk menyimpan nilai timer yang diinginkan, register ini bisa terdiri dari 8 (TCNTx) atau 16 bit (TCNTxH dan TCNTxL)

Page 15: I/O PADA MIKROKONTROLER AVR

Timer Interrupt Mask Register (TIMSK) dan Timer Interrupt Flag Register (TIFR) digunakan untuk mengendalikan interrupt mana yang diaktifkan

Page 16: I/O PADA MIKROKONTROLER AVR
Page 17: I/O PADA MIKROKONTROLER AVR

REGISTER TCCR1BCounter Register B digunakan

untuk mengatur mode timer, prescaler dan pilihan lainnya

Cs12..10 : Clock select bits digunakan untuk memilih prescaler

Page 18: I/O PADA MIKROKONTROLER AVR
Page 19: I/O PADA MIKROKONTROLER AVR

PERHITUNGAN TIMER

TCNT Nilai timer (Hex)Fclk Frekuensi clock (crystal)

yang digunakan (Hz)Timer -> Wktu timer yang

diinginkan (detik)N Prescaler (1,8,64,256,1024)1 + FFFFH Nilai max timer

adalah FFFFH dan overflow

Page 20: I/O PADA MIKROKONTROLER AVR

ContohSeorang Programmer

menghendaki tundaan/delay selama 1 detik, menggunakan frekeunsi Osilator 11,0592MHz dan prescaler 1024

Nilai TCNTH = D5H dan TCNTL = D0H

Page 21: I/O PADA MIKROKONTROLER AVR

Menghitung Nilai Maksimum DelaySebuah AVR menggunakan

Osilator 11,0592MHz berapa Nilai Maksimumnya