我的arduino Uno
已连接到蓝牙模块(hm-10),它们通过uart从arduino
tx,rx
引脚连接。
发生了一些奇怪的事情:
arduino正在启动与模块的串行通信。
然后其他一些设备连接到模块(无线配对)
这里,与模块的Arduino连接以某种方式丢失了,为了从模块的UART获取数据到Arduino,我必须 RESET 这里的arduino,让它重新连接模块(我猜)然后我才能将数据发送到模块,arduino会看到这些数据。
如果我没有重置arduino模块与远程设备配对后,arduino将无法从模块获取数据:
void setup()
{
pinMode(13, OUTPUT);
Serial.begin(9600);
while (!Serial)
{
;
}
}
String content = "";
char character;
void loop()
{
while(Serial.available())
{
character = Serial.read();
content.concat(character);
digitalWrite(13, HIGH);
}
if(content=="myName")
digitalWrite(13, HIGH);
else
digitalWrite(13,LOW);
}
答案 0 :(得分:0)
要尝试的几件事情:
您可以删除初始化循环失败吗?
while(!Serial)
{
;
}
如果不起作用,请尝试在Arduino串行初始化之前添加延迟。
Delay(1000);
Serial.begin(9600);
我有一个理论说你的硬件在上电时会导致一些垃圾数据,这阻止了Arduino的UART初始化。