PORT I/O atmega8535

19
PORT I/O atmega8535

description

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 - PowerPoint PPT Presentation

Transcript of PORT I/O atmega8535

Page 1: PORT I/O atmega8535

PORT I/O atmega8535

Page 2: 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)

Page 3: PORT I/O atmega8535

Spesifikasi port I/O AVR

Page 4: PORT I/O atmega8535

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

Page 5: PORT I/O atmega8535

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

Page 6: PORT I/O atmega8535

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

Page 7: PORT I/O atmega8535

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

Page 8: PORT I/O atmega8535

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

Page 9: PORT I/O atmega8535

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

Page 10: PORT I/O atmega8535

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

Page 11: PORT I/O atmega8535

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

Page 12: PORT I/O atmega8535

• 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

Page 13: PORT I/O atmega8535

• 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

Page 14: PORT I/O atmega8535

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

Page 15: PORT I/O atmega8535

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)

Page 16: PORT I/O atmega8535

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)

Page 17: PORT I/O atmega8535

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

Page 18: PORT I/O atmega8535

Rencana Project

• Running LED• Running Led dengan interupsi• Pembangkit gelombang kotak frek tertentu

– Dengan delay– Dengan timer

• Pengukur frekuensi• PWM• ADC• Project mandiri

Page 19: PORT I/O atmega8535

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