“STM32 + LoRa”准备和配置参数

English

LoRa Node 151基于STM32L151CCU6芯片, Turtle Board基于STM32L432KC芯片, 我们公司正在逐步将IDE替换为STM32CubeIDE,这是STMicroelectronics官方刚刚为自己的MCU推出的开发工具。基于Eclipse,包括代码跟踪、代码编写、编译、下载、单步调试,并与CubdeMX集成。

摘要

无论使用何种LoRa管理平台,都需要DevEui、AppKey等参数。并确保它与服务器上的相关设置一致。

  • 以下参数对于OTAA模式至关重要:

    • DevEui – Mote device IEEE EUI (big endian), 8 bytes;

    • AppEui – Application IEEE EUI (big endian), 8 bytes;

    • AppKey – AES encryption/decryption cipher application key, 16 bytes;

  • 以下参数对于ABP模式至关重要:

    • NwkSKey – AES encryption/decryption cipher network session key, 16 bytes;

    • AppSKey – AES encryption/decryption cipher application session key, 16 bytes;

    • DevAddr – Device address on the network (big endian), uint32_t;

 

准备

 

配置步骤

LoRa节点的LoRaWAN例程代码是一个STM32CubeIDE项目,下面是基本的配置步骤。

正确下载并安装 STM32CubeIDE and STM32CubeProgramme

双击.project 文件,打开这个工程;

第一次运行时,可能会出现以下对话框,单击“是”,然后单击“确定”。

../../_images/0163.png

../../_images/0252.png

 

  • 修改宏定义:设置工作频段,工作模式,调试打印。

../../_images/0345.png

  • ACTIVE_CLASS

    CLASS_A

    CLASS_B–目前不支持

    CLASS_C

  • ACTIVE_REGION

    LORAMAC_REGION_AS923

    LORAMAC_REGION_AU915

    LORAMAC_REGION_CN470

    LORAMAC_REGION_CN779

    LORAMAC_REGION_EU433

    LORAMAC_REGION_EU868

    LORAMAC_REGION_KR920

    LORAMAC_REGION_IN865

    LORAMAC_REGION_US915

    LORAMAC_REGION_US915_HYBRID

    LORAMAC_REGION_AU915_SB2

    LORAMAC_REGION_AS923_AS1

    LORAMAC_REGION_AS923_AS2

  • REGION_EU868 设置为与ACTIVE_REGION对应的频段

  • USE_DEBUGGER

    如果定义 USE_DEBUGGER , 默认串口(PA9-TX, PA10-RX)将打印调试信息。

    如果删除 USE_DEBUGGER , 则不会打印调试信息。

  • main.c文件中将DEVICE_EUI, APPLICATION_KEY, APPLICATION_EUI 修改为你需要的值。

../../_images/0436.png

  • main.c文件中将userChannelMaskoverTheAirActivation和其他参数设置为你需要的值。

    ../../_images/0531.png

    • overTheAirActivation

true–OTAA

false–ABP

  • prepareTxFrame中填入你要发送的数据.

../../_images/0626.png

现在,把程序下载到你的开发板上,如果一切正常,它应该可以正常运行。