ATMEG2561 & TFT-LCD를 이용한 MOBILE DEVICE 구현 지도교수 : 장은영 참여학생 : 이승용
CONTENTS 개 요 2. 하드웨어 소프트웨어 4. Bug Report
1. 개 요 ATMEGA 2561 VS1033 MP3 CODEC TFT-LCD TOUCH SCREEN SD CARD 1
2. 하드웨어 - 부품 선정 및 개발 환경 ATMEGA2561 PH240302T-031-LY1Q AVR ISP MKII 2. 하드웨어 - 부품 선정 및 개발 환경 ATMEGA2561 PH240302T-031-LY1Q AVR ISP MKII TSC2003 VS1033 CHIP DEVICE 2
2. 하드웨어 - LOGIC 설계 3
2. 하드웨어 - PCB 설계 (1) MPU Board 4
2. 하드웨어 - PCB 설계 (2) MP3/SD Card Board (3) TFT28 Board 5
2. 하드웨어 - PCB 설계 (4) MainBoard 6
2. 하드웨어 - PCB 제작 (2) MP3/SD Card Board (1) MPU BOARD (3) TFT28 Board 7
2. 하드웨어 - PCB 제작 (4) MainBoard 8
2. 소프트웨어 - TOOL & FILE 구성 9
2. 소프트웨어 - UI 구성 10
3. 소프트웨어 - 주요 함수 흐름도 ◈ Game_Main () 블록도 while ( g_Progress ) loop 진 입 3. 소프트웨어 - 주요 함수 흐름도 ◈ Game_Main () 블록도 초기화(TFT-LCD 및 MPU) 변수 선언 및 초기화 초기 게임 화면 출력 while ( g_Progress ) loop 진 입 TIMER 4 SET (1Hz) 20000? +1 -1 11
3. 소프트웨어 - 주요 함수 흐름도 ◈ Game_Main () 블록도 12 YES Touch? 존재 게임보드 FULL? 3. 소프트웨어 - 주요 함수 흐름도 ◈ Game_Main () 블록도 비존재 NO ; Break 루프 처음으로 MPU_AI () YES 게임보드 FULL? 사용자 USER? 존재 이동/복사 가능한 바이러스 체크? Touch? 터치한 칸의 센터포인트 계산 및 배열 인덱스로 변환 FullVirus ( BLACK); Break; While (g_Progress) 12
3. 소프트웨어 - 주요 함수 흐름도 ◈ Game_Main () 블록도 13 처음 터치?두 번째 터치? 1 3. 소프트웨어 - 주요 함수 흐름도 ◈ Game_Main () 블록도 2 1 처음 터치?두 번째 터치? 터치된 곳의 바이러스 위치 저장 배열 인덱스, 센터 포인트 터치된 바이러스 포커스 표시 Loop 처음으로(다음 터치 기다림) While (g_Progress) 13
3. 소프트웨어 - 주요 함수 흐름도 ◈ Game_Main () 블록도 1 14 YES 처음 터치된 바이러스 지움 3. 소프트웨어 - 주요 함수 흐름도 ◈ Game_Main () 블록도 2 While (g_Progress) Beep 2 발생 Loop 처음으로 YES 빈 곳인지 검사 2 > =TOUCH(2) - TOUCH(1) ? 두번째 터치된 곳에 바이러스 출력 주변(한칸범위) 바이러스 감염 처음 터치된 바이러스 지움 포커스를 지움 1 14
3. 소프트웨어 - 주요 함수 흐름도 ◈ Game_Main () 블록도 15 NO YES 게임보드 Full? 3. 소프트웨어 - 주요 함수 흐름도 ◈ Game_Main () 블록도 YES NO 게임보드 Full? MPU에게 턴 넘김 While (g_Progress) Next Stage 게임 종료 15
4. Bug Report - Beep(x) 변경 후 변경 전(E와 B가 바뀜) 16
- SD Card<->MPU 통신 (X) 4. Bug Report - SD Card<->MPU 통신 (X) - 변경 후 : 정위치, 패턴 굵기 변경 - 변경 전 : CN3과 CN4 바뀜 17
4. Bug Report - 긴 한글파일명 깨짐현상 변경 전 : 데이터 메모리 영역 포화로 발생 변경 후 : 파일명 저장 버퍼 변수(512byte) ->470byte로 줄임 18