Wednesday 27 March 2013

Membuat Arduino Simulator dengan Software Proteus

Arduino sangat populer dengan kemudahan dalam pemakaian librarinya yang open source. IDE nya pun sederhana dengan menggunakan java yang dapat berjalan di banyak platform termasuk (windows, MAC, Linux, dsb). Kali ini saya akan membuat Simulatornya arduino dengan proteus 7.5 SP3. Software ini tidak gratis anda bisa mencari versi fullnya di banyak situs maupun torrent, karena saya tidak memberikan link software yang bukan freeware atau open source.
Berikut tampilan Arduino simulator saya :


Skematik diatas compatible dengan Arduino UNO. Sayangnya saya tidak bisa menerapkan bootloader arduino di simulator ini. Jadi untuk mendownload programnya kita link kan output .HEX dari Arduino IDE dengan ATmega 328.  Desain saya bisa di download disini

Software yang diperlukan untuk simulator ini adalah:
  1. Arduino IDE, saya menggunakan versi 1.0.3. Download disini
  2. ISIS Proteus 7.5 SP3. Versi sebelumnya belum mempunyai ATmega328.
  3.  VSPE sebagai pair virtual COM Port. Download disini. Freeware untuk 32-Bit windows atau bisa menggunakakan com0com
  4.  Hercules sebagai Serial Terminal . Download disini.  Bisa menggunkan hyper terminal untuk Windows XP ataupun software terminal lainnya.
Langkah - langkah menggunakan simulator:
  1. Pertama instal seluruh software yang diperlukan
  2. Buka file arduino.dsn dengan ISIS proteus.
  3. Buka Arduino IDE. Pilih File > Preferences > Centang Show verbose output during compilation

Tuesday 26 March 2013

Membuat AVRisp MKII-Clone Dengan AT90usb162

AVRisp MKii adalah programmer yang dikeluarkan oleh ATMEL untuk mensuport ISP/PDI/TPI. ISP sudah  banyak kita ketahui sebagai programmer hampir seluruh keluarga AVR 8 bit. PDI digunakan untuk memprogram AVR XMEGA, sedangkan TPI digunakan untuk TINY AVR. Dengan kecepatan download maksimal 8Mhz tentu programmer sangat cepat untuk mendownload mikrokontroller Atmel.

Untuk membuat clone-nya saya menggunakan skematik sebagai berikut:


Sumber rangkaian : http://hackaday.com/2011/07/30/avr-programmer-modelled-after-the-mkii-uses-lufa/

Dari rangkaian yang perlu diperhatikan adalah IC MAX3002 yang digunakan sebagai level converter dari 5 Volt ke 3.3 Volt. Untuk AVR yang menggunakan 5V supply IC MAX3002 bisa ditiadakan. Xmega yang menggunakan catu daya 3.3 V dapat di convert tegangannya menggunakan FET atau level coverter lainnya. Untuk project kali ini saya tanpa menggunakan MAX3002 karena cuma menggunakan ISPnya untuk mendownload  5 Volt AVR. Dengan konfigurasi PIN sebagai berikut :

AT90usb162Target AVR
PB4  (T1)RESET
PB2  (MOSI)MOSI
PB3  (MISO)MISO
PB1  (SCK)SCK
GNDGND
VccVcc

Yang dibutuhkan dalam membuat AVRisp mkii clone ini adalah:
  1. Modul AT90usb162 atau membuat rangkaian seperti skematik diatas.
  2. Software FLIP untuk mendownload AT90usb162 menggunakan DFU bootloader. Download disini
  3. LUFA sebagai firmware AVRisp mkii. Download disini.
  4. WinAVR sebagai compiler LUFA. 
  5. AVRstudio sebagai driver dan platform buat mendownload file .HEX. Bisa di download di situs resmi Atmel akan tetapi harus register dulu.
Modul AT90usb162 bisa memakai modul apa saja termasuk modul yang dikeluarkan Atmel AT90USBkey.
Karena harus impor dan pertimbangan harga saya memutuskan menggunakan modul AT90usb162 yang dijual oleh innovative electronics yang saya beli dari digi-ware.com. Berikut modul yang saya pakai :

Sumber Gambar : http://www.innovativeelectronics.com/innovative_electronics/pro_dtavr90usb162cpu.htm

Dengan menambahkan push button untuk pin reset mikrokontroller yang saya jumper diatasnya dan saya lekatkan dengan double-tape. 


Cara Membuat AVRisp MKII

  1. Buat atau beli modul AT90usb162.
  2. Instal seluruh software yang dibutuhkan (FLIP, AVRstudio, WinAVR).
  3. Extract LUFA. Saya menggunakan LUFA versi LUFA-130303
  4. Buka WinAVR. Pilih File > Open Project(s) . Buka LUFA.pnproj
  5. Pilih Project > AVRisp MKII > Buka makefilenya. Kita sesuaikan makefile tersebut sesuai dengan board yang kita beli. Ganti konfigurasi makefile sebagai berikut
    • BOARD = NONE  > karena saya menggunakan board custom
    • F_CPU = 8000000 > crystal board yang saya pakai
  6. Setelah diganti save makefile tersebut dan highlight AVRisp MKii project. Lalu pilih Tool > Make All. Maka anda akan melihat proses compile berjalan setelah selesai anda aka menemukan hasil compilernya di  LUFA-130303\Projects\AVRISP-MKII\AVRISP-MKII.hex
  7. Siapkan software FLIP dan hubungkan modul AT90usb162 menggunakan USB-Mini dengan laptop/ PC anda.
  8. Reset AT90usb162 dengan push button darurat yang sudah dibuat. Install driver otomatis. Maka akan muncul Atmel USB devices di device manager.
  9. Masuk software FLIP, pilih settings > communication > USB atau langsung dengan shortcut CTRL+U. Kemudian pilih file > Load Hex File > AVRISP-MKII.hex. 
  10. Klik Run untuk mendownload software. Klik Start Application. Maka AVRISP MKii sudah dideteksi.
  11. Gunakan AVRstudio/ AVRDUDE untuk mendownload. Untuk ISP maksimal speed yang bisa diapakai adalah 1/4 dari crystal MCU. Misalnya menggunakan 16 Mhz maka maksimum speednya adalah 4 Mhz. Sedangkan untuk mendownload AVR baru gunakan speed dibawah 1 Mhz untuk mengubah fusebit-nya.
  12. Saya menggunakan AVR Studio 6. Pilih tool > Device Programming . Pilih AVRisp MKii sebagai programmer anda. Pilih speed sesuai selera dan klik > Set

Develop STM32 dengan STM32cubeMx + OpenSTM32 IDE

Banyak temen ² yang masih ngoprek STM32 di Keil, yang harus nyari software crack ²an. Bebas sih, tapi saya sepaham dengan dosen saya saat ...