【平头哥RVB2601创意应用开发】设备数据上传阿里云
<p>其实使用ch2601_webplayer_demo例程,</p><p>只要设置好WiFi,就已经有数据上传了,</p>
<p>我上篇写的用这个例程连接阿里云之后,</p>
<p>开发板就一直放着了,</p>
<p>等到看云端数据的时候发现,一直有数据在上传。</p>
<p>数据一直解析是0,</p>
<p>现在要做的操作是上传实际的数据到云平台,并正确解析。</p>
<p></p>
<p>看了下例程也没找到上传的方式,因此,参照AT指令集自己写上传数据的代码。</p>
<p>也有参照网上其他代码,</p>
<pre>
<code class="language-cpp">static void up_test_task(void *arg)
{
char up_buf = "{\"LightSwitch\":1}";
char *dev_id = "0";
int pkt_id = 0;
while(1)
{
aos_msleep(1000);
w800_living_idmpp(dev_id, up_buf, &pkt_id);
}
}</code></pre>
<p>主函数新建一个任务,任务为没一秒上传一次数据</p>
<p></p>
<p>要知道云平台定义的变量名,主要是跟这个通信,上传数据。</p>
<p>按照上面的代码上传数据,一直出错,无法上传</p>
<p>看了很久才发现,要上传的msg内容就是他AT指令集上写的</p>
<p></p>
<p>格式不能出错,反斜杠不是表示的一种格式,而是用作转义字符操作的。</p>
<pre>
<code class="language-cpp">static void up_test_task(void *arg)
{
char up_buf = "{\\\"LightSwitch\\\":1}";
const char *dev_id = "0";
int pkt_id = 0;
while(1)
{
aos_msleep(1000);
w800_living_idmpp(dev_id, up_buf, &pkt_id);
}
}</code></pre>
<p>任务代码改成这样,最终成功上传数据。</p>
<p></p>
<p></p>
<p>数据上传云平台的流程也走通,接下来就是业务层面的交互了。</p>
<p> </p>
<p> </p>
<p> </p>
加油哦,期待精彩作品!
页:
[1]