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 포팅에 시간이 너무 소요되어 정작 구현에
는 시간을 별로 투자하지 못하여 구동이 되게 완성하
지 못한 것에 대한 아쉬움
질문과 답변의 시간
끝