关于arduino 使用蓝牙模块的小问题
近期测试蓝牙模块,遇到一个小问题,程序如下:char aa;
void setup()
{
Serial.begin(9600);
}
void loop()
{
while(Serial.available())
{
aa=Serial.read();
}
if(aa=='A')
{
Serial.println("Hello I amOK");
}
}
手机连通蓝牙模块,打开串口监视器,输入A。按说aa是全局变量,程序运行 ,aa被赋值 “A“ 后,程序重复运行 应该一直输出("Hello I amOK")。但实际上只输出四次,就停止了。请高手们指点一下,原因是什么?多谢!!
我看了一下程序,程序里面没有写,一收到'A',就循环输出OK这句话,只是说,一收到‘A’,就输出一次OK这句话诶!
你描述的具体的效果是:一收到'A',就循环输出了4句OK的话?还是说一收到‘A’,就输出一次OK?
查一下蓝牙部分的线路吧,我用UNO+PC直接连接的,程序没问题,A 一直输出,B 停了。 谢谢你的关注。问题是这样,LOOP以下的语句用该是循环执行的,当手机输入'A'后,全局变量aa被赋值为A。再次运行到LOOP循环执行,aa应该不会被清零,应该继续执行屏显语句。因此陷入困惑。
char aa;
void setup()
{
Serial.begin(9600);
}
void loop()
{
while(Serial.available())
{
aa=Serial.read();
if(aa=='A')
{
Serial.println("Hello I amOK");
}
}
}
页:
[1]