RT-Thread 入门学习笔记 - 熟悉邮箱rt_mailbox的使用

本文介绍了RT-Thread操作系统中的邮箱功能,包括邮箱的基本概念、相关API、测试实例及方法。邮箱用于传递32位值或指针,资源占用小,适合简单命令传输。文中通过结构体指针作为消息进行线程间通信的测试,强调接收时需判断返回值以确保正常。总结指出,邮箱与消息队列均可用于线程通信,但邮箱更为精简。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简介

  • 邮箱是用来传输邮件的,如果没人取件,会暂存下来。
  • RT-Thread的邮箱,传递的是一个4字节(32位)值,可以传值,可以传指针(32位MCU,指针为32位)。
  • 邮箱使用比消息队列更精简,简单的命令的传输,可以使用邮箱,资源占用可以更小。

2021-03-30_075724.png

 

相关API

  • 在rt-thread内核代码:rtthread.h中,可以找到邮箱的各个API
  • 邮箱API的实现,在:ipc.c,可以认为邮箱属于线程间通信的一种。
  • 邮箱:mailbox相关API如下
rt_mb_init \ rt_mb_detach :静态初始化 \ 脱离,成对使用。
rt_mb_create \ rt_mb_delete : 动态创建 \ 删除,成对使用。
一般邮箱初始化后,就不再删除,可以使用静态初始化的方式。
rt_mb_send : 发送邮件,可以工作在在线程、回调函数里
rt_mb_send_wait :有超时的发送,工作在线程
rt_mb_recv :等待接收邮件,注意是队列式的接收,工作在线程里,循环等待接收
rt_mb_control : 提供一个初始化RESET邮箱的命令,不常用。
  • 开来,邮箱的API,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhangsz_sh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值