华为实验-板载程序测试过程

板载程序测试

在上个实验中,我们仅仅使用了板载的串口和 NB 模组,验证了 NB 模组的双向通信能力,上传的数据是我 们构造的,下发的命令我们也仅仅是收到了而已,并没有进行处理。要想进行自动数据上传,同时响应下发 指令,就需要我们编程,由 MCU 来处理。这个内容由下面的实验来完成。

本实验中,我们需要用到 MCU 和光照拓展板。我们会将程序烧写进 MCU 中,并由 MCU 去读取光照传感 器的数值,然后上传到 OceanConnect 平台。同时,MCU 也会响应 OceanConnect 下发的控制指令,去实际控制小灯的开和关。

连接好开发板的接线图后:

进入代码 targets\STM32L431_EVB_M1\MDK-ARM 目录,打开 IoT-Demo.uvprojx 工程文件。打开项目后, 在 Keil 项目列表中找到 Application/User 下的 main.c,约 52 行,修改参数如下:

1. #define OCEAN_IP "49.4.85.232" // OceanConnect IP 地址

2. #define SECURITY_PORT "5684" // 加密端口

3. #define NON_SECURITY_PORT "5683" // 非加密端口

同一处的其他几个宏可以不管,程序中未使用。然后修改约 119 行:

1. #if AT_DTLS

2. los_nb_init((const int8_t)"139.159.140.34",(const int8_t)"5684",&sec);

3. #else

4. los_nb_init((const int8_t)OCEAN_IP,(const int8_t)NON_SECURITY_PORT, NULL); // 修改此 行,使用前面设置的 IP 地址和端口

5. #endif

修改完毕以后,点击 进行编译。编译无误则准备烧写。烧写完成后,重启板子。

打开 QCOM,波特率修改为 115200,此时它将输出 MCU 的打印(因为连线改变,所以串口就不会再输出 上节实验的 NB 模组信息了)。

此时,一方面可以从板载 LED 屏看到实时采集的关照强度,另一方面,可以在开发中心设备管理中,看到 该设备的历史数据:

image.png

该实验中,程序每隔一秒就会向 OceanConnect 发送一次数据,所以 NB 模组其实并不会处于 PSM 模 式。因此,在开发中心点击“调试产品”,向设备发送 ON 指令,则光照拓展板的小灯就会立即点亮,从而 完成路灯的远程控制。

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 智慧路灯 打开华为云的IOT平台增强版的开发中心,如图: 创建项目和设备,如图: 创建一个新的自定义产品,如图: ...
    bainingmeng阅读 1,755评论 0 1
  • 智慧路灯实验(下)在上一篇《智慧路灯实验(上)》基础之上完成这篇智慧路灯(下)。 1.开发板硬件接线 这部分内容是...
    sapjat阅读 423评论 0 0
  • 在CentOS7中安装配置单机nifi的方法 首先需要安装Java jdk,因为nifi是Java语言编写的,在配...
    dlj_li阅读 504评论 2 0
  • 脑干的基本功能就是输入和输出,输入是问题,输出是结果。 比如,当大脑输入一条“为什么我成功不了?”,大脑就会输出“...
    林柳富阅读 1,187评论 0 0
  • 未来教育是在“互联网+”背景下的学校结构性变革,通过学习地点、学习环境,课程与技术的融合,形成个性化的学习支...
    克东076黄云娟阅读 323评论 0 1