Wednesday 23 November 2011

Prosesor ARM dari ST Micro di Indonesia

Ada beberapa tawaran prosesor ARM dari ST Micro di Indonesia, yaitu

Gambar STM32L Discover board:
Gambar STM32VL Discovery


Berikut ini keterangan lebih lanjut tentang evaluation board dan prosesor tersebut dari situs ST Microelectronics:
Saat ini saya belum sempat lagi mengoprek benda-benda itu karena sudah sibuk dengan development board LPC1769 dari Embedded Artists




Wednesday 2 November 2011

ARM Cortex M0 di Indonesia

Delta Electronic Surabaya sudah mulai menjual produk berbasis ARM Cortex M0. Produk yang dijual adalah prosesor ARM Cortex LPC1114 dan Development board untuk ARM Cortex LPC1114 serta development board sederhana untuk LPC1114. Prosesor LPC1114  yang dtawarkan cukup menarik, karena kemampuannya lebih tinggi dibandingkan  ATMega yang harganya setara. Prosesor ini ditawarkan dengan harga Rp 37500, sedangkan ATMega yang umum dipakai harganya cukup mahal, seperti ATMega8535 (sekitar Rp 50000) dan ATMega128 (sekitar Rp 70000).


Prosesor LPC 1114

Development board LPC 1114

Prosesor ATMega128
Development board yang ditawarkan dapat diprogram menggunakan boot loader melalui port serial, tidak ada JTAGnya sehingga tidak dapat didebug secara online. Jika memerlukan fasilitas debugging, menurut saya mending menggunakan LPCXpresso saja. Harga LPCXpresso tidak beda jauh dengan Development board ini.

Selain Delta Electronic, ada juga penawaran ARM  dari Central Electronic. Yang paling menarik bagi saya adalah board STM32VLDISCOVERY. Harganya mirip dengan LPCXpresso dan Development board LPC1114, sedangkan kemampuannya lebih mirip dengan LPCXpresso. Fitur menarik adalah adanya In Circuit Debugger. Fitur-fitur lainnya dapat dilihat di website STMicroelectronics.
Development board STM32 VL Discovery dari STMicroElectronics
Nah, selamat memilih :) Saya sendiri belum sempat mencoba komponen di atas. Saya baru sempat mencoba ARM Cortex M0 buatan Nuvoton







Wednesday 21 September 2011

Stellaris one day workshop

Sedang mengikuti workshop 1 hari tentang mikrokontroler Stellaris ARM
Cortex-M3. Pada workshop ini prosesor yang dipakai adalah LM3S8962.

Sunday 18 September 2011

Eksperimen LPCXPresso

Eksperimen board ARM Cortex M3 LPCXpresso menggunakan periferal sebagai berikut:

  • 4 port serial
  • 1 port ethernet
  • display LCD
  • keypad

Monday 12 September 2011

Analisa Harga LPCXpresso LPC1769



Pada tulisan ini saya mencoba membuat analisa sederhana mengenai harga dari board LPCXPresso LPC1769. Board ini adalah salah satu dari beberapa board ARM yang sudah saya bandingkan sebelumnya. Komponen utama dari board ini adalah sebagai berikut:

  • Prosesor LPC3154 harganya USD 7.427 sebagai JTAG programmer.
  • LPC1769 harganya USD 6.8 sebagai prosesor utama.
  • SPI Flash untuk LPC3154 AT45DB321D-SU
  • Regulator untuk LPC3154 CAT6219-330TDGT3
  • Buffer untuk LPC3154: 74LVC125APW
  • EEPROM untuk LPC1769: 24LC64
  • Ethernet PHY: LAN8720
Sepintas nampaknya harga LPCXpresso LPC1769 yang cuma  USD 28.5 tidak balik modal banget, kalau sudah dihitung dengan harga board, komponen kecil regulator, EEPROM, ethernet PHY, assembling, pemasaran dan sebagainya. Di luar harga tersebut, masih ada lagi compiler free dari Code Red yang dapat melakukan upload program sampai 128 KB, sedangkan kalau menggunakan Keil, biasanya versi free nya hanya dapat melakukan compile program sampai 32 KB.

Kesimpulan sementara: susah membuat board Cortex M3 yang kemampuannya sama dengan LPCXpresso namun dengan harga yang bersaing.

Referensi Harga


Sunday 28 August 2011

Perbandingan Spesifikasi Beberapa Board Prosesor ARM

Berikut ini adalah perbandingan spesifikasi beberapa prosesor ARM yang sebelumnya sudah dibuat fotonya

Technologic Systems TS-7260 Olimex LPC-L2294 Nuvoton Learning Board Nu-LB-NUC140 Nuvoton Nu Tiny SDK M051 Embedded Artist LPCXpresso LPC1769 Embedded Artist mbed LPC1768
Foto




 

 

Prosesor ARM9 ARM7TDMI LPC 2294 (NXP) ARM Cortex M0 (Nuvoton) ARM Cortex M0 (Nuvoton) ARM Cortex M3 LPC1769 (NXP) ARM Cortex M3 (NXP)
Clock 200 MHz 60MHz 50MHz 50 MHz 120 MHz 100 MHz
On Chip RAM - 16KB 16KB 4 KB SRAM 64 KB 64 KB
On Chip Flash - 256KB 128KB 64KB program

4KB data
512 KB 512 KB
On Board RAM 32 MB 8 MB SRAM - - - -
On Board Flash 32 MB 4 MB - - - -
On Chip Oscillator - - Ya Ya Ya Ya
On Board Crystal 14.74 MHz 14.7456 MHz 12MHz, 32kHz 12MHz 12 MHz 12 MHz
Harga USD 179 EUR 115.95 (Ref) USD 119.7 (Digikey) USD 19.95 (Digikey) EUR 20 EUR 45
Free Compiler & IDE GCC GCC (WinARM) Keil (max 32KB) Keil (max 32 KB) Code Red, max code 128KB online http://mbed.org/
Ethernet 10/100 on board 10/100 on board - - 10/100 dengan menambah konektor ethernet 10/100 dengan menambah konektor ethernet
In Circuit Emulator ? tersedia dengan perangkat JTAG khusus Ya Ya Ya Ya
Operating System Linux FreeRTOS   CooCox

FreeRTOS
CooCox
Power Supply 4.5V ~ 20V with on board regulator 4.5VAC / 6 VDC with on board regulator 5V via USB or connector 5V via USB 5V via USB or 3.15V-3.3V DC 5V via USB or 4.5V ~ 9V DC

Saturday 30 July 2011

Parade Prosesor ARM

Minggu ini saya berhasil mengumpulkan beberapa board ARM:

Pekerjaan selanjutnya adalah membandingkan kemampuan dari masing-masing board tersebut.

Update: sempat beberapa jam mencoba board ARM dari Texas Instrument: Stellaris LM3S8962


Wednesday 20 July 2011

Mempelajari ARM Cortex M3 dengan development board LPCXpresso

LPCXpresso LPC1769 (kanan) disandingkan dengan modul LPC2294 dari Olimex (kiri)

Salah satu cara cepat belajar ARM Cortex M3 adalah dengan menggunakan board LPCXpresso. Board ini adalah hasil kerjasama antara NXP sebagai produsen mikroprosesor ARM, CodeRed sebagai produsen compiler dan Embedded Artist sebagai produsen development board.

Keunggulan produk ini yang saya rasakan:
  • Dapat langsung digunakan
  • Tersedia pin-pin untuk menyambungkan ke periferal yang kita inginkan
  • Jika ingin menggunakan development board yang lebih besar dan lengkap, dapat membeli base board dari Embedded Artist
  • Sudah ada JTAG
  • Compiler gratisan dari CodeRed dapat membuat aplikasi sampai ukuran 128k. Ini lebih besar daripada hasil software gratisan dari Keil / IAR
  • Sudah ada porting FreeRTOS untuk LPCXPresso. Ini sangat memudahkan untuk mencoba RTOS (Real Time Operating System)
  • Tersedia modul LPCXpresso untuk kelas Cortex M0 dan Cortex M3
  • Sudah ada chip ethernet, tinggal ditambah konektor ethernet.
  • Harganya lumayan murah , €20

Referensi untuk mempelajari teknik reduksi derau (noise) pada sistem elektronika

Dalam membuat sebuah sistem elektronika, kita akan menghadapi adanya ketidaksesuaian antara apa yang kita rancang dengan yang terjadi di dunia nyata. Salah satu penyebabnya adalah fenomena derau (noise). Fenonema derau ini sering diabaikan pada waktu perancangan, namun ternyata muncul pada waktu implementasi perangkat keras.

Berikut ini beberapa referensi yang pernah saya pakai untuk belajar / mengajar mengenai EMI (Electromagnetic Interference) /EMC(Electromagnetic Compatibility) /ESD (Electrostatic Discharge):


Referensi berupa Textbook:
Referensi berupa Application Note:

Tuesday 19 July 2011

Prosesor ARM Cortex M0 dari Nuvoton

Baru saja saya mendapatkan 2 buah sampel development board dari Nuvoton. Saya belum sempat mencobanya, jadi sementara ini cuma ada uraian pandangan mata saja.

Board pertama adalah development kit tipe NuTiny SDK M051. Isinya adalah board ARM Cortex M0 dari seri M051. Kode '051' ini mengingatkan ke prosesor 8051, dan barang ini memang ditarget untuk menjadi prosesor yang bersaing dengan seri 8051. Dari sisi harga sepadan, sedangkan dari sisi kemampuan prosesor ini adalah masuk ke jenis ARM32. Dengan harga yang mirip harga prosesor 8 bit, bisa mendapatkan kemampuan yang mendekati prosesor 32 bit.

Dari foto close up prosesornya,  tipe prosesornya adalah "M0 516 LAN", artinya kapasitas Flash ROMnya adalah 64k


Menurut Digikey, harga board ini adalah USD 19.95
Harga prosesornya saja berkisar antara USD 1.8 sampai dengan USD 4.23 tergantung jumlah pesanan.
Board ini sempat juga didiskusikan di forum AVRFreaks





Board kedua adalah starter kit tipe Nu-LB-NUC140. Board ini sudah dilengkapi beberapa periferal, sehingga di sini sudah dapat melakukan percobaan yang cukup kompleks.


Tipe prosesornya adalah NU140VE3CN artinya: CPU Core Cortex-M0, Connectivity Line, APROM size 128K, RAM Size 16K


Spesikasi prosesor NUC menurut user's guide"
The NUC1XX series are ARM® Cortex™-M0 core embedded microcontroller for industrial control and the applications which needed Rich communication functions. The Cortex™-M0 is the newest ARM embedded processor with 32-bit performance and at a cost equivalent traditional 8-bit microcontroller.

The NUC1XX series with Cortex™-M0 core runs up to 50MHz, up to 32K/64K/128K-byte embedded flash, and 4K/8K/16K-byte embedded SRAM, it also integrates Timers, Watchdog Timer, RTC, PDMA, UART, SPI/SSP, I2C, PWM Timer, GPIO, LIN, CAN, USB 2.0 FS Device, 12-bit ADC, Analog Comparator, Low Voltage Detector and Brown-out detector
.
Periferal yang sudah ada di board starter kit ini adalah sebagai berikut:
  • 7-segment sebagai output
  • keyboard 3x3 sebagai input
  • push button interrupt
  • LCD sebagai tampilan
  • UART melalui konektor DB9
  • Buzzer
  • Konektor I2C
  • Konektor SPI
  • Konektor PS2
  • Konektor ADC
  • Konektor I2S
  • Konektor LIN dan CAN
  • Antar muka untuk memori SD
Harga board ini di Digikey adalah USD 119.7

Daftar prosesor dari Nuvoton dapat dilihat di situs Nuvoton. Berikut ini diagram ringkasnya. Nampak bahwa M051 adalah 'lowest of the low' dari keluarga ARM Cortex M0, sedangkan NU140 adalah tipe high-end nya.

Berbagai Teknik Programmer untuk AVR

Pada tulisan ini diuraikan berbagai teknik untuk memasukkan program ke dalam Flash memory pada mikrokontroller AVR. Teknik tersebut adalah sebagai berikut:

  1. Programmer AVR dengan ISP via port paralel
  2. Programmer AVR melalui port serial dengan bit-banging ISP
  3. Programmer AVR dengan ISP via port serial dengan protokol serial
  4. Programmer AVR via port serial dengan bootloader
  5. Programmer USB dengan bit banging
  6. Programmer USB dengan port serial
  7. Programmer Tegangan Tinggi (HV Programmer)
Berikut di bawah ini adalah uraian dari masing-masing teknik tersebut.

Programmer AVR dengan ISP via port paralel

Pada programmer jenis ini, pemrograman dimasukkan melalui port SPI (Serial Peripheral Interface) di mikrokontroler AVR. Teknik ini dikenal juga dengan nama ISP (In System Programming), artinya mikrokontroler dapat diprogram pada sistem yang sudah tersolder, tanpa perlu mencopot mikrokontroler tersebut dari PCB. Pada teknik ini, pin-pin ISP di AVR langsung dikendalikan oleh port paralel dari PC.

Ada 2 varian rangkaian jenis ini, yaitu programmer tanpa buffer dan programmer dengan buffer.
Blok diagram rangkaian tanpa buffer adalah sebagai berikut:


Blok diagram rangkaian dengan buffer adalah sebagai berikut:

Contoh hardware rangkaian programer jenis ini adalah sebagai berikut:
Sebagai pasangan hardware programmer, diperlukan juga software di PC untuk melakukan programming. Contohnya adalah sebagai berikut:

Programmer AVR melalui port serial dengan bit-banging ISP

Blok diagram sederhana

Pin-pin ISP dikendalikan oleh port serial dari PC, .
Pemrograman tidak menggunakan protokol komunikasi serial, melainkan menggunakan metode ''bit-banging''. Contoh rangkaian dapat dilihat di URL berikut. http://www.lancos.com/siprogsch.html .
Software dapat menggunakan PonyProg

Programmer AVR dengan ISP via port serial dengan protokol serial


Pada programmer ini, PC berkomunikasi melalui protokol serial dengan sebuah mikroprosesor.
Mikroprosesor ini kemudian mengendalikan pin-pin ISP pada mikrokontroler AVR yang akan diprogram.
Contoh Rangkaian

Programmer AVR via port serial dengan bootloader


Pada programmer jenis ini, pada AVR yang akan diprogram diaktifkan dulu suatu program kecil bernama ''bootloader''. PC mengirimkan software yang akan diprogramkan ke program bootloader ini , kemudian program bootloader akan memprogram memori Flash dengan program yang diinginkan tersebut.
Contoh software bootloader

Programmer USB dengan bit banging


Pada programmer jenis ini, sebuah mikroprosesor dipakai untuk menerima sinyal USB langsung dari PC tanpa menggunakan chip khusus USB. Mikroprosesor programmer ini kemudian memprogram chip AVR melalui koneksi ISP.
Contoh rangkaian programmer USB dengan bit banging
Contoh produk jadi:

Programmer USB dengan port serial


Pada dasarnya programmer USB ini adalah salah satu dari programmer via serial di atas, namun port serial yang digunakan adalah komponen konverter USB to Serial Adapter.

Programmer Tegangan Tinggi (HV Programmer)

Programmer ini mengakses flash di AVR melalui port paralel di AVR. Pada waktu pemrograman diperlukan tegangan +12V pada pin tertentu, oleh karena itu teknik ini disebut programmer tegangan tinggi. Tegangan tinggi di sini tidak mencapai puluhan ataupun ratusan volt, tapi hanya +12 V. Keunggulannya utama programmer adalah dapat dipakai untuk memprogram chip AVR yang sempat dimatikan SPI atau pin Resetnya. Kelemahannya adalah rangkaian programmernya cukup kompleks dan juga chip mikrokontroler yang diprogram harus dilepas dari PCB.

Terdapat beberapa rangkaian programmer yang berbasis berbasis dari board STK500 sebagai berikut:
Programmer paralel tegangan tinggi sederhana: