Tag: AVR

Mengakses EEPROM pada Mikrokontroler AVR

Meng-akses EEPROM internal AVR dilakukan dengan menggunakan global variable, diawali dengan atribut memori eeprom atau __eeprom. /* Nilai 1 disimpan dalam EEPROM saat chip programming */ eeprom int alfa = 1; eeprom char beta; eeprom long array1[5]; /* Sebuah string disimpan dalam EEPROM selama chip programming */ eeprom char string[]=”Hello”; void main(void) { int i; …

Continue reading

Memrogram Mikrokontroler AVR

AVR memiliki dua mode pemrograman: Parallel Programming Mode (Parallel Mode) dan Serial Downloading Mode (ISP mode). Pada Parallel Mode, divais yang akan diprogram ditempatkan pada soket pemrograman dan diperlukan tegangan 12V pada pin RESET. Komunikasi antara programmer dan divais dilakukan dengan perintah pemrograman secara paralel. Kecepatan pemrograman dua kali lebih cepat dibanding ISP Mode. Cara …

Continue reading

Mikrokontroler AVR Seri Tiny

AVR Tiny merupakan mikrokontroler yang mengesankan dan ekonomis. Secara fisik cukup kecil, namun di dalamnya tidak demikian. AVR Tiny mengusung arsitektur AVR RISC yang kompatibel dengan semua mikrokontroler AVR. Mereka memiliki In System Programming (ISP), Flash Memory, Internal EEPROM dan RAM, Timer, Interupsi, Analog Comparator, ADC dan yang lainnya. Berikut adalah beberapa anggota keluarga ATtiny, …

Continue reading

Menggunakan PWM pada ATmega8535

Kebanyakan mikrokontroler AVR memiliki kanal PWM di dalam chip-nya. Fasilitas ini membuat penggunaan PWM menjadi lebih sederhana dan lebih akurat. Timer atau Counter dalam AVR dapat digunakan dalam modus PWM tanpa mengganggu fungsi dasar timer. Timer1 dapat di-konfigurasi dalam modus PWM dengan men-setting bit PWM11 dan PWM10 dalam register TCCR1A. PWM11 PWM10 Description 0 0 …

Continue reading

Memrogram EEPROM I2C dengan Bahasa C

Berikut adalah contoh bagaimana meng-akses I2C EEPROM Atmel 24C02 menggunakan CodeVision-AVR: /* bus I2C dihubungkan dengan PORTB */ /* sinyal SDA pada bit 3 */ /* sinyal SCL pada bit 4 */ #asm .equ __i2c_port=0x18 .equ __sda_bit=3 .equ __scl_bit=4 #endasm #include <i2c.h> #include <delay.h> #define EEPROM_BUS_ADDRESS 0xa0 /* membaca satu byte dari EEPROM */ unsigned …

Continue reading

Memrogram EEPROM I2C dengan BASCOM-AVR

I2C singkatan dari Inter Integrated Circuit, adalah sebuah protokol untuk komunikasi serial antar IC, dan sering disebut juga Two Wire Interface (TWI). Bus yang digunakan untuk komunikasi antara mikrokontroler dan divais periferal seperti memori, sensor temperatur dan I/O expander. Komunikasi dilakukan melalui dua jalur: SDA (serial data) dan SCL (serial clock). Setiap divais I2C memiliki …

Continue reading

Memrogram Mikrokontroler PIC dengan BASIC

Pada saat kemunculan komputer pribadi di era 1980an, bahasa BASIC cukup populer. Saat ini, BASIC masih diperhitungkan sebagai bahasa pemrograman yang paling mudah digunakan, tidak terkecuali di dalam dunia mikrokontroler. BASIC memungkinkan pengembangan aplikasi lebih cepat dibanding bahasa assembly. Ketika menulis kode untuk mikrokontroler, programmer sering kali berhadapan dengan isu yang sama, seperti komunikasi serial, …

Continue reading

Menggunakan ADC pada ATmega8535

Dalam mikrokontroler keluarga AVR, khususnya kelas ATmega, umumnya sudah dilengkapi dgn ADC – Analog to Digital Conver, yang tertanam di dalamnya. Sebagai contoh, ATmega8535 yang cukup populer di negeri ini. Menggunakan fasilitas ADC yang terdapat dalam ATmega8535 dengan Bahasa BASIC, cukup mudah. Cukup melakukan inisialisasi untuk modus operasi, prescaler dan tegangan referensi yang digunakan. Selanjutnya, …

Continue reading

Mengapa Memilih Mikrokontroler AVR?

Kebanyakan pengguna MCS51 beralih ke AVR saat membutuhkan kecepatan yang lebih tinggi. Bisa dipahami karena kebanyakan instruksi di-eksekusi dalam satu siklus clock saja (bandingkan dgn MCS51 yang memerlukan 1-12 siklus clock). Kedua, di kebanyakan chip AVR buatan Atmel – www.atmel.com – sudah memiliki built-in ADC (biasanya 10 bit), sehingga untuk meng-capture masukan analog, tidak perlu …

Continue reading