Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从蓝牙模块接收Arduino命令 首先,这是我的第一个ARDUIO项目,但我以前已经编写了C++基础代码。无论如何,我正在努力让Arduino在将数据保存到变量时确认。我知道它正在接收数据,但它没有附加到我的数据变量中。这是代码,如果我能得到我做错了什么的基本解释,我将不胜感激 #包括 软件串行BTserial(0,1); //说话人别针 无效设置(){ Serial.begin(9600); //安装销 } void循环(){ 字符串数据; bool-run=false; 数据=”; while(Serial.available()){ char inChar=(char)Serial.read(); Serial.print(inChar);//我知道它正在获取发送的数据,因为它在这里打印 如果(英寸=='\n'){ Serial.print(“接收到的命令:”); 如果(数据==“”) Serial.print(“数据为空”);//这也总是打印 串行打印(数据); Serial.print('\n'); run=true; 打破 }否则{ 数据+=英寸; } } 如果(运行){ //做事 } }_Arduino_Bluetooth - Fatal编程技术网

从蓝牙模块接收Arduino命令 首先,这是我的第一个ARDUIO项目,但我以前已经编写了C++基础代码。无论如何,我正在努力让Arduino在将数据保存到变量时确认。我知道它正在接收数据,但它没有附加到我的数据变量中。这是代码,如果我能得到我做错了什么的基本解释,我将不胜感激 #包括 软件串行BTserial(0,1); //说话人别针 无效设置(){ Serial.begin(9600); //安装销 } void循环(){ 字符串数据; bool-run=false; 数据=”; while(Serial.available()){ char inChar=(char)Serial.read(); Serial.print(inChar);//我知道它正在获取发送的数据,因为它在这里打印 如果(英寸=='\n'){ Serial.print(“接收到的命令:”); 如果(数据==“”) Serial.print(“数据为空”);//这也总是打印 串行打印(数据); Serial.print('\n'); run=true; 打破 }否则{ 数据+=英寸; } } 如果(运行){ //做事 } }

从蓝牙模块接收Arduino命令 首先,这是我的第一个ARDUIO项目,但我以前已经编写了C++基础代码。无论如何,我正在努力让Arduino在将数据保存到变量时确认。我知道它正在接收数据,但它没有附加到我的数据变量中。这是代码,如果我能得到我做错了什么的基本解释,我将不胜感激 #包括 软件串行BTserial(0,1); //说话人别针 无效设置(){ Serial.begin(9600); //安装销 } void循环(){ 字符串数据; bool-run=false; 数据=”; while(Serial.available()){ char inChar=(char)Serial.read(); Serial.print(inChar);//我知道它正在获取发送的数据,因为它在这里打印 如果(英寸=='\n'){ Serial.print(“接收到的命令:”); 如果(数据==“”) Serial.print(“数据为空”);//这也总是打印 串行打印(数据); Serial.print('\n'); run=true; 打破 }否则{ 数据+=英寸; } } 如果(运行){ //做事 } },arduino,bluetooth,Arduino,Bluetooth,我知道有很多网站我可以复制粘贴,但我想做我自己的,并了解我做错了什么。不过我确实读过 例如,如果我从手机发送命令,输出将是 command Received Command: Data is NULL 以下段在第一个循环中始终显示为空,除非在序列开始侦听时接收到除换行符以外的字符,因为程序从上到下执行,并且您尚未在此处为数据指定值 if(数据==“”){ Serial.print(“数据为空”);//这也总是打印 } 附:这个表达 字符串数据; 数据=”; 可以简化为 字符串数据=”;

我知道有很多网站我可以复制粘贴,但我想做我自己的,并了解我做错了什么。不过我确实读过

例如,如果我从手机发送
命令
,输出将是

command
Received Command: Data is NULL

以下段在第一个循环中始终显示为空,除非在序列开始侦听时接收到除换行符以外的字符,因为程序从上到下执行,并且您尚未在此处为数据指定值

if(数据==“”){
Serial.print(“数据为空”);//这也总是打印
}
附:这个表达

字符串数据;
数据=”;
可以简化为

字符串数据=”;
效率更高


一旦我得到一些示例数据,如果我能找出问题所在,我将尝试提供更多信息。

循环函数连续运行。在这段代码中,“数据”在每个循环中重新定义为空。。您要做的是将传入数据分配给变量?您是否有从inChar/serial read获取的数据样本?@mbema I为变量添加了一个示例post@omfaer感谢您提供的提示,我无法理解循环的工作频率。理论上,当我从Arduino发送数据时,它将查看字符是否为\n或是否为将使用else语句将其附加到数据。我尝试在else循环中放入print语句,并可以确认该部分代码确实运行了正确的次数。