[go: nahoru, domu]

Skip to content

baki90/Gun-Controller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 

Repository files navigation

Gun-Controller

  • Embedded System, MCU Atmega32u4

FPS 게임 연동 컨트롤러

  • 컨트롤러를 통한 PC 제어
  1. 가속도, 자이로 센서 상보 필터링을 통해 PC의 마우스 제어
  2. 조이스틱, 버튼을 이용하여 키보드 입력 제어

Block Diagram

Schematic

  • button을 RC회로로 구성하여 채터링 방지
  • MPU6050 PULL-UP

Circuit

Code

TWI

  • MPU 6050과 TWI로 통신하여 Raw Data를 받아오고, 이를 상보 필터로 정제한 후 마우스 움직임에 사용
  • SCL 100kHZ

상보 필터

image

  • 초기 filter-init으로 10번 읽어들인 후 평균값 기록. 이후 Axis 값을 삼각비 법칙을 통해 x와 z의 angle 값 취득.
  • 구분구적법을 통해 Gyro 각도값을 추출
  • 시간이 지남에 따라 Gyro의 drift가 발생하는데, 이를 방지하기 위해 Axis의 angle과 상보 필터링을 진행

ADC

  • Division 64 -> 16/64 = 250kHZ (110)
  • 5V의 입력 전압을 사용하여 10bit 값을 나타냄.

INTERRUPT

  1. Timer Interrupt
  • Timer 1을 사용하여 timer 값을 카운팅. 분주를 사용하지 않아 1/16MHZ25664 = 2.048ms마다 overflow가 발생. 따라서 counting하는 값에 2.048을 곱해 줌.
  1. Pin Change Interrupt
  • 같은 라인의 pin state의 변화에 따라서 interrupt가 발생.

About

Embedded System using Atmega32u4

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages