文档

示例一:STM32+EC200S模组

更新时间:

通信模组完成AT模组驱动框架的适配后,需进行测试。以STM32+EC200S的设备为例,本文介绍该类型的设备,通过C Link SDK接入物联网平台的测试步骤。

背景信息

  • 通信模组与AT模组驱动框架适配的详细说明,请参见概述
  • 本文示例设备的单片机为STM32,通信模组为EC200S。更多信息,请参见Quectel_EC200SSTM32官网

  • 获取设备认证信息的详细说明,请参见获取设备认证信息

操作步骤

  1. 获取C Link SDK。

    具体操作,请参见获取C Link SDK

    说明

    定制SDK时,设备OS选择FreeRTOS设备硬件形态选择通信模组

  2. 使用MDK-Arm,打开工程portfiles/aiot-port/project/stm32l476-at/MDK-ARM/L476.uvprojx

    MDK-Arm的使用说明,请参见MDK-Arm。您也可以根据环境需要,选择合适的开发工具。

  3. 适配硬件

    1. 打开portfiles/aiot-port/project/stm32l476-at/Core/hal_adapter.c,设置发送接口。

      示例代码如下:

          /*设置发送接口*/
          aiot_at_setopt(AIOT_ATOPT_UART_TX_FUNC, at_uart_send);
    2. 适配指定的模组,将device的值设置为ec200_at_cmd

      /*AT module*/
      extern at_device_t ec200_at_cmd;
      extern at_device_t ec200_at_cmd_ssl;
      extern at_device_t l610_at_cmd;
      extern at_device_t l610_at_cmd_ssl;
      extern at_device_t air724_at_cmd;
      extern at_device_t air724_at_cmd_ssl;
      at_device_t *device = &ec200_at_cmd;
  4. 可选:如果模组含SSL功能,例如device = ec200_at_cmd_ssl,您需要将C Link SDK原有的TLS功能关掉,避免重复加密导致异常。

    说明 本示例不支持CoAP协议连接和X.509证书的方式进行设备认证。
    1. 打开./core/sysdep/core_adapter.c
    2. #define CORE_ADAPTER_MBEDTLS_ENABLED前添加注释符号(//)。
  5. 编译工程文件,运行测试程序。
    不同开发工具的编译方法,请参见所使用的开发工具的说明文档。

运行结果

  • Demo运行后,您可以在设备端查看日志。

    • 模组初始化:

      >>> AT
      >>> AT
      <<<
      RDY
      >>> AT
      <<< AT
      OK
      >>> AT+QIACT=1
      <<<
      OK
      >>> AT+QIACT?
      <<<
      +QIACT: 1,1,1,"10.13.***.***"
      OK
    • 建立连接:

      [22.400][LK-0313] MQTT user calls aiot_mqtt_connect api, connect
      [22.433][LK-0317] LightSwitch&a18wP******
      [22.444][LK-0318] B4C45425D73E24B2935D73C1E98B6079A630FBE03F61E2A2031CEE7867D4D0D7
      >>> AT+QIOPEN=1,1,"TCP","a18wP******.iot-as-mqtt.cn-shanghai.aliyuncs.com",443,0,1
      <<<
      OK
      <<<
      +QIOPEN: 1,0
      >>> AT+QISEND=1,286
      <<<
      > >>> <<<
      SEND OK
      <<<
      +QIURC: "recv",1,4
       id 0, len 4, res 20
      [22.744][LK-0313] MQTT connect success in 341 ms
      AIOT_MQTTEVT_CONNECT
    • 数据上报:

      [27.766][LK-0309] pub: /sys/a18wP******/LightSwitch/thing/event/property/post
      [LK-030A] > 7B 22 69 64 22 3A 22 31  22 2C 22 76 65 72 73 69 | {"id":"1","versi
      [LK-030A] > 6F 6E 22 3A 22 31 2E 30  22 2C 22 70 61 72 61 6D | on":"1.0","param
      [LK-030A] > 73 22 3A 7B 22 4C 69 67  68 74 53 77 69 74 63 68 | s":{"LightSwitch
      [LK-030A] > 22 3A 30 7D 7D                                   | ":0}}
      >>> AT+QISEND=1,120
      <<<
      > >>> 0v<<<
      SEND OK
      <<<
      +QIURC: "recv",1,178
      0?id 0, len 178, res 22
    • 数据接收:

      [27.933][LK-0309] pub: /sys/a18wP******/LightSwitch/thing/event/property/post_reply
      [LK-030A] < 7B 22 63 6F 64 65 22 3A  32 30 30 2C 22 64 61 74 | {"code":200,"dat
      [LK-030A] < 61 22 3A 7B 7D 2C 22 69  64 22 3A 22 31 22 2C 22 | a":{},"id":"1","
      [LK-030A] < 6D 65 73 73 61 67 65 22  3A 22 73 75 63 63 65 73 | message":"succes
      [LK-030A] < 73 22 2C 22 6D 65 74 68  6F 64 22 3A 22 74 68 69 | s","method":"thi
      [LK-030A] < 6E 67 2E 65 76 65 6E 74  2E 70 72 6F 70 65 72 74 | ng.event.propert
      [LK-030A] < 79 2E 70 6F 73 74 22 2C  22 76 65 72 73 69 6F 6E | y.post","version
      [LK-030A] < 22 3A 22 31 2E 30 22 7D                          | ":"1.0"}
      pub, qos: 0, topic: /sys/a18wP******/LightSwitch/thing/event/property/post_reply
  • 您也可以在物联网平台查看日志,具体操作,请参见云端运行日志
  • 本页导读 (1)
文档反馈