news 2026/4/2 23:40:05

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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
收到短信

额外返回参数

例子

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/21 2:38:28

MOSFET驱动电路设计从零实现:基于IR2110

从零搭建MOSFET驱动电路:IR2110实战全解析你有没有遇到过这样的情况——明明MCU输出了正确的PWM信号,但MOSFET却发热严重、效率低下,甚至莫名其妙烧毁?问题很可能出在驱动电路上。在功率电子系统中,MOSFET是核心开关器…

作者头像 李华
网站建设 2026/4/1 15:03:43

51单片机流水灯代码Keil工程创建新手教程

从零开始点亮第一盏灯:51单片机流水灯实战入门 你有没有过这样的经历?买了一块51单片机开发板,插上电脑,打开Keil,却不知道从哪里下手。新建工程点了几下就卡住,头文件不会加,代码写完编译报错一…

作者头像 李华
网站建设 2026/3/30 15:27:47

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

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

作者头像 李华
网站建设 2026/3/28 17:22:39

IAR软件编译选项设置深度剖析与优化建议

深入IAR编译器:从配置到实战的性能调优全解析在嵌入式开发的世界里,一个常被忽视却至关重要的环节是——编译器不是“翻译机”,而是系统性能的塑造者。许多工程师习惯性地把代码写完后点击“Build”,看到绿色对勾就认为万事大吉。…

作者头像 李华
网站建设 2026/4/2 1:23:33

冗余连接问题

本文参考代码随想录 树可以看成是一个连通且 无环 的 无向 图。 给定往一棵 n 个节点 (节点值 1~n) 的树中添加一条边后的图。添加的边的两个顶点包含在 1 到 n 中间,且这条附加的边不属于树中已存在的边。图的信息记录于长度为 n 的二维数组 edges &am…

作者头像 李华