|
제가 아두이노와 블루투스 모듈고 비콘 4개를 통해 RSSI세기 값을 받아오려고 하는데요.
비콘이 랜덤으로 받아져서 제가 원하는 비콘 순서대로 받고 싶은데요 받을 수 있는건지 여쭤보고싶습니다.
#include<SoftwareSerial.h>
int bluetoothTx = A2;
int bluetoothRx = A3;
SoftwareSerial bluetooth(bluetoothTx, bluetoothRx);
int a,b,c,d = 0;
char commandbuffer1[200];
char commandbuffer2[200];
char commandbuffer3[200];
char commandbuffer4[200];
void setup() {
Serial.begin(9600);
bluetooth.begin(9600);
bluetooth.println("AT");
bluetooth.println("AT+RENEW");
bluetooth.println("AT+IMME1");
bluetooth.println("AT+ROLE1");
bluetooth.println("AT+ADTY2");
bluetooth.println("AT+SHOW0");
}
void loop() {
bluetooth.println("AT+DISC?");
Serial.println("AT+DISC?");
delay(600);
while( bluetooth.available() && (a< 99))
{
commandbuffer1[a++] = bluetooth.read();
delay(40);
}
commandbuffer1[a++]='\0';
while( bluetooth.available() && (b< 99))
{
commandbuffer2[b++] = bluetooth.read();
delay(40);
}
commandbuffer2[b++]='\0';
while( bluetooth.available() && (c< 99))
{
commandbuffer3[c++] = bluetooth.read();
delay(40);
}
commandbuffer3[c++]='\0';
while( bluetooth.available() && (d< 99))
{
commandbuffer4[d++] = bluetooth.read();
delay(40);
}
commandbuffer4[d++]='\0';
if(a>0)
{
Serial.println((char*)commandbuffer1);
a=0;
delay(100);
}
if(b>0)
{
Serial.println((char*)commandbuffer2);
b=0;
delay(100);
}
if(c>0)
{
Serial.println((char*)commandbuffer3);
c=0;
delay(100);
}
if(d>0)
{
Serial.println((char*)commandbuffer4);
d=0;
delay(100);
}
}
|