Keluarga
mikrokontroler AVR 8 bit RISC memiliki core architecture yang sama. Yang
membedakan keluarga tinyAVR, megaAVR dan AVR XMEGA adalah fitur fitur yang
diusungnya. Dengan demikian, tidak ada kesulitan berarti dalam hal pemrograman,
ketika kita berpindah platform dari suatu keluarga ke keluarga yang lainnya.
1.1.Port
input/output
Port I/O
dapat di konfigurasi sebagai input atau output. Perubahan konfigurasi ini
dilakukan dengan mengubah isi register DDR-Data Direction Register yang
bersangkutan. Misalnya, port C di konfigurasi sebagai input, maka isi register
DDRC=0x00. Sebaliknya, bila di konfigurasi sebagai output, maka isi register
DDRC=0xFF.
Ketika
mikrokontroler mengeluarkan logika HIGH (logika 1) pada sebuah pin I/O, besar
tegangan minimum pada pin yang bersangkutan adalah 4.2 V, dengan kondisi
tegangan catu (VCC) 5V. arus yang disediakan (current source) pada saat pin I/O
ber logika HIGH (IOH) adalah 20 mA. Jumlah total IOH untuk semua port tidak
boleh melebihi 200mA.
Ketika
mikrokontroler mengeluarkan logika LOW (logika 0) pada sebuah pin I/O, besar
tegangan minimum pada pin yang bersangkutan adalah 0.7 V, dengan kondisi
tegangan catu (VCC) 5V. arus yang disediakan (current source) pada saat pin I/O
ber logika HIGH (IOH) adalah 20 mA. Jumlah total IOH untuk semua port tidak
boleh melebihi 200mA.
Setiap
pin I/O mikrokontroler memiliki resistor pull-up internal (20k-50k) dan
memiliki diode proteksi yang terhubung VCC dan Ground.
Bila pin
I/O di konfigurasikan sebagai input, resistor pull-up internal dapat dipilih
untuk diaktifkan atau tidak. Bila pin I/O di konfigurasikan sebagai output,
resistor pulol-up internal tidak dapat
diaktifkan. Aktivasi resistor pull-up internal dilakukan dengan
memberikan logika HIGH pada port atau pin yang bersangkutan.
Kondisi logika pada
pin input dibaca melalui register PINxn. Bila membaca melalui register PORTxn,
maka yang terbaca adalah logika pada register PORTxn(latch). Bila instruksi
membaca kondisi logika pada register PINxn muncul tepat setelah instruksi
menulis ke register PORTxn, maka diperlukan delay satu periode clock (dapat
dilakukan dengan menyisipkan instruksi NOP) untuk sinkronisasi latch.
Ketika
pin I/O di konfigurasi sebagai input, mikrokontroler akan membaca logika LOW
untuk input tegangan 0 sampai dengan 0.2 x Vcc dan membaca logika HIGH untuk
input tegangan 0.6xVcc sampai dengan Vcc.
1.2.System
minimum mikrokontroler AVR
Gambar
disamping adalah system minimum MikroAVR, yang menggunakan AVR ATmega8535,
ATmega16 atau ATmega32. System sudah dilengkapi dengan koneksi USB ISP
programmer, sehingga pemrograman dapat dilakukan dengan mudah.
Kebanyakan
mikrokontroler saat ini, termasuk AVR, menggunakan teknik ISP in system
programming, untuk memogramnya. Dengan cara ini, chip dapat di program tanpa
harus melepasnya dari rangkaian aplikasi. Computer dan chip mikrokontroler
dihubungkan dengan ISP programmer, yang umumnya, menggunakan standard AVR910
(k125).
No comments:
Post a Comment