블루투스 시리얼 프로그래밍 질문입니다.
글쓴이: knumis / 작성시간: 월, 2007/12/17 - 5:24오후
안녕하세요~
블루투스 모듈간 시리얼 통신프로그램을 작성하고자 합니다.
자료는 간혹 있는데, 그대로 해봐도 잘 실행이 안되네요. ㅠ_ㅠ
스펙에 따르면,
통신해야 되는 타겟 디바이스는 Access Point와 통신하기 위해
SDP프로토콜과 SPP 서비스를 만족하며,
통신을 초기화하는 마스터로 동작합니다.
제가 구현해야 하는 부분은 슬레이브로 동작하는 단말입니다.
시리얼 포트를 오픈하듯이 디바이스를 오픈하고,
타겟디바이스로부터 데이터를 수신하려고 하는데,
어떻게 설정을 해야할지 모르겠습니다.
(open 호출시 디바이스명으로 어떤 인자를 주어야 할지 등등..)
BlueZ를 활용하면, 에뮬레이트된 시리얼포트 연결을 만들고 사용할 수 있다는데,
그 절차나, 사용되는 라이브러리 인터페이스 혹은 명령행 유틸리티 등을
알고 계신 분이 있다면 답변 좀 부탁드리겠습니다.
고수님들 도와주세요~
Forums:
API 등은 자세히
API 등은 자세히 모릅니다만,
일반적인 블루투스 통신을 위해서 밟아야 하는 절차에 관해서는 말씀드릴 수 있습니다. (도움이 될지 모르겠습니다만...)
slave가 SDP를 이용하여 master가 특정 프로파일을 가지고 있는지 조회합니다.
시리얼 통신을 사용하실 것이라면, Serial Profile이 되겠지요. (이걸 SPP라고 줄여 부르던가요.. 기억이 희미하네요. 앞으로 SPP라고 지칭하겠습니다)
만약 master가 SPP를 가지고 있다면, positive 응답이 올 것입니다.
그러면, SDP를 이용하여 master가 SPP를 서비스하고 있는 Rfcomm channel number(용어가 정확한지 모르겠습니다. port number라고 하던가요?)를 얻어옵니다.
그리고, 얻어온 Rfcomm port number로 Rfcomm 접속을 시도합니다.
접속 후 생성된 채널을 통해서 데이터를 read/write하시면 됩니다.
대략 위와 같은 시나리오(?)를 염두에 두시고 라이브러리가 제공해 주는 API를 호출해서 사용하시면 될 겁니다.
댓글 달기