Git Product home page Git Product logo

verilog_termproject's Introduction

Verilog TermProject

논리회로이론 및 설계에서 배운 내용을 바탕으로 베릴로그와 엔트리 장비를 이용하여 텀 프로젝트를 진행합니다. 이 레포지터리는 프로젝트 파일 전체가 올라가는 것이 아닌 베릴로그 소스코드만 올라갑니다.

TIC TAC TOE

Entry 장비를 이용하여 TIC TAC TOE를 구현하고자 합나다. 기본적으로 2인 플레이로 진행합니다.

dox maxtrix를 이용하여 보드 구현하기

dox maxtrix는 14 * 10로 이루어져 있고 프로젝트에 필요한 보드 크기는 최소 11 * 11이기 때문에 좌우가 잘리게 됩니다. 이를 해소하고자 Key Pad의 * # 버튼을 통해 보드를 옮길 수 있게 합니다. 보드의 판 색은 ___과 같이 불이 들어오고, x은 ___과 같이 불이 들어오게 하고, o은 ___과 같이 불이 들어오게 합니다.

7 segment를 이용하여 순서 표현하기

보드게임의 경우에는 차례가 중요하기 때문에 7 segment에 차례가 보이게 합니다. 첫번째 플레이어의 상태에는 1P로 하고 두번째 플레이어의 상태에는 2P로 합니다.

Key Pad를 이용하여 착수 위치 결정

Key Pad 1~9자리를 착수 위치로 삼습니다.

LED를 이용하여 금수 표시

규칙에 어긋나는 위치에 착수를 하게 되면 LED를 통해 잘못된 신호임을 표현하게 됩니다.

승부

직선, 대각선 모양으로 3목이 맞추어지면 승부가 납니다. 더이상 수를 둘 수 없으면 무승부로 끝나게 됩니다.


이하는 시간이 남을 때 더 구현해 볼 수 있는 부분입니다.

vs AI

인공지능과 플레이 할 수 있습니다. dip switch를 이용하여 vs AI모드를 활성화하고, 먼저 할지 나중에 할지 고릅니다. 그러면 2인 플레이처럼 즐기면 됩니다.

타이머

시간을 한정시켜 좀더 빠르고 긴장감있는 게임을 진행시킬 수 있습니다. dip switch를 이용하여 타이머모드를 활성화하고, 제한시간을 세팅하면 7-segment에 남는 시간이 표시되게 됩니다. 시간이 흘러도 다 하지 못하면 시간패로 승부가 갈리게 됩니다.

참고 TIC TAC TOC의 설명 및 Pygame을 이용하여 구현한 TIC TAC TOE: https://github.com/yh08037/Abstract_strategy_game/tree/master/02%20tic%20tac%20toe

verilog_termproject's People

Contributors

greathoney avatar tkimt avatar yh08037 avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

tkimt yh08037

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.