<acronym id="xonnx"></acronym>
      <td id="xonnx"></td>
    1. <pre id="xonnx"></pre>

      1. 專注電子技術學習與研究
        當前位置:單片機教程網 >> Arduino >> 瀏覽文章

        Arduino和PS2游戲搖桿簡單測試

        作者:huqin   來源:本站原創   點擊數:  更新時間:2014年04月03日   【字體:


        前段時間俺從淘寶那里掏到了一個PS2搖桿模塊(就是游戲手柄里的搖桿),挺有意思的,以后可以控制一些小東東,嘿嘿。

        PS2搖桿 游戲搖桿模塊 2.54mm標準插針接口引出。

         

         


        十字搖桿為一個雙向的10K電阻器,隨著搖桿方向不同,抽頭的阻值隨著變化。本模塊只是使用5V供電,原始狀態下X,Y讀出電壓為2.5V左右,當隨箭頭方向按下,讀出電壓值隨著增加,最大到5V;箭頭相反方向按下,讀出電壓值減少,最小為0V。



        測試前我在arduino板上面的pin12口接了一個led燈,當按下搖桿的時候,led燈就亮起來達到按下的效果。

        int JoyStick_X = 0; //定義PS2搖桿的X軸,ANALOG IN的Pin0

        int JoyStick_Y = 1 //定義PS2搖桿的Y軸,ANALOG IN的Pin1

        int JoyStick_Z = 3; //定義PS2搖桿的Z軸,是按下時觸發LED燈亮起的條件,接在DIGITAL區域的Pin3

        int ledPin = 12; //定義LED等的接口,接在DIGITAL區域的Pin12

        int val; //定義數字變量val

        void setup()
        {
          pinMode(JoyStick_Z, INPUT); //定義PS2的Z軸為輸入,按下時觸發LED燈亮起的條件


          pinMode(ledPin,OUTPUT); //定義ledPin接口為輸出


          Serial.begin(115200);
        }
        void loop()
        {
              int x,y,z;
              x=analogRead(JoyStick_X);
              y=analogRead(JoyStick_Y);
              z=digitalRead(JoyStick_Z);
              Serial.print(x ,DEC);
              Serial.print(",");
              Serial.print(y ,DEC);
              Serial.print(",");
              Serial.println(z ,DEC);
              delay(100);
              val=digitalRead(JoyStick_Z);
              if(val==LOW)
              {
                digitalWrite(ledPin,HIGH);
              }
              else
              {
                digitalWrite(ledPin,LOW);
              }
        }

         

        //按下搖桿的時候LED燈就亮起,void loop一下的代碼都是測試x、y、z軸的值,當然,按下Z軸的時候值等于0

        關閉窗口

        相關文章

        欧美性色欧美精品视频,99热这里只有精品mp4,日韩高清亚洲日韩精品一区二区,2020国自产拍精品高潮