我寫了個藍牙手柄,其實是抄gamepad 例程
安卓手機上能用(目前用來控制拍照)
代碼//必須安裝gamepad 庫
#include <BleGamepad.h>
#include “TCA9555.h”
#include <SPI.h>
#include <Wire.h>
#include <TFT_eSPI.h> // Hardware-specific library
TFT_eSPI tft = TFT_eSPI(); // Invoke custom library
TCA9555 TCA(0x20);
BleGamepad bleGamepad;
void setup(void) {undefined
Serial.begin(115200);
Serial.println(“Starting BLE work!”);
bleGamepad.setAutoReport(false);
bleGamepad.setControllerType(CONTROLLER_TYPE_GAMEPAD); //CONTROLLER_TYPE_JOYSTICK, CONTROLLER_TYPE_GAMEPAD (DEFAULT), CONTROLLER_TYPE_MULTI_AXIS
bleGamepad.begin(); //Simulation controls are disabled by default
tft.init();
tft.fillScreen(TFT_BLACK);
Wire.begin();
TCA.begin();
}
void loop() {undefined
tft.fillScreen(TFT_BLACK);
for (int pin = 0; pin < 16; pin++)
{undefined
int val = TCA.digitalRead(pin);
tft.setCursor(0, pin20, 4);
tft.setTextColor(TFT_BLUE, TFT_BLACK);
tft.println(pin);
tft.setCursor(100, pin20, 4);
tft.println(val);
if (val == 0){undefined
bleGamepad.press(pin);
bleGamepad.sendReport();
delay(100);
bleGamepad.release(pin);
bleGamepad.sendReport();
delay(25);
}
}
}
//不要說我沒有任何注釋。其實很好理解的。按鍵反饋通過microbyte的屏幕顯示;然后按鍵序號直接送到bleGamepad(完) |