Tag: Tutorial

How To Play Audio Directly From Your Arduino!

Dari segi kekuatan pemrosesan, Arduino memang terbilang minim: 16 MHz clock, 32 KB flash memory, 2 KB RAM (Arduino UNO). Meski minim kemampuan pemrosesan, arduino ternyata mampu melakukan hal-hal ajaib yang normalnya dikerjakan oleh development board papan atas. Hal ajaib ini salah satunya adalah memainkan file audio langsung dari memory flash-nya. Ntaps!

Normalnya supaya bisa memainkan file audio, Arduino harus dipasangi shield tambahan, seperti SD Card shield, atau boleh jadi shield audio player. Sehingga dengan begitu arduino hanya bertugas mengontrol audio playernya saja.

Namun bagi orang yang gemar eksperimen dan malas mengeluarkan uang, Arduino tidak boleh dibiarkan “nganggur” hanya mengatur-atur saja. Arduino harus dipekerjakan dengan keras!

Nah, untuk membuat arduino bisa memainkan file audio, kita bisa mengikuti tutorial yang disediakan di link berikut: http://playground.arduino.cc/Code/PCMAudio. Di bagian akhir disebutkan bahwa kita harus menyediakan file bernama sounddata.h yang berisi file audio kita. Nah loh, file header C kok isinya data audio?

Tenang, pada Arduino suara diproduksi menggunakan PWM (Pulse Width Modulation) yang frekuensinya bisa diatur dengan nilai 0-255. File header sounddata.h berisi urutan angka-angka yang nantinya dipakai untuk menghasilkan suara yang diinginkan.

Untuk menghasilkan angka-angka tersebut ternyata tidak sederhana juga, kita perlu program bernama wav2c. Program tersebut bertugas mengubah file audio wav yang kita miliki menjadi urutan angka-angka yang siap diupload pada Arduino.

Selain program wav2c, kita juga membutuhkan program sox. Sox ini berguna untuk memotong durasi file audio menjadi maksimal 10000 sampel (hanya beberapa detik). Oke, sebagai wrap-up, dan agar artikel ini mudah diikuti, saya sajikan tutorialnya dalam bentuk step by step:

  1. Pastikan sudah menginstalasi Audacity pada komputer Anda.
  2. Download program soxwav2c yang telah saya kostumasi khusus untuk Arduino di sini (link). Ekstrak ditempan yang aman.
  3. Buka audacity, pastikan Project Rate pada bagian kiri bawah diset pada 8000 Hz. Lakukan rekaman singkat. Dalam contoh ini saya coba merekam suara ucapan ‘test’:

    Project rate
    window test

  4. Potong file audio di bagian yang diperlukan saja.
    delete track
  5. Ubah tipe audio menjadi mono, dan hapus salah satu channel-nya:
    to mono
  6. Selanjutnya export file wav tersebut sebagai unsigned 8-bit PCM dan simpan di folder yang sama dengan program soxwav2c tadi.
    save
  7. Drag and drop file audio hasil export tadi ke convert.bat pada folder soxwav2c. Akan dihasilkan file sounddata.h
  8. Buat sketch baru pada Arduino IDE dengan program mengikuti http://playground.arduino.cc/Code/PCMAudio. Letakkan file sounddata.h bersama dengan file .ino yang dibuat pada folder yang sama.
  9. Hubungkan speaker biasa ke Pin 11 dan GND arduino. Akan terdengar suara ‘test’ setiap kali Arduino di-reset.

Selamat mencoba!

 

ProgLang Designing: Language basic structure.

Di artikel ini saya akan menjelaskan fundamental designing programming language. Dalam bahasa pemrograman, ada struktur kata-kata yang disusun sesuai aturan bahasa pemrograman itu, seperti halnya bahasa inggris, Anda harus menyusun kata dengan baik dan benar agar kalimat yang dibuat dapat diterima. Nah, struktur itulah yang disebut syntax. Contoh real dalam C# seperti ini:

[sourcecode language=”csharp”]
string name = “Rosmianto Aji S”;
[/sourcecode]

Jadi struktur kata-katanya seperti:

[sourcecode language=”csharp”]
string <NamaVar> = <IsiVar>;
[/sourcecode]

Simbol ‘=’ dan ‘;’ disebut semantik. Yaitu simbol yang dipakai dalam syntax. Sebenarnya definisi ini agak keliru. Yang benar adalah: “.. semantik adalah struktur simbol-simbol yang dipakai dalam syntax ..”, penerapan praktisnya sbb:

[sourcecode language=”csharp”]
var = namadepan & namabelakang;
// semantiknya adalah:     … = … & … ;
// tiga simbol digunakan dalam semantik ini.
[/sourcecode]

Contoh lain:

[sourcecode language=”csharp”]
calc = 1 + 2 – 3 * 1;
// semantiknya:    … = … + … – … * …;
// lima simbol untuk kasus ini.
[/sourcecode]

Selanjutnya. command disebut juga identifier, mudahnya lihat dibawah ini:

[sourcecode language=”csharp”]
string name = variabellain;
[/sourcecode]

bila diurai akan menjadi:

[sourcecode language=”csharp”]
[string identifier] [name variable] [equal] [variabellain variable] [semicolon]
[/sourcecode]

Baris yang diidentifikasi sebagai komentar harusnya diabaikan.

AutoHotkey tutorial Released!

Improved! Sebelumnya saya pernah membuat tutorial mengenai AutoHotkey. Namun tidak dirilis ke publik. Melainkan hanya kalangan tertentu saja.

Nah, saat ini saya telah menyelesaikan prototipe dari revisi tutorial AutoHotkey saya yang terbaru. Untuk me-review silahkan unduh [disini]

Dokumen tersebut berformat PDF, pastinya Anda tahu kan, software apa yang harus dijalankan?

Ok, dengan merilis tutorial ini diharapkan Anda dapat memberi kontribusi tentang dokumen tersebut, apa yang harus diperbaiki? Bagaimana layout-nya? Bagaimana gaya bahasannya?

Bila respon yang masuk cukup untuk dijadikan background. maka saya akan melanjutkan menulis tutorial tersebut, hingga tingkat Advanced.

Yap, sedikitnya beri kesan Anda terhadap tutorial saya ini. I’m looking for your comment!

Bagaimana cara membuat bahasa pemrograman sendiri?

Bahasa pemrograman saat ini sudah sangat banyak nama, jenis, berikut keunggulannya. Mulai dari yang populer (seperti Java, C++, VB, PHP, keluarga .NET,  Delphi, dst.) dengan segala kelebihan, kelemahan, dan tipe source-nya (entah itu open source atau closed source).

Bila Anda programmer, adakalanya Anda membenci (atau setidaknya merasa kurang pas) dengan bahasa pemrograman yang sedang dipakai. Entah itu C++ dengan banyak istilahnya, statement yang kurang tepat,  pemakaian suatu sintaks yang tidak (atau kurang) berguna, dsb. Continue reading “Bagaimana cara membuat bahasa pemrograman sendiri?”

bagaimana cara membuat tema Google Chrome?

Cara mengganti tema Chrome? Sudah biasa!
Cara bikin tema Chrome? Ini, baru luar biasa!
OK, Tentunya Anda tidak sulit mengganti tema Chrome.
Jadi akan kurang bermanfaat jika saya membuat artikel ‘ganti
tema’ saja.
Cukup intro-nya, sekarang bagaimana langkah membuat tema Google
Chrome?

Dapatkan domain .com gratis!!!

Siap untuk memdapatkan domain .com dari provider favorit Anda secara gratis? Apa? Anda sudah punya domain .co.cc, ah nggak gengsi!

Dengan tutorial ini, Anda bisa mendapatkan domain .com atau domain berbayar lainnya (.net, .org, .biz). Bagaimana Anda bisa memperolehnya?

Ok, langkahnya sangat mudah. Ikuti langkah berikut:

  1. Pertama,tentukan provider domain .com favorit Anda, misalnya 000webhost.com
  2. Lalu,  register AWSurveys di [sini] gunanya untuk menjadi sumber dollar.
  3. Jangan lupa untuk memiliki akun PayPal, untuk transaksi domain .com. Jika belum punya Sign-Up gratis di [sini]
  4. Login-lah di AWSurveys tersebut dan lengkapi survey-surveynya.
  5. Pastikan Anda sudah mendapatkan $75, kemudian transfer dollar Anda ke akun PayPal Saya.
  6. Belilah sebuah domain di provider pilihan hati Anda, dan teruskan petunjuk pembelian dengan menggunakan dollar yang ada di akun PayPal saya.

catatan: Akun PayPal saya memiliki ultra-super strong password, jadi Anda tidak bisa menarik uang dari akun saya. Terkecuali Anda mentransfer uang AWSurveys ke akun PayPal Anda sendiri 😛

Lagian diboongin mau aja!! 😛