我为arduino编写了一个简单的固件,用于将串行收到的任何传入数据复制到串行输出。像这样的东西: int serialData = 0;
void setup()
{
Serial.begin(9600);
}
void loop()
{
if (Serial.available() > 0)
{
serialData = Serial.read();
Serial.println(serialData);
}
}
现在我希望它使用microUSB-> OTG线+ USB-> microUSB线连接到在Android 4.3上运行的Nexus 7。我安装了一个串行监视器应用程序(https://play.google.com/store/apps/details?id=jp.ksksue.app.terminal&hl=en),并希望通过它编写串行数据。
一旦我将其连接到平板电脑,我最终得到了键盘通知。 Android将此连接识别为键盘。这会在检测到外部键盘时折叠Android键盘。但我可以选择粘贴输入框。这似乎有效。
是否可能
答案 0 :(得分:2)
编辑/usr/share/arduino/hardware/arduino/cores/arduino/USBDesc.h,并注明该行
#define HID_ENABLED
所以它改为:
/* #define HID_ENABLED */
这是编译到每个草图中以启用USB支持的代码的一部分,此更改将阻止将HID支持编译到将来的草图中。您需要是root用户或使用sudo才能将更改写入文件。 (在进行此更改后是否有必要重新启动Arduino IDE?不确定。)在Windows或OS X上,您需要确定Arduino的支持文件的安装位置并编辑类似文件。
关键字:Arduino连接时禁用Android软键盘
答案 1 :(得分:0)
我觉得你有莱昂纳多,对吧?
AFAIK您无法禁用KeyboardEmulation,但您可以尝试以下操作之一:
我认为你可以做的就是。
答案 2 :(得分:0)
此问题的解决方法是安装另一个键盘应用程序,如Go键盘或swype。这会导致在将arduinp连接到Android设备时发出通知,您可以从该设备关闭外部硬件并切换回屏幕键盘。不坚持但有效!