我想检查我在 Arduino IDE 中的 SerialMonitor 和 BLE 控制器之间的通信是否正常。
AT
我向我的 SerialMonitor输入了命令,它应该返回OK
响应,但什么也没发生。
这是我使用的方案:
代码:
#include <SoftwareSerial.h>
SoftwareSerial bleSerial(2, 3); // RX, TX
void setup() {
//initialize serial port for logs
Serial.begin(9600);
while (!Serial) {
}
bleSerial.begin(9600);
}
void loop() {
if (bleSerial.available()) {
Serial.write(bleSerial.read());
}
if (Serial.available()) {
bleSerial.write(Serial.read());
}
}
更新:
更改了SoftwareSerial bleSerial(3, 2) 的值;// RX,TX仍然不起作用。
更新2:
我试过切换引脚和代码,没有任何效果。我至少应该在我的 Android 手机上的蓝牙设备中看到 HM-10 控制器,但我什么也看不到。
更新3:
我使用了这个 Stackoverflow 帖子中的代码,并且工作正常。我终于可以在我的 Android 手机上的蓝牙设备中看到控制器了。它在命令MLT-BT05
后返回了名称。AT+NAME?
看起来您必须读取每个字符的消息并在字符之间放置 10 毫秒的延迟,否则将无法从 BLE 控制器读取消息。那是唯一的问题。