full_stack 发表于 2022-6-5 14:00

【平头哥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, &amp;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, &amp;pkt_id);
       
                }       
               
        }</code></pre>

<p>任务代码改成这样,最终成功上传数据。</p>

<p></p>

<p></p>

<p>数据上传云平台的流程也走通,接下来就是业务层面的交互了。</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

lugl4313820 发表于 2022-6-8 07:53

加油哦,期待精彩作品!
页: [1]
查看完整版本: 【平头哥RVB2601创意应用开发】设备数据上传阿里云