Senin, 22 Oktober 2012

PIC18F Project Test

Setelah mengikuti seminar sehari yang diadakan Microchip, akhirnya proyek awal kecil-kecilan terealisasi juga. Rencananya ingin menggunakan demo board PICOne yang dibeli di seminar tersebut, namun ternyata teman memiliki beberapa sample mikrokontroler PIC. Saya pikir ini lebih mudah dan lebih fleksibel.

Mikrokontroler yang saya gunakan di sini adalah PIC18F14K50 DIP-20 dengan spesifikasi sebagai berikut:
  • Flash 16kb
  • RAM 768 bytes
  • EEPROM 256 bytes
  • Jumlah pin 20
  • 15 I/O
  • 9 channel 10-bit ADC
  • EUSART, I2C, SPI
  • 2 analog comparator
  • 8-bit timer 1 buah, 16-bit timer 3 buah
  • USB
Wow IC kecil yang kaya dengan fitur.

Rabu, 18 Juli 2012

Linux Pada FriendlyARM tiny6410 (1)

Pemilihan Distro Linux


Beberapa hari belakangan ini saya berkutat dengan board tiny6410 ini. Selain OS bawaan dari vendor, sebelumnya saya belum mencoba untuk memasang OS lain karena keterbatasan waktu.

Saya tertarik dengan artikel mengenai mini6410-debian. Di sini dijelaskan step-by-step memasang Linux Debian di board mini6410. Ada yang dinamakan Embedian pada distro besar ini, yaitu berasal dari kata Embedded Debian, disingkat Emdebian. Apakah Emdebian ini adalah Debian yang dikhususkan untuk perangkat embedded? Bisa dibilang begitu, namun bisa juga tidak. Pada dasarnya distro Debian menyediakan package untuk berbagai macam arsitektur, termasuk arsitektur ARM. Jadi kita pun bisa menggunakan Debian untuk board ARM. Kalau begitu apa bedanya dengan Emdebian? Bedanya adalah pada dokumentasi manual yang dihilangkan, jadi Emdebian lebih compact daripada Debian namun package-nya tetap kompatibel.

Ada satu lagi Linux yang saya coba yaitu dari LinuxLink. LinuxLink ini merupakan suatu perusahaan yang menyediakan jasa building untuk Linux beserta rootfs dan compiler-nya. Yang saya gunakan adalah jasa gratisnya sehingga building hanya bisa digunakan secara online. Hasil image kernel Linux dan rootfs saya coba gunakan untuk tiny6410 namun belum juga berhasil. Gagal pada tahap loading kernel yang menghasilkan Kernel Panic :(

Oke, karena akan menghabiskan waktu banyak jika mencari tahu kenapa kernel Linux dari LinuxLink gagal maka saya putuskan untuk mencoba tutorial mini6410-debian. Dan kebetulan karena pada tutorial tersebut disediakan image kernel Linux yang sudah jadi beserta minimal rootfs yang siap digunakan maka saya coba untuk memanfaatkannya. Dan ternyata kernel ini pun gagal! :-S

Oke..oke... Saya akhirnya mengambil kernel Linux bawaan vendor karena kernel inilah yang sudah jelas jalan dengan baik di atas tiny6410. Dan untuk rootfs saya menggunakan minimal Debian rootfs. Dan Alhamdulillah konfigurasi ini jalan sampai dengan mencoba untuk memasang ssh server dan client menggunakan package Debian (.deb). Di sini saya tidak mengikuti cara menggunakan rootfs yang ditaruh di SD Card walaupun mungkin nantinya pun saya akan menggunakannya namun saya menggunakan NFS untuk mengakses rootfs.

Untuk step-by-step pemasangan Debian pada tiny6410 nanti akan saya jelaskan di artikel yang kedua.

Rabu, 30 November 2011

FriendlyARM tiny6410 First Impression

Penampakan tiny6410 + 4.3" LCD
Hampir sudah seminggu ARM Development Board tiny6410 dari FriendlyARM pesanan saya sampai. Belum banyak yang diutak-atik, maklum kerja kantoran, cuma ada waktu bermain-main dengan board ini sepulang kerja, ketika libur, atau searching di Google sambil curi-curi waktu kerja :P

Well, first impression lumayan lah, begitu board dinyalakan, ngga lama terlihat proses booting Linux, kemudian muncul GUI dari Qtopia. Board ini secara default memang sudah ditanamkan Linux+Qtopia pada memori flash-nya. Tidak banyak yang bisa dilakukan dengan Linux bawaan FriendlyARM kecuali untuk sekedar menjalankan aplikasi tes hardware, melihat isi file, dan mencoba game sederhana bawaan board ini. Namun ada satu yang cukup membuat saya terpana, yaitu terdapat trailer film Kungfu Panda yang dapat dijalankan diatas board tersebut. Apalagi ketika speaker aktif coba dicolokkan ke socket line-out, wow ada suaranya! (norak banget)

Rabu, 20 Oktober 2010

Update Firmware dengan Bootloader

Dalam pembahasan kali ini saya tidak mengkhususkan pada satu jenis mikrokontroler, namun sebagai contoh sederhana saya ambil mikrokontroler jenis AVR.

Ok, pertama-tama apa sih yang disebut dengan firmware itu? Kalau dibandingkan dengan kata software, tidak ada perbedaan jelas antara keduanya. Namun firmware sendiri bisa disebut sebagai software yang ditanamkan pada chip (IC) tertentu yang mengatur kinerja dari suatu alat, apapun jenis bahasa yang digunakan, toh nantinya pun diubah ke bahasa mesin juga (sarua keneh).

Ada dua jenis firmware jika ditilik dari level-nya yaitu low-level firmware dan high-level firmware. Low-level firmware itu adalah firmware yang biasa ditanamkan di ROM (Read Only Memory). Nah firmware jenis ini tidak dapat diubah-ubah, jadi sekali program sudah ditanam ke dalam ROM maka seumur hidup tidak akan bisa diubah lagi. Yang satu lagi adalah high-level firmware. Firmware jenis ini biasanya ditanamkan di flash memory sehingga sewaktu-waktu bisa diganti dengan firmware yang lebih baru. Pernah dengar kan kalau di tempat service handphone CS-nya bilang begini: "Wah mas, hp-nya harus di-update nih firmware-nya". Nah itu berarti handphone kita menggunakan firmware jenis high-level.

Selasa, 15 Juni 2010

Hal yang Perlu Diketahui Tentang ATmega128

Beberapa hari yang lalu, saya mencoba menggunakan ATmega128 untuk pertama kalinya. PCB saya rancang sendiri kemudian pembuatan PCB-nya saya serahkan kepada jasa pembuatan PCB yang menurut saya lumayan bagus. Dengan bermodal satu buah IC ATmega128 TQFP saya pasang deh IC tersebut menggunakan solder tangan.

Secara kasat mata pemasangan IC tidak ada masalah. Namun ternyata masalah muncul ketika saya mengunduh software saya ke IC (flashing). Prosesnya selalu saja gagal, padahal semua sudah dicek, dari programmer-nya, kabelnya, dan koneksinya ke pin MISO, MOSI, dan SCK. Semuanya ok, tetapi tetap saja saya belum berhasil mengisi ATmega128 ini.