검색어 입력폼

램프핑퐁머쉰 설계

저작시기 2006.06 |등록일 2009.01.09 한글파일한컴오피스 (hwp) | 16페이지 | 가격 2,000원

소개글

이번 실습의 목적은 키트에 있는 LED와 segment display와 몇 개의 스위치를 사용해서 Lamp pingpong machine를 구현한다. 이것을 통해서 pinmapping으로 여러 가지 핀을 입력하는 법을 복습하고 전에 했던 키트를 사용하는 전체적인 것을 배우게 되고 키트를 사용하는 법과 지난번에 배웠던 분주의 개념을 확실히 익힌다. 그리고 수행하면서 오류가 많이 발생하기 때문에 모델심에서 시뮬레이션을 통해서 오류를 잡는 법을 배운다. 그리고 시뮬레이션에서는 에러없어도 실제로 구현시에는 여러 가지 요소에 의해서 오류가 날수 있다. 이것을 제대로 잡기 위해서 어떻게 해야되는지 배운다.

목차

1. Introduction
2. Problem Statement
3. Implementation
4. Result
5. Conclusion & Evaluation
6. Source Code (with suitable comments)

본문내용

이번 실습 프로젝트에서는 핑퐁게임을 키트로 구현하는 것이다. 이 프로젝트는 과제들에 대해서 display부분과 클럭분주, 그리고 FSM을 사용 그리고 쉬프트를 이용해야한다. 이것은 일단 RF_main 모듈에 있는 8개의 LED를 이용한 ping_pong 게임을 구현한다. 사용해야 할 구성 요서는 일단 LED 8개와 RESET 버튼 그리고 START 버튼 , 그리고 서브권 시작과 받아치기가 가능한 오른쪽 왼쪽 PADDLE이 있어야 하고 점수 계산이 가능한 오른쪽 왼쪽 segment를 사용해야 한다. 이 프로젝트는 RESET을 이용해서 초기화가 가능하고 START 버튼을 누르면 LED 8개중에서 서브권이 있는 사람 쪽에 켜진다. 그리고 초기 조건으로 서브권의 경우 처음에는 왼쪽 사람에게 주어진다. 탁구 규칙과 마찬가지로 토탈 점수의 합이 5점이 되면 서브권이 반대편으로 넘어간다. 그리고 0.2초 단위로 LED 8개를 통해서 좌 또는 우로 일정하게 쉬프트 시켜주어야 한다. 그리고 2사람이 게임 할 수 있도록 2개의 PADDLE 스위치를 사용한다. 이것은 LED가 제일 왼쪽, 오른쪽에 왔을때 맞추어야 반대편으로 돌아간다. 타이밍이 안 맞으면 점수가 상대편에게 올라간다. 그리고 점수표현이 가능하게 2개의 segment를 사용하고 0~9점까지 표현 할 수 있도록 하고 그리고 10점 먼저 획득한 사람이 이기고 그리고 다시 처음부터 시작할 수 있게 왼쪽 오른쪽의 점수를 0으로 돌린다.
② Describe how do you solve the problem.
이번 문제를 해결하기 위해서는 처음에 디지털 시계 설계 부분을 확실히 익혀야 한다. 디지털 시계 설계 부분에서 세그먼트 display 부분과 그리고 세그먼트 이동 부분 한꺼번에 켜지는 것이 아니고 눈에 거의 안 보일정도록 세그먼트를 빠르게 이동시키는 코드와 세그먼트 에 숫자의 불이 들어오는법 분주에 대한 이해를 기반으로 해야한다. 이번 분주는 0.2초 분주로써 디지털 시계에서 사용했던 1초때 4Mhz에서 2백만번을 카운트 했지만 지금은 5를 나누어서 40만번 카운트 한다.

참고 자료

없음
다운로드 맨위로