Cara Program Bluetooth HC-05 dengan Aplikasi bluetooth Android dan Atmega 16

Pada bluetooth hc-05 ini sebenarnya bisa juga dilakukan dengan arduino. tetapi kali ini kita akan menggunakan Atmega16 untuk mikronya. Pada dasarnya tidak jauh berbeda dengan arduno karena modul HC-05 ini dapat diakses menggunakan komunikasi serial/usart.    

Pertama-tama, kita siapkan terlebih dahulu modul bluetooth hc-05 nya juga atmega16 nya serta diberi suatu indikator untuk mengetahui apakah bluetooth kita bekerja atau tidak.

 

APLIKASI BLUETOOTH ANDROID

Sebenarnya banyak sekali aplikasi yang dapat kita gunakan untuk remote control dengan Bluetooth, namun kali ini saya akan menggunakan aplikasi BLUETOOTH RC CONTROLLER karena saya lebih sering menggunakan aplikasi ini.



Gambar diatas adalah tampilan ketika kita sudah membuka aplikasi tersebut.

Selanjutnya kita persiapkan suatu indicator untuk mempermudah kita dalam mengetahui apakah rangkaan juga program kita dapat berjalan dengan baik atau tidak. Seperti contohnya, kita dapat menggunakan suatu led yang dapat langsung kita hubungkan dengan port pada atmega16 yang akan kita gunakan.

PEMROGRAMAN BLUETOOTH DENGAN CVAVR
Dimulai dengan membuka program cvavr kita terlebih dahulu. Kemudian kita setting bagian port mana yang akan kita gunakan untuk menyalakan beberapa led. Semisal kita siapkan 4 buah led yang akan kita nyalakan pada PORTA. Jadi kita hanya perlu mensetting dari PORTA.0 sampai PORTA.3 untuk dijadikan sebagai output. Selanjutnya kita masuk pada bagian usart. Didalamnya dicentang untuk bagian receiver dan transmitternya sedang baudrate nya pada 9600.

Pada aplikasi Bluetooth RC controller, kita dapat membuka pada bagian option menu yang pada aplikasi nya terlihat seperti gambar gear. Selanjutnya kita masuk pada bagian setting untuk melihat character apa yang dapat kita gunakan.


Programnya adalah seperti dibawah ini

---------------------------------------------------------------------------------

#include <mega16.h>

#include <stdio.h>

 

// Declare your global variables here

#define Lamp1 PORTA.0

#define Lamp2 PORTA.1

#define Lamp3 PORTA.2

#define Lamp4 PORTA.3

 

char data;

 

void main(void)

{

// Declare your local variables here

 

// Input/Output Ports initialization

// Port A initialization

PORTA=0x00;

DDRA=0b11110000;

 

// Port B initialization

PORTB=0x00;

DDRB=0x00;

 

// Port C initialization

PORTC=0x00;

DDRC=0x00;

 

// Port D initialization

PORTD=0x00;

DDRD=0x00;

 

 

// USART initialization

// Communication Parameters: 8 Data, 1 Stop, No Parity

// USART Receiver: On

// USART Transmitter: On

// USART Mode: Asynchronous

// USART Baud Rate: 9600

UCSRA=0x00;

UCSRB=0x18;

UCSRC=0x86;

UBRRH=0x00;

UBRRL=0x47;

 

while (1)

{

// Place your code here

data = getchar();

if (data == '1') {Lamp1 = 1;}

else if (data == '2') {Lamp2 = 1;}

else if (data == '3') {Lamp3 = 1;}

else if (data == '4') {Lamp4 = 1;}

}

-------------------------------------------------------------------------------------

 

Apabila berhasil, kita dapat mengganti program kita yang tadinya lampu, kita dapat ganti menjadi motor dc yang dapat kita gunakan untuk RC.

Komentar