news 2026/5/12 10:35:58

从零开始学LuatOS:深入理解系统消息列表机制!

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
从零开始学LuatOS:深入理解系统消息列表机制!

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/5/1 13:56:18

Ping功能和Traceroute功能到底有什么区别,能Ping通或者说能Traceroute通,业务就能通吗?在处理故障时,该如何决策,用哪个功能判断故障原因呢?

在ICT网络故障排查中,Ping和Traceroute是最基础且高频的命令行工具,但二者的设计目标、工作原理和适用场景截然不同。更关键的是:Ping通/Traceroute通 ≠ 业务通,网络连通性只是业务可用的必要非充分条件。 一、Ping与Traceroute的…

作者头像 李华
网站建设 2026/5/8 19:07:35

2026年AI大模型将爆发?一文读懂产业落地趋势,程序员必收藏

AI大模型技术正加速从技术概念转向产业现实,2026年或将成为规模化落地的拐点。在餐饮、零售、工业等领域,AI已实现从食品安全管理、智能客服到钢铁高炉智能控制的实际应用。企业对AI的认知正从"效率工具"转变为"核心引擎"&#xff0…

作者头像 李华
网站建设 2026/5/9 23:37:26

通信原理篇---多径效应

我们用“回声听不清说话”这个生活场景,来彻底讲懂多径效应。核心比喻:在山谷里喊话想象一下,你站在一个 有很多高大建筑物的山谷(或一个大厅) 里,对着远处的朋友喊一句话:“我们几点吃饭&#…

作者头像 李华
网站建设 2026/5/11 22:25:04

探索三相PWM整流器的双闭环控制实现

三相PWM整流器,采用双闭环控制,用C语言实现PI控制,SVPWM等模块。在电力电子领域,三相PWM整流器因其能够实现能量双向流动、单位功率因数运行等优点,应用愈发广泛。今天咱们就聊聊基于双闭环控制,并用C语言实…

作者头像 李华