0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于ZM4xxSX-M系列LoRa射频模块的驱动代码移植关键步骤

AGk5_ZLG_zhiyua 来源:致远电子 作者:致远电子 2020-09-02 14:19 次阅读

致远电子LoRa模块其凭借着稳定的性能,深受广大用户的信任与好评。但在使用过程中其驱动代码的移植一直是一个重点和难点。本文将简单介绍一下致远官方驱动代码的移植关键步骤。

LoRa模块凭借其优异的射频性能和稳定性,被广泛应用于各类物联网应用中,本文将为大家介绍致远电子官方驱动代码的移植关键步骤,适用于ZM4xxSX-M系列LoRa射频模块。

为了加快用户LoRa产品的开发进度,致远电子已经实现了其底层驱动。用户移植驱动代码后,只需要专注于自己的产品功能开发即可。致远电子官方LoRa驱动代码链接如下,用户可免费下载

在介绍驱动代码的移植之前先简单说一下驱动的目录结构:

LoRa驱动代码目录结构

在该驱动例程中,前三个文件夹:startup、core、soc与具体用户的MCU相关,不用移植。Demo文件夹下面放的是致远电子提供的例程代码,用户可以选择性移植。User_code文件夹下存放用户的应用程序,可以不用移植。真正且必须移植的是radio和sx127x这两个文件夹下面的代码,这两个文件夹下包含的是驱动和配置代码。

在移植代码之前需要注意:

1、确认 MCU 与 ZM4xx 模块相连的引脚可配置为上下拉模式的,有客户在使用过程中出现复位或 SPI片选引脚输出高电平时电平只有 2.0V,从而导致模块复位异常或 SPI 通信不正常。原因是该 MCU 引脚无上下拉模式,需要靠外部接上拉电阻才能把电平拉高。

2、客户在移植驱动时,除非是编译问题,否则不能修改 sx127x.c 里面的内容,也不能把spi 函数写在 sx127x.c 里面,我们只需要用户从 sx127x_radio_lora_cfg.c 文件将 spi 函数传入即可。

  驱动代码的移植

驱动移植

  文件的修改

用户只需要修改sx127x_radio_lora_cfg.c文件内容即可。首先用户需要提供以下函数:

1、准备SPI驱动

ZM4xxSX-M系列的LoRa模组都是使用SPI接口通信,用户仅需要提供SPI读字节和写字节的函数即可。其用户MCU主机SPI特性如下;

SPI主机采用模式0,CPOL=0和CPHA=0;

全双工通信;

数据长度8位,MSB通信;

SPI速度需要小于10M。

用户SPI操作函数

注意:用户无需在SPI读写函数内部操作CS片选引脚,函数内部只需要单纯发送或接收一个字节的数据即可。

2、准备GPIO操作驱动

模块除了SPI的SCK、MISO、MOSI引脚之外,还有片选引脚和复位引脚,驱动中需要对这两个引脚进行操作,因此需要用户提供这两个引脚的GPIO操作函数:设置引脚电平函数(RESET和CS引脚初始化时需要设置为上拉输出高电平)。

GPIO操作驱动

3、提供延时函数

ZM4xxSX-M内部读写寄存器有一定的时序要求,所以需要用户提供延时函数。包括微秒延时和毫秒延时两个函数。注意必须是精准的延时,不能是软件循环延时,因为需要驱动有发送超时,如果延时不精准容易到时发送失败。

延时函数

准备好上述函数后,用户需要将这些函数注册到驱动里面。sx127x_radio_loar_cfg.c文件提供了一个模板,如图所示。用户只需要将上述说的三种函数对应替换成自己的函数即可,其他地方不必修改。

  移植完成后验证

当用户完成上述两个大步骤之后,用户需要在模块初始化之前自行完成SPI、GPIO和延时功能的初始化。然后参考致远官方例程中的main()函数中的内容,进行验证自己移植的程序是否可以正常工作。

如果无线模块初始化函数:radio_zm4xx_inst_init()返回值!=0,则说明初始化成功,SPI通信没问题。然后可以参考致远电子提供的无线收发demo程序:demo_zm4xx_entry(handle),如果模块能够正常通信说明该LoRa的驱动代码到此移植成功!

致远ZM470SX-M LoRa模组

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 射频模块
    +关注

    关注

    5

    文章

    80

    浏览量

    19365
  • GPIO
    +关注

    关注

    16

    文章

    1129

    浏览量

    50482
  • 致远电子
    +关注

    关注

    13

    文章

    397

    浏览量

    31053
  • LoRa
    +关注

    关注

    346

    文章

    1533

    浏览量

    230259

原文标题:还不会用LoRa模块?看这一篇就够了!

文章出处:【微信号:ZLG_zhiyuan,微信公众号:ZLG致远电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    主轴维修:关键步骤和要点有哪些?|深圳恒兴隆机电.

    深圳市恒兴隆机电有限公司小编给您们介绍的主轴维修:关键步骤和要点有哪些的内容,希望大家看后有所帮助!深圳市恒兴隆机电有限公司拥有一支多年从事电主轴设计、生产、销售及维修服务的专业人员。为了满足不同类型机床的加工需求,设计制造了恒功率、自动换刀、钻攻中心、玻璃高光、高光超精、磨削加工等
    发表于 03-25 09:45

    MES系统实施的几大关键步骤

    MES系统实施的几大关键步骤--万界星空科技MES/低代码MES/开源MES  在制造业中,MES管理系统成为了提升生产效率、优化资源配置和确保产品质量的关键工具。然而,由于MES管理系统的复杂性
    的头像 发表于 03-08 11:38 261次阅读

    邪恶PLC攻击技术的关键步骤

    今天我们来聊一聊PLC武器化探秘:邪恶PLC攻击技术的六个关键步骤详解。
    的头像 发表于 01-23 11:20 591次阅读
    邪恶PLC攻击技术的<b class='flag-5'>关键步骤</b>

    配网故障定位:提高供电稳定性的关键步骤

    在现代社会,电力供应的稳定和可靠对于各个行业和领域都至关重要。然而,随着电力系统的不断发展,配网故障问题也日益严重。为了提高供电稳定性,我们需要关注配网故障定位这个关键步骤。恒峰智慧科技将详细介绍如何通过行波型故障预警与定位系统来实现这一目标。
    的头像 发表于 12-26 10:51 207次阅读

    聊一聊制作高压陶瓷电容的5大关键步骤

    聊一聊制作高压陶瓷电容的5大关键步骤 制造高压陶瓷电容是一项复杂而精密的工艺过程,它涉及到多个关键步骤。下面将详细介绍制作高压陶瓷电容的五大关键步骤。 第一步:原材料准备 制作高压陶瓷电容的第一步
    的头像 发表于 12-21 10:41 546次阅读

    XD6500S— LoRa SIP模块

    XD6500S是一系列LORA SIP模块,集成了射频前端和LoRa射频收发器SX1262
    发表于 12-09 23:27

    LoRa128X-C1 lora模块规格书免费下载

    生产和测试,符合 RoHS、Reach 的标准。此系列模块基于美国Semtech原厂的SX1280/SX1281射频芯片而设计,它采用了LoRa的调制模式,很好地
    发表于 11-15 17:17 0次下载

    lora Pro系列数传模块及各版本数传模块选型比

    数传电台LoRa Pro模块是思为无线推出的一系列升级版mesh组网无线通讯数传模块。本系列模块
    的头像 发表于 11-14 17:28 249次阅读
    <b class='flag-5'>lora</b> Pro<b class='flag-5'>系列</b>数传<b class='flag-5'>模块</b>及各版本数传<b class='flag-5'>模块</b>选型比

    零损拆卸:掌握三菱变频器拆解的关键步骤

    零损拆卸:掌握三菱变频器拆解的关键步骤
    的头像 发表于 09-19 09:04 680次阅读

    什么是Lora模块Lora模块的作用是什么?

    什么是Lora模块Lora Module Lora模块是一种能够进行长距离低功耗通信的射频
    的头像 发表于 09-10 09:42 4844次阅读

    焊接贴片电阻的关键步骤

    贴片电阻是一种常见的电子元件,用于电路板的焊接。焊接贴片电阻需要注意一些关键步骤和技巧,以确保焊接质量和电路的稳定性。
    的头像 发表于 08-19 10:52 767次阅读

    lora模块的收发流程 lora模块怎么组网

    Lora模块是一种能够进行长距离低功耗通信的射频模块,采用Lora技术实现无线通信。该模块内部包
    发表于 06-13 17:47 1582次阅读

    lora自组网的实现 两个lora模块如何配对

     要使两个LoRa模块配对,需要执行以下步骤: 1. 确保两个LoRa模块的频段、速率和协议类型相同。 2. 设置每个
    发表于 06-13 17:44 3061次阅读

    lora芯片有哪些 lora模块怎么接入单片机

    要接入Lora模块到单片机,需要以下步骤: 确定你的单片机支持Lora模块的通讯协议,常见的有SPI和UART接口。
    的头像 发表于 06-12 17:32 3039次阅读

    lora模块是什么 lora模块怎么组网

    Lora模块是一种能够进行长距离低功耗通信的射频模块,采用Lora技术实现无线通信。该模块内部包
    发表于 06-12 17:30 3564次阅读