Arduino将数据传输至HC-05
我的工作项目涉及Arduino、蓝牙和Android。我的Arduino硬件将从传感器收集数据,并通过蓝牙将其发送到Android平板电脑。当我用BlueChat测试Android上的应用程序时,它似乎运行良好;它成功地从BlueChat接收数据。以下是我的Arduino硬件代码。我确信我正确启动了HC-05。如果我的想法是收集模拟引脚0处温度传感器的读数,然后将其传输到数字引脚11,这是Arduino上连接到Hc-05的Rx引脚的Tx引脚,有人能看看我的代码并建议它是否有效吗Arduino将数据传输至HC-05,arduino,android-bluetooth,Arduino,Android Bluetooth,我的工作项目涉及Arduino、蓝牙和Android。我的Arduino硬件将从传感器收集数据,并通过蓝牙将其发送到Android平板电脑。当我用BlueChat测试Android上的应用程序时,它似乎运行良好;它成功地从BlueChat接收数据。以下是我的Arduino硬件代码。我确信我正确启动了HC-05。如果我的想法是收集模拟引脚0处温度传感器的读数,然后将其传输到数字引脚11,这是Arduino上连接到Hc-05的Rx引脚的Tx引脚,有人能看看我的代码并建议它是否有效吗 #include
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11);
int tempPin=0;
void setup()
{
Serial.begin(9600);
mySerial.begin(9600);
}
void loop()
{
float reading = analogRead(tempPin); // reading on tempPin
float voltage = reading*5.0/1024.0; // the resolution of a pin is 10 bit,
float tempC = voltage/0.01; // 10mV = 1 Celcius
mySerial.write(tempC);
delay(3000);
}
#包括
软件序列mySerial(10,11);
int-tempPin=0;
无效设置()
{
Serial.begin(9600);
mySerial.begin(9600);
}
void循环()
{
浮点读取=模拟读取(tempPin);//在tempPin上读取
浮动电压=读数*5.0/1024.0;//引脚的分辨率为10位,
浮子温度c=电压/0.01;//10mV=1 Celcius
mySerial.write(tempC);
延迟(3000);
}
我应该提到的是,我的Arduino Uno由一个9V电池外部供电。我认为
SoftwareSerial
没有写入(浮动)
方法。我建议你报告原始数据,让你的应用程序进行转换。不要忘记分隔符,这样您就可以知道一个数字何时结束,下一个数字何时开始:
void loop()
{
int reading = analogRead(tempPin); // reading on tempPin
mySerial.println( tempC, DEC );
delay(3000);
}
在这种情况下要尝试的步骤:
-通过HC-05发送任何信息(hello world)->这将排除连接问题(最好将HC-05置于“真实”串行,将调试消息置于“软”串行)
- 通过串行监视器测试代码的模拟读取部分:您可以查看是否得到合理的数据
- 通过HC-05测试传感器读数和发送的组合