Jumat, 29 Januari 2010

RFM12BP : Sejenak Coding RFM12B

.
File Sumber :Tutorial memprogram RFM12B (bisa juga RFM12BP).

Agar modul Tranciever RFM12B/P bisa berfungsi maka mikrokontroller harus diprogram agar dapat berkomunikasi dengan modul RFM12B/P namun sebelum memprogram ada beberapa hal yang harus diketahui terlebih dahulu.
  • MCU dan modul RFM12B/P berkomunikasi secara SPI (Serial Peripheral Interface) 16 bit.
  • Agar memprogram mudah dan komunikasi SPI sinkron maka xtal MCU memiliki kristal dengan nilai tidak lebih dari 10MHz (sangat disarankan kristal = 10MHz).
  • Salah satu modul RFM12B/P sebagai penerima saja dan salah satu modul RFM12B/P sebagai pemancar saja.
  • Frekuensi modul pemancar dan modul penerima harus sama, dan untuk awal coding sebaiknya menggunakan frekuensi tengahnya saja seperti 434MHz, 868MHz, atau 915MHz.
  • Kecepatan transfer data atau Baud Rate antara pemancar dan penerima harus sama.
  • Untuk modul RFM12B/P Reciever (penerima) setiap selesai menerima data harus dilakukan FIFO Reset untuk mengosongkan buffer memori FIFO agar reciever aktif dan dapat menerima data berikutnya.
Untuk kristal MCU, jika MCU menggunakan kristal lebih besar dari 10MHz maka komunikasi bisa error karena modul RFM12B/P tidak dapat mengikuti kecepatan MCU (modul RFM12B/P menggunakan kristal 10MHz). Hal ini bisa diatasi dengan memberikan delay pada coding MCU agar MCU tidak terlalu cepat, tetapi hal ini justru memperlambat komunikasi MCU dengan RFM12B/P karena delay tersebut harus tepat nilainya (biasanya justru lebih lambat jika dibanding menggunakan xtall 10MHz).

Untuk Codingnya mau jelasin tetapi lebih lengkap disini Tutorial memprogram RFM12B. Coding tersebut pada transmitter memancarkan karakter berupa angka '0' hingga 'F' dan pada reciever menampilkan data diterima pada komputer secara serial (COM).

PREAMBLE berfungsi sebagai sinyal wake up yaitu sinyal 10101010 yang dikirimkan sebelum data sebenarnya dikirimkan, fungsinya sebagai sinyal yang memberitahu pada penerima agar "bangun" (wake up) dan bersiap menerima data sebenarnya yaitu data setelah data sinkronisasi diberikan (SYNC).

Selamat mencoba ;)

Topik yang Populer