Arduino 飛鼠 空中鼠標 陀螺儀體感鼠標

 

空中飛鼠

還在擔心你的操做不行嗎?還在厭倦枯燥的操做麼?想不想像實戰同樣,手中握着槍與人對戰?
下面帶你實現你的夢想。
在這裏插入圖片描述git

硬件準備

說到加強遊戲體感,拿着實體槍去戰鬥,第一想到的就是任天堂的zapper了,可是他的價格與遊戲設定,Emm…
在這裏插入圖片描述
想要實現體感控制,做爲一名愛好者,固然是DIY,首先咱們須要陀螺儀來感應操控的動做 ,而後就須要一個驅動器來幫助咱們處理信號並傳給遊戲主機,在這裏我選擇的開發板是Arduino Pro Micro和陀螺儀ADXL345,固然從某寶上買回來得本身焊下引腳。
在這裏插入圖片描述app

線路圖

當硬件準備好了以後就是怎麼接線了
在這裏插入圖片描述ui

程序控制

下面就是程序控制了,先預裝好Arduino IDE,首先要引用兩個類spa

#include <mouseWheel.h> #include <mousePress.h> 
  • 1
  • 2

讀取ADXL345的XY值.net

y345 = -WireRead2( ADXAddressR, DATAX0,DATAX1); x345 = WireRead2( ADXAddressR, DATAY0,DATAY1); if(x345<0) x345*=1.5; if(y345>0) y345*=1.5; speedoX = constrain(pow(abs(x345),2)/100,0,12700); speedoY = constrain(pow(abs(y345),2)/100,0,12700); speedo(); 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

判斷上下左右code

if( x345 > value345X ){ x = -speedoxVal; }else if( x345 < -value345X ){ x = speedoxVal; }else x = 0; if( y345 > value345Y ){ y = -speedoyPos; }else if( y345 < -value345Y ){ y = speedoyPos; }else y = 0; 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

左鍵右鍵連擊blog

myMouseLeft.press_mouse(); myMouseRight.press_mouse(); wheel = mywheel.read_wheel(); if( millis() - clickTime > clickSpeedo ){ if(!digitalRead(CLICK)) Mouse.click(); clickTime = millis(); } 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

PWM控制鼠標速度token

if( (micros() - ctrlMouseTimeX >= PWMSTOPX*80)//「停」 && valuePWMX == true){ ctrlMouseTimeX = micros(); valuePWMX = !valuePWMX; xVal = x; }else if ( (micros() - ctrlMouseTimeX >= PWMGOX *80)//「走」 && valuePWMX == false ){ ctrlMouseTimeX = micros(); valuePWMX = !valuePWMX; xVal = 0; } if( (micros() - ctrlMouseTimeY >= PWMSTOPY*80) //「停」 && valuePWMY == true){ ctrlMouseTimeY = micros(); valuePWMY = !valuePWMY; yPos = y; }else if ( (micros() - ctrlMouseTimeY >= PWMGOY *80)//「走」 && valuePWMY == false ){ ctrlMouseTimeY = micros(); valuePWMY = !valuePWMY; yPos = 0; } 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

鼠標移動遊戲

Mouse.move( xVal ,yPos ,wheel ); 
  • 1

想要源碼的同窗點 這裏下源碼(賺點積分)圖片

參考資料:

植物大戰殭屍破解版: http://www.pvzbaike.com/archives/pvz_pojie/

相關文章
相關標籤/搜索