아두이노 블루투스 데이터 전송
조회수 3152회
안드로이드 송신 부분 코드
Thread mWorkerThread;
char mDelimeter = '\n';
int readBufferPosition = 0;
byte [] readBuffer;
public void beginListenForData(){
final Handler handler = new Handler();
readBuffer= new byte[1024];
mWorkerThread = new Thread(new Runnable(){
public void run(){
while(!Thread.currentThread().isInterrupted()){
try{
int bytesAvailable = mInput.available();
if(bytesAvailable > 0){
byte[] packetBytes = new byte[bytesAvailable];
mInput.read(packetBytes);
for(int i = 0; i < bytesAvailable; i++){
byte b = packetBytes[i];
if(b == mDelimeter){
byte[] encodedBytes = new byte[readBufferPosition];
System.arraycopy(readBuffer, 0, encodedBytes,0,encodedBytes.length);
final String data = new String(encodedBytes, "UTF-8");
readBufferPosition = 0;
handler.post(new Runnable() {
@Override
public void run() {
Temperature.setText("테스트");
}
});
} else {
readBuffer[readBufferPosition++] = b;
Temperature.setText("테스트2");
}
}
} else {
Temperature.setText("테스트3");
}
} catch(Exception e){
e.printStackTrace();
}
}
}
});
mWorkerThread.start();
}
아두이노에서 BTSerial.println("hello");로 해서 했는데 테스트3가 나오네요 혹시 어디쪽에 문제가 있는건가요..? 안드로이드앱에서 아두이노로 데이터 전송은 되는데 아두이노에서 안드로이드로 데이터 전송이 안되는거 같아서 질문 올립니다
-
(•́ ✖ •̀)
알 수 없는 사용자
댓글 입력