Categories
buku Mikrokontroler

Tutorial Pemrograman Mikrokontroler AVR dengan WinAVR GCC

eBook GRATIS saya yang terbaru (terbit 2010 kemarin). Diterbitkan dalam rangka mencerdaskan kehidupan bangsa Indonesia yang bermartabat.

Silahkan mengunduh DISINI GRATIS.

Apa saja yang dibahas dalam ebook/buku ini?

  • Apakah mikrokontroler itu?
  • Pengetahuan dasar mikrokontroler AVR
    • Memilih AVR yang “benar”
    • Ada apa dengan mikrokontroler AVR ATMega16?
  • Pengenalan Bahasa C untuk mikrokontroler AVR
    • Struktur Penulisan Bahasa C
    • Tipe-tipe data dalam Bahasa C
    • Deklarasi variabel dan konstanta
    • Pernyataan dan fungsi
    • Pernyataan berkondisi dan pengulangan
    • Operasi logika dan bilangan biner
    • Operasi aritmetika
  • Menggunakan AVR Studio dengan WinAVR GCC
  • Masukan/Luaran mikrokontroler AVR
    • Register DDRx, PORTx dan PINx
  • Timer/Counter pada Mikrokontroler AVR
  • Berbagai macam percobaan/latihan dengan metode Learning by Doing.
  • Plus ada bonus2-nya lagi…!
Langsung saja menuju TKP untuk mengunduh ebook GRATIS ini, silahkan…
Categories
Mikrokontroler

Purwarupa Pengukur Medan Magnet berbasis Sensor Magnetik Fluxgate dan Mikrokontroler AT Mega8535

Medan magnet adalah salah satu besaran fisis yang sangat penting dan digunakan dalam banyak bidang, misalnya: geofisika, geologi, kedokteran, ilmu kelautan, ekspedisi luar angkasa dan lain-lain. Ada beberapa metode yang dapat dilakukan untuk mengukur kuat medan magnet. Dalam penelitian ini dibuat sebuah alat ukur kuat medan magnet menggunakan sensor magnetik fluxgate yang merupakan pilihan tepat untuk pengukuran dengan jangkauan resolusi nanotesla menggunakan bahan inti berupa kawat amorphous. Dalam hal ini, kawat amorphous dieksitasi untuk menghasilkan keadaan histerisis. Kumparan sekunder atau “pick up coil”, yang dililitkan pada kawat amorphous, akan mendeteksi medan magnet di sekitar kawat inti. Untuk keperluan akuisisi data dan tampilan ke layar LCD, digunakan Mikrokontroler ATMega8535. Alat ukur ini mempunyai sensitivitas sebesar 262 ± 6 mvolt/μtesla dan mampu mendeteksi kuat medan magnet dengan jangkauan -37,4 μT hingga 37,4 μT, hasilnya ditampilkan melalui layar LCD. Kelebihan dari alat ukur kuat medan magnet ini adalah mudah, murah dan memiliki sensitivitas diatas 300 mvolt/μtesla.

Unduh selengkapnya disini, semoga bermanfaat.

Categories
Mikrokontroler

5 langkah nyaman dan aman mengatur sumber detak (clock) pada Mikrokontroler Atmel AVR

Setelah saya memposting artikel tentang sumber detak atau clock source pada Mikrokontroler AVR, beberapa email maupun SMS masuk untuk menanyakan lebih lanjut langkah demi langkah bagaimana melakukan pengaturan konfigurasi kristal yang nyaman dan aman, khususnya menggunakan pemrogram USBasp dan Khazama AVR Programmer.

Jika Anda menjumpai artikel ini dan belum membaca tentang sistem detak pada Mikrokontroler AVR, saya sarankan untuk membacanya terlebih dulu. Selebihnya saya berasumsi bahwa saat ini Anda sudah membaca artikel tentang sistem detak Mikrokontroler AVR dan sudah menghubungkan mikrokontroler yang ingin Anda konfigurasi kristalnya dengan USBasp, kemudian jalankah perangkat lunak Khazama (saya pilih karena ‘nyaman’ dipakai, berdasar pengalaman) – untuk penggunaan dengan AVR Studio dan pemrogram AvR ISP MKII silahkan merujuk artikel saya disini).

Categories
Mikrokontroler

Arduino-ku mendukung Berbagai Macam AVR ATMega!!

Apakah saya gak salah baca judul artikel ini? Ya! Anda tidak salah baca! Jika selama ini kita mengenal Arduino hanya mendukung tipe-tipe khusus dari AVR, seperti Mega8, Mega168, Mega328 atau Mega1280, maka dengan melakukan modifikasi pengaturan perangkat keras (hardware) ternyata Arduino (khususnya versi 019, unduh disini) bisa mendukung banyak mikrokontroler AVR ATMega, antara lain: atmega8, atmega16, attiny26, atmega32, atmega32u4, attiny45, atmega64, attiny85, atmega88p, atmega128, atmega165, atmega165p, atmega168, atmega169, atmega324p, atmega328p, atmega644, atmega644p, atmega645, atmega1280, atmega1281, atmega1284p, attiny2313, atmega2560, atmega2561, atmega3290p, atmega8515 dan atmega8535! Perhatikan gambar perbandingan berikut ini…

Gambar Arduino IDE 019 sebelum modifikasi

Gambar Arduino IDE 019 setelah modifikasi

Hah?! Banyak banget! Asik donk, apalagi jika Anda mengikuti ulasan saya tentang mensimulasikan Arduino menggunakan Proteus (baca disini), maka tidak perlu harus menggunakan papan Arduino lagi, sehingga AVR Anda juga tidak akan berkurang karena adanya bootloader, makin asik saja khan? Okey, lantas bagaimana caranya?

Categories
Mikrokontroler

Simulasi Arduino menggunakan Proteus VSM

Apakah mungkin melakukan Simulasi Arduino? Jawabannya mungkin! Jika Anda belum berniat untuk membeli Arduino Board (baik MiniDuino, Arduino Duemilanova maupun Arduino Mega atau bahkan board lainnya), maka Anda bisa melakukan simulasi Arduino menggunakan Proteus VSM. Lantas perangkat lunak apa saja yang diperlukan?

  1. Proteus VSM (kunjungi LabCenter untuk informasi lebih lanjut);
  2. Arduino versi 017 (mengapa tidak yang versi terbaru, saat artikel ini ditulis sudah tersedia versi 019, akan dijelaskan lebih lanjut nantinya);

Sebagai contoh dalam tulisan ini, akan disimulasikan menggunakan AVR ATMega328 dengan frekuensi kerja 16MHz (Arduino Duemilanova), perhatikan pemetaan pin-pin pada ATMega328 untuk Arduino sebagaimana ditunjukkan pada Gambar 1 dan 2.

Gambar 1 – Pemetaan PIN pada Mega **8 (termasuk 328)

Gambar 2 – Pemetaan PIN pada Mega 328 di Proteus VSM

Sebelum melangkah lebih lanjut saya jelaskan dulu mengapa masih menggunakan Arduino IDE 017, karena hasil kompilasi versi 017 (yaitu berkas-berkas HEX yang akan digunakan untuk simulasi) masih disimpan pada folder APPLET pada masing-masing folder SKETCH yang terkait, sehingga mencari-nya menjadi mudah. Sedangkan yang versi 018 keatas, hasil kompilasi disembunyikan pada folder TEMP khusus yang nantinya akan dihapus jika keluar dari Arduino IDE, sehingga mencari-nya agak susah, Anda harus cari sendiri dengan cara menekan SHIFT + compile dan mencatat folder penyimpanan kemudian menyalin-nya ke folder SKETCH Anda, sungguh merepotkan namun apa daya karena versi terbaru memang menawarkan update pustaka-pustaka dan perbaikan IDE yang canggih. Pilihan ada di tangan Anda!

Categories
buku Mikrokontroler

Tip dan Trik Mikrokontroler AT89 dan AVR: Tingkat Pemula hingga Lanjut

Buku ini merupakan kumpulan berbagai macam catatan atau artikel selama penulis melakukan berbagai macam penelitian dan eksperimen hingga tahun 2009. Banyak hal yang penulis dapatkan selama itu, terutama ilmu dan pengembangan aplikasi atau terapan mikrokontroler keluarga Atmel AT89 dan Atmel AVR. Semoga para pembaca juga mendapatkan hal yang sama serta bisa ikut serta dalam menyumbangkan acuan dalam bidang mikrokontroler AT89 dan AVR. Juga saya tambahkan sebuah artikel bagaimana cara mendapatkan penghasilan dengan menguasai teknologi mikrokontroler, sehingga diharapkan bisa menjadi ilmu bermanfaat bagi calon-calon Technopreneur di Indonesia, amin!

Bonus DVD senilai > Rp. 500.000,00

  • Video Belajar Bascom 8051 (AT89) senilai Rp. 500.000,00
  • Voucher Pelatihan Private Senilai Rp. 100.000,00
  • Software2 Pendukung
  • Listing Program dalam buku
  • Berbagai ebook GRATIS

Testimonial

saya tersugesti, klo baca bukunya pak agfi, saya baru bisa paham… padahal saya juga uda punya buku mikro yg lain, spt nya gak enak, klo gak baca punya pak agfi, aneh memang…
Teguh Budiman

Waduh, emang sip banget penjelasannya pak Agfi, salah satu yang saya kagumi dari pak Agfi adalah kalo pak Agfi njelasin sesuatu pasti dengan ringkas, padat, berisi, to the point dan mudah di mengerti.. saya juga senang baca buku-bukunya pak Agfi lho, nah.. itu adalah tanda-tanda dari dosen, entrepreneur dan sekaligus penulis yang profesional..| salut dah buat pak Agfi.. Seandainya sebagian besar dosen bisa aktif seperti pak Agfi, pasti Indonesia makin maju neh..
Herlambang (http://indomicron.co.cc/)

Pak Agfi, salut buat jiwa “technopreneur” yang kuat dan inovatif. Saya bisa lihat di tulisan – tulisan Bapak. Btw, saya sendiri juga sedang belajar untuk mengembangkan bidang otomasi, esp. PLC dan SCADA
Handy (http://learnautomation.wordpress.com/)

alhamdulillah dengan seizin allah melalui perantara bpk akhirnya skripsi saya berhasil dan sesuai harapan.makasih ya pak atas informasi dan tutorial yang bapak berikan.suatu saat klu saya ada pertanyaan lg untuk mslh mc yg lain tlng dibntu lg ya pak.semga bpk semkn sukses amin.
salut n sukses slalu utk bpak.skali lagi makash ya bpk agfi.
Putra Adinda

PESAN SEKARANG!

Categories
Mikrokontroler

Arduino Duemilanove dengan ATMega 328

Arduino adalah sebuah kit elektronik open source yang dirancang khusus untuk memudahkan setiap orang dalam belajar membuat robot atau mengembangkan perangkat elektronik yang dapat berinteraksi dengan bermacam-macam sensor dan pengendali.

Arduino is a tool for making computers that can sense and control more of the physical world than your desktop computer. It’s an open-source physical computing platform based on a simple microcontroller board, and a development environment for writing software for the board.

Arduino can be used to develop interactive objects, taking inputs from a variety of switches or sensors, and controlling a variety of lights, motors, and other physical outputs. Arduino projects can be stand-alone, or they can be communicate with software running on your computer (e.g. Flash, Processing, MaxMSP.) The boards can be assembled by hand or purchased preassembled; the open-source IDE can be downloaded for free.

The Arduino programming language is an implementation of Wiring, a similar physical computing platform, which is based on the Processing multimedia programming environment.

(Kutipan dari http://www.arduino.cc)

Saat ini Arduino sangat populer di seluruh dunia. Banyak pemula yang belajar mengenal robotika dan elektronika lewat Arduino karena mudah dipelajari. Tapi tidak hanya pemula, para hobbyist atau profesional pun ikut senang mengembangkan aplikasi elektronik menggunakan Arduino. Bahasa yang dipakai dalam Arduino bukan assembler yang relatif sulit, tetapi bahasa C yang disederhanakan dengan bantuan pustaka-pustaka (librariesArduino.

Yang terbaru adalah Arduino Uno, berikut gambarnya (ada versi USA dan luar USA – Genuino Uno versi http://arduino.cc)

Anda dapat melihat lebih jauh tentang Arduino di website http://www.arduino.cc maupun di http://www.arduino.org, di sana tersedia software Arduino yang dapat di download gratis baik untuk platform Windows, Mac, maupun Linux. Juga tersedia panduan, contoh-contoh program dan library-library yang memudahkan kita berinteraksi dengan bermacam-macam komponen elektronik, hardware dan software.

Categories
Mikrokontroler

Flowcode AVR 3.0: Menghitung Sapi!

Kali ini kita akan belajar membuat program menggunakan Flowcode AVR untuk menghitung sapi-sapi kita yang masuk kandang. Caranya bagaimana? Kita gunakan sensor detektor sapi melalui PORT A (yang disimulasikan menggunakan pushbutton) untuk mendeteksi sapi-sapi yang masuk ke kandang. Sensor ini akan memicu proses perhitungan jumlah atau cacah sapi. Sementara ini hasil perhitungan ditampilkan melalui LED pada PORT B, bisa juga melalui 7segmen biar keren, tapi itu entar aja dech.

Silahkan membuat kerangka diagram alir menggunakan acuan Gambar 1. Pada blok Calculation masih kita kosongkan…

Gambar 1

Okey, langkah selanjutnya lakukan klik-ganda pada blok Calculation, sehingga dimunculkan kotak dialog yang ditunjukkan pada Gambar 2.

Gambar 2

Ganti nama “Calculation” (pada Display Name) menjadi “Total Sapi” (tanpa tanda petik). Kemudian lanjutkan menuliskan persamaan untuk menghitung total sapi sebagai berikut: TOTAL = TOTAL + SAPI (pada bagian isian Calculations). Perhatikan Gambar 3.

Gambar 3

Sensor detektor sapi disimulasikan menggunakan tombol tekan atau pushbutton yang dipasang pada PORTA.0. Jika tombol ditekan maka akan menghasilkan nilai 1 yang kemudian disimpan ke dalam variabel SAPI. Dengan demikian, penekanan tombol pada PORTA.0 akan menambah nilai TOTAL sebesar 1. Jika tidak ditekan, ya artinya nilai pada variabel SAPI tetap 0 (nol) dan tidak merubah nilai dari TOTAL, demikian seterusnya.

Klik Variables pada kotak dialog Calculations untuk mulai mendefinisikan variabel-variabel yang terkait. Akan ditampilkan kotak dialog seperti pada Gambar 4.

Gambar 4

Sekarang kita lanjutkan dengan mendefinisikan variabel-variabel yang terkait tersebut. Variabel yang akan kita definisikan adalah TOTAL dan SAPI. Penggunaan kedua variabel ini sudah saya jelaskan sebelumnya, jika belum paham silahkan ditengok lagi, nanti baru kembali lagi kesini…

Categories
Mikrokontroler

Downloader untuk AT89S dan AVR!

Jika sebelumnya banyak yang bertanya tentang downloader untuk AT89S, maka, alhamdulillah, saya sudah mendapatkan sumber informasi untuk rangkaian serta perangkat lunak downloader mikrokontroler AT89 dan sekaligus AVR.

Berikut ini rangkaian (gratis) yang dapat digunakan untuk mendownload program-program AT89S Anda melalui USB. Yang dibutuhkan adalah mikrokontroler AVRTMega8 sebagai kontroler-nya (sama atau mirip dengan USBASP).

ATMega8 memang tidak dilengkapi dengan fasilitas USB sebagaimana seri-seri AT90USB dari Atmel, sehingga program atau firmware USB telah disiapkan (lihat pada bagian Unduh). Firmware ini dibuat oleh Fischl dan tersedia di http://www.fischl.de/usbasp/, hanya saja firmware ini hanya mendukung untuk downloade mikrokontroler AVR saja (lihat ulasan-nya disini), sehingga perlu dimodifikasi sehingga bisa mendukung mikrokontroler seri AT89S.

Categories
Mikrokontroler

CodeVision dan Pustaka LCD: Sebuah contoh sederhana

Ada pertanyaan masuk ke saya, bagaimana program untuk tampilan ke LCD (misalnya tipe LCD 2×16 karakter) menggunakan CodeVision. Maka pada kesempatan kali ini saya bahas jawaban dari pertanyaan itu.

Yang perlu Anda ketahui bahwa CodeVision AVR sudah menyediakan pustaka untuk antarmuka LCD, hanya saja, Anda harus menyesuaikan rangkaian dengan ketentuan yang dimiliki CodeVision, perhatikan ketentuan antarmuka LCD dari CodeVision berikut ini (PORT mewakili PORT apa saja yang Anda gunakan untuk antarmuka LCD dengan AVR), atau perhatikan Gambar 3:

  • PORT.0 – pin RS
  • PORT.1 – pin R/W
  • PORT.2 – PIN EN
  • PORT.3 – tidak dipakai
  • PORT.4 – pin D4
  • PORT.5 – pin D5
  • PORT.6 – pin D6
  • PORT.7 – pin D7

Beberapa fungsi pada pustaka LCD milik CodeVision antara lain:

  • void _lcd_ready(void);
  • void _lcd_write_data(unsigned char data);
  • void lcd_write_byte(unsigned char addr, unsigned char data); – menuliskan sebuah BYTE ke generator karakter LCD atau RAM tampilan
  • unsigned char lcd_read_byte(unsigned char addr); – membaca sebuah BYTE dari generator karakter LCD atau RAM tampilan
  • void lcd_gotoxy(unsigned char x, unsigned char y); – meletakkan kursor pada x (kolom, 0..39) dan y (baris,0..3)
  • void lcd_clear(void); – membersihkan layar LCD
  • void lcd_putchar(char c);
  • void lcd_puts(char *str); – menuliskan string STR di dalam SRAM ke LCD
  • void lcd_putsf(char flash *str); – menuliskan string STR di dalam flash ke LCD
  • unsigned char lcd_init(unsigned char lcd_columns); – inisialisasi kontroler LCD
  • void lcd_control (unsigned char control); – menuliskan BYTE kontrol ke LCD