接着上回说,由于树莓派丧心病狂的没有提供模拟输入口,所以我转为使用arduino作为输入设备,那么问题来了,我们怎么把mic的数据发送给树莓派呢?
当然直接通过wifi传是最好的,但是我们还要使用历史数据,不能传过去就没了。有没有比较科学的方法呢?
我使用在服务器上搭建一个物联网云平台,然后让arduino先上传数据,让树莓派随时取最新的数据。
先来讲arduino如何上传数据
我们的物联网云平台是使用RESTful机制搭建的,所以使用HTTP的传输协议进行数据交换。我们使用的是arduino DUE + Ethernet的扩展板。直接上源码:
#include <SPI.h>
#include <Ethernet.h>
// Local Network Settings
byte mac[] = { 0xD4, 0x28, 0xB2, 0xFF, 0xA0, 0xA1 }; // Must be unique on local network
char thingSpeakAddress[] = "192.168.10.88";
String writeAPIKey = "5PTJZFXQ6SWD32PR";
const int updateThingSpeakInterval = 5 * 1000; // Time interval in milliseconds to update ThingSpeak (number of seconds * 1000 = interval)
// Variable Setup
long lastConnectionTime = 0;
boolean lastConnected = false;
int failedCounter = 0; // va