步驟1:收集硬件
這是使用DualShock 4控制器控制Arduino所需的全部硬件:
1。 Arduino Uno-微控制器板,允許用戶運行自己的自定義固件。
2。 USB 2.0 Host Shield-這是必須的。 USB Host Shield位于此處,位于Ardiono Uno的頂部,并支持許多USB設備。
3。 USB藍牙加密狗-有與USB Host Shield兼容的藍牙加密狗列表,其中許多非常小巧且便宜。我在這里有我的亞馬遜。
4。 DualShock 4控制器-該控制器通過與Sony的PlayStation 4視頻游戲機的藍牙連接來工作。借助USB Host Shield庫,我們可以完全訪問控制器的許多按鈕,操縱桿,觸發器,陀螺儀,加速度計和LED。控制器使用Micro USB電纜充電,因此也可以通過有線方式將控制器與開發板一起使用,但是我們對無線功能感興趣。
5。具有USB端口的計算機-Arduino需要另一臺計算機為其編寫程序,并需要串行連接才能寫入Arduino板。通過芯片上的USB B端口將Arduino連接到計算機。此USB連接可提供與主板的電源和串行通信。為了簡單起見,對于任何與軟件相關的步驟,我將假定您使用的是Windows PC。在Mac和Linux中,只需很少的額外工作即可完成以下所有操作。如果遇到任何兼容性問題,請使用Google查找特定于操作系統的解決方案,我保證它們都存在。
步驟2:安裝Arduino軟件
如果尚未安裝,請在此處下載并安裝Arduino IDE 1.0.5。該軟件允許您為Arduino編寫程序并將其上傳到開發板上。鏈接USB Host 2.0庫也需要該軟件,該庫提供了與DualShock 4控制器進行通信的代碼。請記住下載適用于您特定操作系統的文件并將Arduino IDE安裝在您可以找到的位置。
Arduino IDE非常簡單,頂部有幾個按鈕可以打開,保存和創建項目文件。 “驗證”按鈕將從IDE中打開的項目中編譯C代碼,如果通過USB連接到計算機,則“上傳”會將代碼編譯并加載到Arduino上。您可以查看“文件”-》“示例”以找到一些示例代碼,以幫助您快速入門。
步驟3:安裝USB 2.0 Host Shield庫
下載通過單擊右側的最后一個按鈕“下載為.zip”按鈕,從GitHub中下載庫。獲得.zip文件后,將其移動到“ Arduino”安裝文件夾中的“ Libraries”文件夾,解壓縮文件,然后刪除“。”。從文件夾名稱。將文件夾保留在此處,然后打開您的Arduino IDE窗口(如果已打開)。要在Arduino IDE中鏈接庫,請轉到“草圖-》導入庫”并瀏覽文件窗口以找到該文件夾。完成后,“文件”-》“示例”-》“ USB_Host_20_Libs”將包含我們與USB Host Shield,藍牙軟件狗和DualShock 4控制器進行通信所需的所有代碼。請查看一些示例,尤其是“ Bluetooth”文件夾中的“ PS4BT”示例。
第4步:組裝硬件
將藍牙加密狗插入USB主機護罩的USB端口。將Arduino Uno上的USB屏蔽設置成正確的引腳,然后將它們輕輕推在一起。一旦我們在其上安裝了代碼,這臺小型計算機將與控制器通信。要將Arduino連接到計算機,請使用USB電纜。查找
步驟5:運行程序!
提供的示例代碼顯示了如何從控制器讀取輸入,我迅速模擬了一些可播放的代碼控制器上的LED。通過按D-pad上的向上按鈕,您可以在基于陀螺儀讀數和右指尖以及左扳機組合改變顏色之間進行切換。
在Aurduino IDE中打開led_demo.ino,然后點擊“驗證看到它可以編譯。確保您的Arduino Uno,USB防護罩和藍牙加密狗已組裝好,并通過USB將其連接到計算機。單擊“上傳”,然后等待代碼完成向Arduino的寫入。看到完成后,請轉到下一步打開串行終端。
步驟6:通過串行終端獲取調試信息
Arduino創建了一個串行通信連接來與主機進行通信。此連接主要用于將編譯后的代碼直接上傳到Arduino,但也可以用于顯示板上發生的輸出信息。
PuTTY是一種工具,可促進多種類型的終端通信,例如串行通訊,一個相當簡單的協議。從網站上下載PuTTY。安裝并運行PuTTY,在“連接類型”下選擇“串行”,然后選擇Arduino所在的正確COM端口。在Windows上,要找到您的Arduino在哪個COM端口上,請找到“設備管理器”(在“控制面板”下搜索),然后查看“ COM”下列出的設備,其中之一應該是您的Arduino!現在,在Arduino代碼中輸入相同的速度值(Serial.begin(115200);是開始串行連接的行,PuTTY中的默認波特率是9600)。
Arduino軟件打開有效的串行連接后,將無法將任何代碼上傳到板上,因此請確保在要更新代碼時退出串行終端。隨時將設置保存在PuTTY中,以便更輕松地快速打開串行連接。
一旦代碼加載到Arduino,打開與主板的串行連接。您應該看到頂部印有“ PS4 Bluetooth Library Started”行。如果不是,請嘗試按板上的“重置”按鈕,或將串行連接重新配置為正確的COM端口和波特率。
第7步:測試程序
只有在打開串行連接后,Arduino才會與藍牙軟件狗連接。如果您想讓Arduino在沒有連接的情況下運行,只需注釋掉初始化Serial對象和所有打印語句的代碼即可。串行連接打開后,藍牙加密狗進入搜索模式,在其中尋找要配對的控制器。按住控制器上的“共享”和“ PS”按鈕,使LED以一種模式快速閃爍,這意味著它正在尋找新的連接。如果LED閃爍,則說明它正在尋找控制臺,只需按住PS按鈕10秒鐘即可隨時關閉控制器。如果控制器連接成功,您會發現LED保持穩定。搖動控制器(小心!)以觀看陀螺儀改變LED的顏色,或在D-pad上按“向上”以使用右指桿和左觸發器在不同顏色之間循環。按“ X”可將RGB值打印到串行終端。
這只是您可以使用控制器執行的操作,現在由您來編寫自己的驚人代碼!
步驟8:結論
這就是將PS4 DualShock 4控制器連接到Arduino的方式!如果有讀者還在學習如何使用Arduino,我會嘗試介紹一些基礎知識,因此希望它不會因無關的信息而陷入困境。
-
控制器
+關注
關注
112文章
16402瀏覽量
178563 -
Arduino
+關注
關注
188文章
6472瀏覽量
187347
發布評論請先 登錄
相關推薦
評論