1 / 19

PORT I/O atmega8535

PORT I/O atmega8535. Spesifikasi port I/O AVR. I/O digital Input/output pada pin yang sama Level I/O TTL (logika 0  0 V, logika 1  5V). Spesifikasi port I/O AVR. Spesifikasi port I/O AVR. Diakses menggunakan 3 register : DDRx PORTx PINx DDRx digunakan untuk menentukan arah I/O

feryal
Download Presentation

PORT I/O atmega8535

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. PORT I/O atmega8535

  2. Spesifikasi port I/O AVR • I/O digital • Input/output pada pin yang sama • Level I/O TTL (logika 0  0 V, logika 1  5V)

  3. Spesifikasi port I/O AVR

  4. Spesifikasi port I/O AVR • Diakses menggunakan 3 register : • DDRx • PORTx • PINx • DDRx digunakan untuk menentukan arah I/O • PORTx digunakan untuk meg-outputkan nilai ke pin IC • PINx digunakan sebagai register untuk menampung nilai yang diinputkan pada pin IC

  5. Spesifikasi port I/O AVR • Arus max (sinking): • 20 mA (test condition) • 40 mA (max) • Untuk setiap port (8 line) jumlah semua arus di port tersebut max 100 mA

  6. Spesifikasi port I/O AVR • Pada dasarnya konfigurasi I/O AVR adalah open collector • Konfigurasi open collector mempunyai tegangan 0 V pada logika 0 dan mengambang (hi-Z)pada logika 1 • Supaya pin tidak dalam logika mengambang dalam keadaan sebagai input, biasanya PORTx ikut diaktifkan untuk meng-enable pull up

  7. Langkah pengaksesan suatu port I/O • Setting register DDRx: sebagai input (0) atau output (1) • Jika diset sebagai input, enable-kan pull up dengan menuliskan logika 1 pada PORTx, kemudian baru baca data dari PINx • Jika diset sebagai output, langsung saja kirimkan data keluar ke PORTx

  8. Instruksi I/O,akses baca tulis • IN : membaca data dari I/O register (8 bit) ke GP register  IN R16,PinD • OUT : menulis data dari GP register ke I/O register(8 bit)  OUT PORTC,R17 • SBI : membuat logika ‘1’ 1 bit di register I/O  SBI PORTC,2 • CBI : membuat logika ‘0’ 1 bit di register I/O  CBI PORTB,1

  9. Instruksi I/O,lompatan bersyarat • SBIC : skip if bit I/O is clear  men’skip’ instruksi di bawahnya jika suatu bit I/O dalam logika ‘0’ • SBIS : skip if bit I/O is set  menskip instruksi di bawahnya jika suatu bit I/O dalam keadaan logika ‘1’ • Contoh : SBIC PIND,1

  10. Langkah-langkah pengaksesan port • Instruksi in: • LDI R16,0x00 ;insialisasi port sebagai input • OUT DDRD,R16; portD jadi input semua • LDI R16,0xFF;persiapan enable pull up di PORTD • OUT PORTD,R16;enable pull up di PORTD • IN R17,PIND; disinilah instruksi inputnya

  11. Langkah-langkah pengaksesan port • Instruksi out: • LDI R16,0xFF ; persiapan insialisasi PortB sbg out • OUT DDRB,R16; set portb sebagai output semua • LDI R17,0b10101010; data yang akan dikeluarkan • OUT PORTB,R17;keluarkan data di sini

  12. Instruksi SBI dan CBI • Karena instruksi tsb hanya mengakses 1 bit saja, maka DDR yang diset juga cukup 1 bit saja : • SBI DDRB,4; bit ke-4 port B dijadikan output • SBI DDRC,3; bit ke-3 port C dijadikan output • SBI PORTB,4; keluarkan logika 1 ke bit 4 portb • CBI PORTC,3;logika 0 ke bit 3 portc

  13. Instruksi SBIC,SBIS • Karena instruksi sbg input, DDR harus diset 0 pada bit-bit yg digunakan • CBI DDRD,7; setting portd bit 7 sbg input • SBI PORTD,7; enable pull up • SBIC PIND,7; baca portd bit 7 • CLR R16;instruksi sembarang • LDI R16,0xAA; jika portd bit 7 logika 0,lompat ke sini

  14. Operasi Aritmatika • Instruksi penjumlahan • ADD R15,R14  R15=R15+R14 • ADC R15,R14  R15=R15+R14+Carry • Instruksi pengurangan • SUB R15,R14  R15=R15-R14 • SUBI R16,2  R16=R16-1 • SBC R11,R12  R11=R11-R12-Carry • SBCI R17,3  R17=R17-3-Carry

  15. Operasi aritmatika • Instruksi perkalian • MUL R21,R20  R1:R0=R21xR20 (R1 digunakan untuk menyimpan MSB,R0 LSB),perkalian bilangan unsigned(bulat positif) • MULS R4,R5  R4 dan R5 menyimpan bilangan signed(bulat positif dan negatif) • MULSU R4,R5  R4 signed,R5 unsigned • dll (keluarga FMUL)

  16. Operasi logika • AND Rd,Rr ; ANDI Rd,K  operasi and • OR Rd,Rr ; ORI Rd,K  operasi OR • EOR Rd,Rr  EXOR • COM Rd  komplemen 1 • NEG Rd  komplemen 2 • dll (lihat datasheet)

  17. Sekedar mengingatkan • Tugas pembuatan sistem minimal ATmega8535 mulai bisa ditunjukkan minggu depan(Rabu, 10 sept) • Karya anda bisa ditunjukkan di lab elektronika dasar (T. Elektro) atau di kelas • Batas akhir pelaporan : Rabu 17 sept di kelas • Telat? usaha anda tetap dihargai, dengan nilai yg lebih rendah

  18. Rencana Project • Running LED • Running Led dengan interupsi • Pembangkit gelombang kotak frek tertentu • Dengan delay • Dengan timer • Pengukur frekuensi • PWM • ADC • Project mandiri

  19. Fasilitas sistem minimal • LED, untuk tampilan data dan PWM • Push button • Header/pin untuk ekspansi port • Header untuk programmer • Konektor serial port • LCD (nilai tambah), karena beberapa project memerlukan tampilan • dsb

More Related