마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

아두이노 -> 안드로이드 데이터 수신중 한글자가 안받아지는 현상 문제

0 추천

STM32 MCU기기로 'AI0300000F' 와 같은 문자를 휴대폰 안드로이드 앱에 전송합니다.

A는 기기 전용 시작비트, F는 끝내기 비트입니다

BTchat 예시를 보고 따라만든 스레드를 통해 블루투스로 온 바이트를 받고 스트링으로 변환 후

그것을 F가 올때까지 계속 한글자씩 받습니다

그 후 F를 받으면 그것을 핸들러로 전송하는 방식인데요

문제는 블루투스를 기기와 연결 후 '처음 MCU(기기)가 안드로이드에 메세지를 전송하는 경우'

첫 글자인 A가 항상 전송되지 않습니다

가령 AI0300000F를 mcu에서 처음 안드로이드에 전송 시

I0300000F 만 인식됩니다

그 이후 연결된 상태에서 다시 AI0300000F를 보내면 전체 문장이 다 받아집니다 A포함해서

 

이 문제를 어떻게 해결해야 할까요? 아래는 코드 및 로그입니다

 

 

 

lock & unlock를 사용해 봤지만 여전히 같은 결과 같은 로그를 내었습니다.

코두 (370 포인트) 님이 2019년 1월 29일 질문

1개의 답변

0 추천
 
채택된 답변

코드엔 문제가 없어 보이는게 아두이노에서 전송 안 되는듯 한데요.

tcpdump 로 패킷 따서 확인 해 보시는게 좋을 듯 합니다.

 

익명사용자 님이 2019년 1월 30일 답변
코두님이 2019년 1월 30일 채택됨
...