LuatOS系统消息处理机制深度解析!

在LuatOS嵌入式运行环境中,系统消息是实现模块间通信与事件响应的核心机制。其消息处理机制采用轻量级事件驱动模型,有效降低CPU占用并提升系统实时性。

此处列举了LuatOS框架中自带的系统消息列表。

一、sys

文档链接:https://docs.openluat.com/osapi/core/sys/

二、pm


文档链接:https://docs.openluat.com/osapi/core/pm/


1、DTIMER_WAKEUP

deep sleep timer定时时间到回调

额外返回参数

例子

2、YHM27XX_REG

YHM27XX芯片寄存器信息更新回调

额外返回参数

例子


三、lora

文档链接:https://docs.openluat.com/osapi/core/lora2/

1、LORA_TX_DONE

LORA 发送完成

额外返回参数

例子

2、LORA_RX_DONE

LORA 接收完成

额外返回参数

例子

3、LORA_TX_TIMEOUT

LORA 发送超时

额外返回参数

例子

4、LORA_RX_TIMEOUT

LORA 接收超时

额外返回参数

例子

5、LORA_RX_ERROR

LORA 接收错误

额外返回参数

例子


四、libgnss

文档链接:https://docs.openluat.com/osapi/core/libgnss/

1、GNSS_STATE

GNSS状态变化

额外返回参数

例子

五、mobile


文档链接:https://docs.openluat.com/osapi/core/mobile/

1、SIM_IND


sim卡状态变化

额外返回参数

例子

2、CELL_INFO_UPDATE

基站数据已更新

额外返回参数

例子

3、SCELL_INFO

服务小区额外信息更新

额外返回参数

例子

4、NTP_UPDATE

时间已经同步

额外返回参数

例子

5、CSCON

RRC状态

额外返回参数

例子

6、CC_IND

通话状态变化

额外返回参数

通话状态回调参数

status,通话状态,string类型,取值如下:

  • "READY":通话准备完成,可以拨打电话或者呼入电话了
  • "INCOMINGCALL":有电话呼入
  • "CONNECTED":电话已经接通
  • "DISCONNECTED":电话被对方挂断
  • "SPEECH_START":通话开始
  • "MAKE_CALL_OK":拨打电话请求成功
  • "MAKE_CALL_FAILED":拨打电话请求失败
  • "ANSWER_CALL_DONE":接听电话请求完成
  • "HANGUP_CALL_DONE":挂断电话请求完成
  • "PLAY":开始有音频输出

例子

六、socket

文档链接:https://docs.openluat.com/osapi/core/socket/

1、IP_READY

已联网

额外返回参数

例子

补充说明:

在如下几种情况下, 系统都会发布 IP_READY 消息:

(1)4G 的 PDP 成功激活,

(2)WiFi 连接宽带成功分配 IP,

(3)以太网连接宽带成功分配 IP,

(4)WiFi 设置静态 IP,连接成功了另一个 AP;

(5)以太网设置静态 IP,连接成功了网线。

如果没有插 SIM 卡的情况下,或者是 4G 的网络没有建立的情况下,

注意有如下两种情况:

(1) 以太网网线接好(假如接到了宽带路由器),系统会发布 IP_READY ;

(2) WiFi STA 连上了一个 AP, 系统会发布 IP_READY ;

通过消息的回调参数,来取得 IP 和 网卡的 ID,可以区分是哪种上网方式。

2、IP_LOSE

已断网

额外返回参数

例子

3、NTP_UPDATE

时间已经同步

额外返回参数

例子

4、NTP_ERROR

时间同步失败

额外返回参数

例子

七、sms

文档链接:https://docs.openluat.com/osapi/core/sms/


1、SMS_INC
收到短信

额外返回参数

例子

今天的内容就分享到这里了~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1156460.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

避坑指南:LuatOS-Air脚本移植至LuatOS常见问题!

在实际开发中,许多开发者在尝试将LuatOS-Air脚本运行于标准LuatOS环境时遭遇报错或功能异常。这些问题多源于对底层驱动抽象层理解不足以及对系统任务模型的误用。本文将梳理典型错误场景,并提供可落地的修复方案,助力实现平滑迁移。 一、lua…

eide环境下GD32固件下载失败问题全面讲解

eIDE烧录GD32失败?从底层机制到实战排错的全链路技术拆解你有没有遇到过这样的场景:代码编译通过,接线看似没问题,点击“Download”按钮后却弹出一串红字——“Target Not Responding”、“Connection Failed”或干脆卡在“Connec…

实验二 Python 控制结构与文件操作

实验二 Python 控制结构与文件操作一、实验基本原理运用 Anaconda 搭建的 Jupyter notebook 平台编写 Python 实例程序。二、实验目的1、理解 Python 的流程控制、文件操作的基本原理。2、通过实际案例编程,掌握 Python 的流程控制、文件的基本操作。三、具体要求1、…

核心要点:避免USB Serial驱动下载后被系统禁用

一次连接,永久可用:破解USB Serial驱动被系统禁用的底层真相 你有没有遇到过这样的场景? 刚插上开发板,驱动安装成功,PuTTY连上了,日志哗哗地刷出来——一切看起来都那么完美。可第二天重启电脑&#xff…

Opensearch数据迁移:CCR功能数据迁移完整操作指南(上)

#作者:stackofumbrella 文章目录使用CCR功能迁移数据功能概述约束限制在主集群中创建索引从集群中执行启用CCR复制功能在主集群中写入测试数据在从集群中查看同步状态查看从集群中的同步数据关闭CCR功能查看远程集群信息删除远程集群配置信息使用CCR功能迁移数据 功…

计算机毕业设计-课程设计-校园失物招领系统设计与实现-程序-文档-全套资料

摘要学校作为一个人流量非常大的场所,当我们的物品不小心遗失后,之后的找寻过程一定是非常困难的。而为了可以解决这中问题,就出现了校园失物招领网站,通过校园失物招领网站,可以减少我们因为失物而带来的不便和困扰。…

Modbus RTU数据读取异常?ModbusPoll下载抓包辅助诊断

Modbus RTU通信总出问题?别急,用ModbusPoll抓包一招定位你有没有遇到过这样的场景:某台电表明明通着电、接线也没松动,但PLC就是读不到数据;或者HMI上某个温度值频繁跳变、甚至直接报超时?如果这个系统走的…

基于STM32的QSPI通信实战案例详解

STM32上的QSPI实战:从零搭建高速外部存储系统你有没有遇到过这样的困境?项目做到一半,内部Flash快爆了,GUI资源、音频文件、新功能代码全挤在一起,改一行代码都得精打细算;OTA升级时看着进度条一动不动&…

Keil项目迁移时中文注释乱码的预防与处理策略

如何彻底解决 Keil 中文注释乱码问题?一个嵌入式老手的实战经验最近接手了一个遗留项目,从同事手里接过压缩包解压后打开 Keil 工程,第一眼就傻了——满屏“ž„‹Œ–£”、“???”……原本清晰的中文注释全变成了天书。这哪是代码…

深入 Yak 语言高级编程:异步并发与延迟执行实践

深入Yak语言高级编程:异步并发与延迟执行实践 前言 Yak语言作为一款面向网络安全领域的动态编程语言,凭借其轻量、高效的特性,在渗透测试、漏洞挖掘等场景中得到了广泛应用。对于安全从业者而言,编写高性能的自动化脚本往往需要依…

论坛网站信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】

💡实话实说:有自己的项目库存,不需要找别人拿货再加价,所以能给到超低价格。摘要 随着互联网技术的快速发展,论坛网站作为信息交流的重要平台,逐渐成为用户分享观点、获取知识的主要渠道。传统论坛系统在功…

钥匙和房间

本文参考代码随想录 有 N 个房间,开始时你位于 0 号房间。每个房间有不同的号码:0,1,2,…,N-1,并且房间里可能有一些钥匙能使你进入下一个房间。 在形式上,对于每个房间 i 都有一个…

IAR使用教程:优化嵌入式C代码的操作指南

如何用IAR榨干MCU性能?一位嵌入式老手的实战优化笔记最近在调试一个低功耗传感器项目时,客户突然提出“电池寿命必须延长30%”。我看了看当前固件:Flash用了快300KB,SRAM占用接近80%,主循环执行时间也偏长。硬件已经定…

大模型推理过程内存占用(动态)

阿里社区博客(重点在transformer的激活值参数量估计):https://developer.aliyun.com/article/1496103 推理时显存占用(GitHub): https://github.com/Hoper-J/I-Guide-and-Demos-zh_CN/blob/master/Guide/07.%20%E6%8E%A2%E7%A9%…

u8g2字体编码与字符映射关系通俗解释

u8g2字体编码与字符映射:从“乱码”到清晰显示的底层逻辑 你有没有遇到过这样的场景?在STM32或ESP32上驱动一块OLED屏,信心满满地调用 u8g2_DrawStr() 打印一句中文“温度25C”,结果屏幕上却只出现几个方框、问号,甚…

AD23新增元件库资源盘点:与AD20的生态扩展对比

AD23元件库生态跃迁:从“建库”到“治库”的工程革命你有没有经历过这样的场景?深夜赶板,原理图画到一半,发现缺一个关键电源芯片的封装——查遍本地库、论坛、第三方网站,最终找到一个名字像模像样但引脚顺序反了的Pc…

单词接龙问题

本文参考代码随想录 字典 wordList 中从单词 beginWord 和 endWord 的 转换序列 是一个按下述规格形成的序列: 序列中第一个单词是 beginWord 。 序列中最后一个单词是 endWord 。 每次转换只能改变一个字母。 转换过程中的中间单词必须是字典 wordList 中的单词。…

STM32最小系统板Keil5下载实操从零实现

从零搭建STM32最小系统板:Keil5下载实战全解析 你是否也经历过这样的时刻——电路焊好了,代码写完了,满怀期待地点击“Download”,结果 Keil 弹出一串红字:“No target connected”? 别急,这几…

信息化在线教学平台信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】

💡实话实说:用最专业的技术、最实惠的价格、最真诚的态度服务大家。无论最终合作与否,咱们都是朋友,能帮的地方我绝不含糊。买卖不成仁义在,这就是我的做人原则。摘要 随着信息技术的快速发展,教育行业正逐…

SpringBoot+Vue 在线宠物用品交易网站平台完整项目源码+SQL脚本+接口文档【Java Web毕设】

💡实话实说:用最专业的技术、最实惠的价格、最真诚的态度服务大家。无论最终合作与否,咱们都是朋友,能帮的地方我绝不含糊。买卖不成仁义在,这就是我的做人原则。摘要 随着互联网技术的快速发展,电子商务已…