当前位置: 首页 > news >正文

LuatOS-SOC接口文档(air780E)--lora2 - lora2驱动模块(支持多挂)

常量

常量

类型

解释

lora2.SLEEP

number

SLEEP模式

lora2.STANDBY

number

STANDBY模式

lora2.init(ic, loraconfig,spiconfig)

lora初始化

参数

传入值类型

解释

string

lora 型号,当前支持:
llcc68
sx1268

table

lora配置参数,与具体设备有关

返回值

返回值类型

解释

userdata

若成功会返回lora对象,否则返回nil

例子

spi_lora = spi.deviceSetup(spi_id,pin_cs,0,0,8,10*1000*1000,spi.MSB,1,0)
lora_device = lora2.init("llcc68",{res = pin_reset,busy = pin_busy,dio1 = pin_dio1},spi_lora)

lora_device:set_channel(freq)

设置频道频率

参数

传入值类型

解释

number

频率

返回值

例子

lora_device:set_channel(433000000)

lora_device:set_txconfig(txconfig)

lora配置发送参数

参数

传入值类型

解释

table

lora发送配置参数,与具体设备有关

返回值

例子

lora_device:set_txconfig({mode=1,power=22,fdev=0,bandwidth=0,datarate=9,coderate=4,preambleLen=8,fixLen=false,crcOn=true,freqHopOn=0,hopPeriod=0,iqInverted=false,timeout=3000}
)

lora_device:set_rxconfig(set_rxconfig)

lora配置接收参数

参数

传入值类型

解释

table

lora接收配置参数,与具体设备有关

返回值

例子

lora_device:set_rxconfig({mode=1,bandwidth=0,datarate=9,coderate=4,bandwidthAfc=0,preambleLen=8,symbTimeout=0,fixLen=false,payloadLen=0,crcOn=true,freqHopOn=0,hopPeriod=0,iqInverted=false,rxContinuous=false}
)

lora_device:send(data)

发数据

参数

传入值类型

解释

string

写入的数据

返回值

例子

lora_device:send("PING")

lora_device:recv(timeout)

开启收数据

参数

传入值类型

解释

number

超时时间,默认1000 单位ms

返回值

例子

sys.subscribe("LORA_RX_DONE", function(data, size)log.info("LORA_RX_DONE: ", data, size)lora_device:send("PING")
end)
lora_device:recv(1000)

lora_device:mode(mode)

设置进入模式(休眠,正常等)

参数

传入值类型

解释

number

模式 正常模式:lora.STANDBY 休眠模式:lora.SLEEP 默认为正常模式

返回值

例子

lora_device:mode(lora.STANDBY)

lora_device:on(cb)

注册lora回调

参数

传入值类型

解释

function

cb lora回调,参数包括lora_device, event, data, size

返回值

返回值类型

解释

nil

无返回值

例子

lora_device:on(function(lora_device, event, data, size)log.info("lora", "event", event, lora_device, data, size)if event == "tx_done" thenlora_device:recv(1000)elseif event == "rx_done" thenlora_device:send("PING")elseif event == "tx_timeout" thenelseif event == "rx_timeout" thenlora_device:recv(1000)elseif event == "rx_error" thenend
end)
--[[
event可能出现的值有tx_done         -- 发送完成rx_done         -- 接收完成tx_timeout      -- 发送超时rx_timeout      -- 接收超时rx_error        -- 接收错误
]]
http://www.lryc.cn/news/207166.html

相关文章:

  • WKWebView iOS17设置UserAgent
  • 持续集成部署-k8s-服务发现-Service
  • RocksDB基本架构与原理详解
  • ArcGIS笔记12_ArcGIS搜索工具没法用?ArcGIS运行很慢很卡?
  • 【VictoriaMetrics】单机版配置
  • 【C语言】strcpy()函数
  • C++基础算法⑦——信奥一本通递归算法(放苹果、求最大公约数问题、2的幂次方表示、分数求和、因子分解、判断元素是否存在)
  • uni-app医院智能导诊系统源码
  • 启动jar时指定nacos配置
  • linux安装vscode vscode使用 创建项目并运行
  • 如何解决数据倾斜
  • 宏定义实现offsetof
  • YOLOv5— Fruit Detection
  • (PyTorch)PyTorch中的常见运算(*、@、Mul、Matmul)
  • cmd 命令关闭占用端口
  • PG14启动报错“max_stack_depth“ must not exceed 7680kB
  • BES2700 蓝牙协议之RFCOMM通道使用方法
  • 简单介绍一下迁移学习
  • PHP 同城服务共享茶室小程序系统是如何实现的?
  • JavaScript对象与原型
  • 论文解读:《DataPype:用于计算机辅助药物设计的全自动统一软件平台》
  • 2023年Flutter教程_Flutter+Getx仿小米商城项目实战视频教程-V3版
  • 【Spring Boot系列】- Spring Boot事务应用详解
  • 28. 使用 k8e 玩转 kube-vip with Cilium‘s Egress Gateway 特性
  • webrtc ios build signing
  • 【接口测试】Jmeter接口实战-Dubbo接口+造10W数据测试(详细)
  • RabbitMQ原理(四):MQ的可靠性
  • YOLOv5算法改进(20)— 如何去写YOLOv5相关的论文(包括论文阅读+规律总结+写作方法)
  • Kotlin基础——函数、变量、字符串模板、类
  • 联邦存款保险公司与银行失败和失败银行列表数据集