1 / 21

I/O PADA MIKROKONTROLER AVR

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

alea-duke
Download Presentation

I/O PADA MIKROKONTROLER AVR

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. I/O PADA MIKROKONTROLER AVR SISTEM MIKROPROSESSOR UNIVERSITAS JENDERAL ACHMAD YANI RIZAL SURYANA

  2. I/O • Perangkat I/O digunakanoleh processor untukberkumikasidengandunialuar • Perangkat I/O merupakanpengkondisisinyalsebelumdapatdiolaholeh processor atausetelahdiolahprosessorygnberupa data digital • Logika1 (high) = 5 Volt danLogika 0 (low) = 0 Volt

  3. I/O berkomunikasidenganprosessor • Programmed I/O  Prosessormengirimdanmenerima data pada I/O sesuaiinstruksi • Interrupt-driven I/O  sinyaldariluarmengatureksekusiintruksiprosessor. • Direct Memory Access (DMA)  Memungkinkantrasnsfer data langsungantara peripheral I/O denganMemoritanpaketerlibatanProsessor.

  4. PETA I/O PADA LOKASI MEMORI

  5. KONFIGURASI I/O AVR

  6. REGISTER I/O • DDRx • Portx • PINx

  7. REGISTER DDRx • Digunakanuntukmemiliharah pin • JikaDDRx = 1  sebagai output • JikaDDRx = 0  sebagai input

  8. REGISTER Portx • Register Portxdigunakanuntuk 2 keperluan • Portxberfungsisebagai output jikaDDRx = 1 • Portxn = 1 maka pin Pxnakanberlogika high • Portxn = 0 maka pin Pxnakanberlogika low • Portxberfungsiuntukmengaktfikan resistor pullupjikaDDRx = 0 • Portxn = 1 maka pin Pxnsebagai pin input dengan resistor pull up • Portxn = 0 maka pin Pxnsebagai pin input tanpa resistor pull up

  9. PINx digunakansebagai register input

  10. ContohPenggunaan I/O • Bahasa 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

  11. TIMER/COUNTER • Fasilitas yang dimilikimikrokontrolleruntukmembuat delay atautundaan • Padadasarnyahanyamenghitungpulsa clock • Frekuensipulsa clock yang dihitungtersebutbisasamadenganfrekuensi crystal ataudiperlambatdenganmenggunakanprescaler (8, 64, 256 dan 1024)

  12. FASILITAS TIMER/COUNTER AVR • Timer/Counter0 8 bit • Timer/Counter1 16 bit • Timer/Counter2 8 bit • 8 bit dan 16 bit adalahjumlah data yang bisaditampungpada register penampungnya

  13. PERHITUNGAN NILAI MAKSIMUM TIMER • Sebuah AVR menggunakan Crystal 8 MHz dan Timer 16bit, makawaktumaksimum timer yang dihasilkanadalah : TMAX = 1/fCLK x (FFFFH + 1) = 0.125uS x 65536 = 0.008192 Second • Untukmenghasilkanwaktu Timer yang lebih lama dapatdigunakanprescaler, misalnya 1024 : TMAX = 1/fCLK x (FFFFH + 1) x N = 0.124uS x 65536 x 1024 = 8.388608 Second

  14. REGISTER PENGATURAN TIMER • TCNT  digunakanuntukmenyimpannilai timer yang diinginkan, register inibisaterdiridari 8 (TCNTx) atau 16 bit (TCNTxHdanTCNTxL)

  15. Timer Interrupt Mask Register (TIMSK) dan Timer Interrupt Flag Register (TIFR)  digunakanuntukmengendalikan interrupt mana yang diaktifkan

  16. REGISTER TCCR1B • Counter Register B digunakanuntukmengatur mode timer, prescalerdanpilihanlainnya • Cs12..10 : Clock select bits  digunakanuntukmemilihprescaler

  17. 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

  18. Contoh • Seorang Programmer menghendakitundaan/delay selama 1 detik, menggunakanfrekeunsiOsilator 11,0592MHz danprescaler 1024 • Nilai TCNTH = D5H dan TCNTL = D0H

  19. MenghitungNilaiMaksimum Delay • Sebuah AVR menggunakanOsilator 11,0592MHz berapaNilaiMaksimumnya

More Related