QT와 Bluetooth를.(460)

Download Report

Transcript QT와 Bluetooth를.(460)

3조
김진원
김진혁
차례
 조원 소개
 프로젝트 소개
 개발 환경
 프로젝트 내용
 시연
 보완점
 Q&A
조원 소개
 2003200087 김진원
 Qt, 통합
 2003200088 김진혁
 블루투스, 문서화, 자료검색
프로젝트 간단 소개
• 고전 보드 게임인 세균전을 타겟 보드 두 개를 이용하여 1:1
대전으로 구현하였다.
• 구현 하는 데, Qt를 이용한 GUI, 타겟 보드의 터치스크린을
통한 입력, BlueZ를 이용한 블루투스 무선 통신을 이용하였
다.
개발 환경
 HOST : FC8, FC9, VMWare (커널은 2.6)
 TARGET : PXA255 (커널 2.6 )
 BlueZ library
 Qt-embedded
 그밖에
 USB 블루투스 동글
프로젝트 내용 (환경설정)
 Kernel



blueZ 라이브러리를 이용하려면 2.6으로 업그레이드 필요
포팅의 어려움.
부트로더가 uboot로 바뀜. 메모리 구조 변화.
 툴-체인

Qt가 컴파일러 버전을 가려서, 역시 깔고 지우고를 반복
프로젝트 내용 (환경설정)
 Qt


전체 기간 가운데 2/3이상의 시간을 잡아먹은 극악한 Qt 세팅
생각만 해도 가슴이 아플 정도.
 BlueZ 라이브러리



2.4에서도 구현 될 줄 알았으나, 막상 2.6이 필요
Qt 셋팅 어렵게 맞춰졌는데, 상기 사유 덕에 갈아엎고, 다시 셋
팅하는 데 시간 걸림.
블루투스의 고유의 페어링과 같은 문제 때문에 시간 허비
 HOST


같은 셋팅을 해도 컴파일이 되고 안되고가 갈리는 HOST들
VMWare 이용
프로젝트 내용 (구현)
 Qt로 GUI를 구현
 자신의 차례에 터치스크린으로 입력을 받으면, 그 이벤
트에 대한 처리를 하여, 화면이 바뀌면서, 상대방에게
데이터 전송.
 상대방은 받은 데이터로, 화면 전환.
 Turn이 바뀌면서 차례대로 역할이 바뀜
 끝나면 점수계산.
프로젝트 내용 (구현)-계속
 Qt
프로젝트 내용 (구현)-계속
 blueZ library
 실행 전에 쉘에서 hciconfig hci0 up 으로 활성화시킨다.
 막상 코딩 할 때는 BSD 소켓과 비슷하기 때문에 생각보
다 익숙하다.
 blueZ 자체는 libbluetooth.so 같은 라이브러리와,
hciconfig 같은 유틸리티로 나뉘어져 있음.
시연
보완할 점
 Stand-alone 기능을 구현까지도 했으면 어땠을까 하는
생각
 언제나처럼 이번에도 막판에 몰려서 급박하게 마무리
한 것에 대한 아쉬움
 Qt 와 blueZ 포팅에 시간이 너무 소요되어 정작 구현에
는 시간을 별로 투자하지 못하여 구동이 되게 완성하
지 못한 것에 대한 아쉬움
질문과 답변의 시간
끝