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

안드로이드 시리얼통신이 이상해요? 현상 원인 아시는 분 ㅠ ㅠ

0 추천

안녕하세요, 네트워크에 특히 약한.. 초보개발자입니다.

설명부터하고 문제를 얘기할게요~

 

왼쪽은 안드로이드 개발자 사이트에서 다운받을 수 있는 android-serialport-api 프로그램의 메뉴  중 콘솔액티비티화면이고 오른쪽은 터미널프로그램인 컴아날라이저입니다.

통신 환경은

PC 에서 컴아날라이저로 연결 (COM4) <> 테스트보드에 앞서말한 시리얼통신프로그램으로 연결 (ttySAC1번)

속도는 9600 에 나머지 옵션 값도 일치시켰구요.

 

문제는 이겁니다.

테스트보드에서 PC로는 텍스트 전송 시 정상적으로 전달이 되는 걸 확인했는데,

(컴아날라이저에 주황색바탕으로 표시되는 부분)

PC에서 테스트보드로 텍스트 전송 시 첫글자가 소실될 때가 있고 아닐때가 있어요...

아, 정확히 말하면 소실이 아니고 다시 돌려받은거죠..

(위에 보시면 중간중간에 주황색으로 한글자씩만 표시된 부분)

 

ex) PC에서 Hello 텍스트 입력 시 ~~~~~~~~  테스트보드에서 확인해보면 ello 만 표시됨.

컴아날라이저에 보면 내가입력한  Hello 와 리턴받은   H 가 보임..

 

리시브 부분 소스를 보면 다음과 같습니다. 왜 이런 현상이 나오는 건지 ㅠ ㅠ ? 아시는 넷웍 박사님..~

@Override
 protected void onDataReceived(final byte[] buffer, final int size) {
  runOnUiThread(new Runnable() {
   public void run() {
    if (mReception != null) {
         mReception.append(new String(buffer, 0, size));
    }
   }
  });
 }

 

초보개발자ㅠ (33,870 포인트) 님이 2014년 2월 14일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...