LuatOS-SOC接口文档(air780E)--rtos - RTOS底层操作库
rtos.receive(timeout)
接受并处理底层消息队列.
参数
| 传入值类型 | 解释 |
|---|---|
| int | 超时时长,通常是-1,永久等待 |
返回值
| 返回值类型 | 解释 |
|---|---|
| msgid | 如果是定时器消息,会返回定时器消息id及附加信息, 其他消息由底层决定,不向lua层进行任何保证. |
例子
无
rtos.timer_start(id,timeout,_repeat)
启动一个定时器
参数
| 传入值类型 | 解释 |
|---|---|
| int | 定时器id |
| int | 超时时长,单位毫秒 |
| int | 重复次数,默认是0 |
返回值
| 返回值类型 | 解释 |
|---|---|
| id | 如果是定时器消息,会返回定时器消息id及附加信息, 其他消息由底层决定,不向lua层进行任何保证. |
例子
-- 用户代码请使用 sys.timerStart -- 启动一个3秒的循环定时器 rtos.timer_start(10000, 3000, -1)
rtos.timer_stop(id)
关闭并释放一个定时器
参数
| 传入值类型 | 解释 |
|---|---|
| int | 定时器id |
返回值
| 返回值类型 | 解释 |
|---|---|
| nil | 无返回值 |
例子
-- 用户代码请使用sys.timerStop rtos.timer_stop(id)
rtos.reboot()
设备重启
参数
无
返回值
| 返回值类型 | 解释 |
|---|---|
| nil | 无返回值 |
例子
无
rtos.buildDate()
获取固件编译日期
参数
无
返回值
| 返回值类型 | 解释 |
|---|---|
| string | 固件编译日期 |
例子
-- 获取编译日期 local d = rtos.buildDate()
rtos.bsp()
获取硬件bsp型号
参数
无
返回值
| 返回值类型 | 解释 |
|---|---|
| string | 硬件bsp型号 |
例子
-- 获取硬件bsp型号 local bsp = rtos.bsp()
rtos.version()
获取固件版本号
参数
无
返回值
| 返回值类型 | 解释 |
|---|---|
| string | 固件版本号,例如”V0001” |
例子
-- 读取版本号 local luatos_version = rtos.version()
rtos.standy(timeout)
进入待机模式, 仅部分设备可用, 本API已废弃, 推荐使用pm库
参数
| 传入值类型 | 解释 |
|---|---|
| int | 休眠时长,单位毫秒 |
返回值
| 返回值类型 | 解释 |
|---|---|
| nil | 无返回值 |
例子
-- 进入待机模式 rtos.standby(5000)
rtos.meminfo(type)
获取内存信息
参数
| 传入值类型 | 解释 |
|---|---|
| type | “sys”系统内存, “lua”虚拟机内存, 默认为lua虚拟机内存 |
返回值
| 返回值类型 | 解释 |
|---|---|
| int | 总内存大小,单位字节 |
| int | 当前已使用的内存大小,单位字节 |
| int | 历史最高已使用的内存大小,单位字节 |
例子
-- 打印内存占用
log.info("mem.lua", rtos.meminfo())
log.info("mem.sys", rtos.meminfo("sys"))
rtos.firmware()
返回底层描述信息,格式为 LuatOS_$VERSION_$BSP,可用于OTA升级判断底层信息
参数
无
返回值
| 返回值类型 | 解释 |
|---|---|
| string | 底层描述信息 |
例子
-- 打印底层描述信息
log.info("firmware", rtos.firmware())
rtos.setPaths(pathA, pathB, pathC, pathD)
设置自定义lua脚本搜索路径,优先级高于内置路径
参数
| 传入值类型 | 解释 |
|---|---|
| string | 路径A, 例如 “/sdcard/%s.luac”,若不传值,将默认为””,另外,最大长度不能超过23字节 |
| string | 路径B, 例如 “/sdcard/%s.lua” |
| string | 路径C, 例如 “/lfs2/%s.luac” |
| string | 路径D, 例如 “/lfs2/%s.lua” |
返回值
无
例子
-- 挂载sd卡或者spiflash后
rtos.setPaths("/sdcard/user/%s.luac", "/sdcard/user/%s.lua")
require("sd_user_main") -- 将搜索并加载 /sdcard/user/sd_user_main.luac 和 /sdcard/user/sd_user_main.lua
rtos.nop()
空函数,什么都不做
参数
无
返回值
| 返回值类型 | 解释 |
|---|---|
| nil | 无返回值 |
例子
-- 这个函数单纯就是 lua -> c -> lua 走一遍 -- 没有参数,没有返回值,没有逻辑处理 -- 在绝大多数情况下,不会遇到这个函数的调用 -- 它通常只会出现在性能测试的代码里, 因为它什么都不干. rtos.nop()
rtos.autoCollectMem(period, warning_level, force_level)#
内存自动收集配置,是lua本身收集机制的一种补充,不是必要的,而且只在luavm空闲时触发
参数
无
返回值
无
例子
无
相关文章:
LuatOS-SOC接口文档(air780E)--rtos - RTOS底层操作库
rtos.receive(timeout) 接受并处理底层消息队列. 参数 传入值类型 解释 int 超时时长,通常是-1,永久等待 返回值 返回值类型 解释 msgid 如果是定时器消息,会返回定时器消息id及附加信息, 其他消息由底层决定,不向lua层进行任何保证. 例子 无 rtos.timer_start(id…...
一名技术Leader应该是创作者
今天看了一本书叫做《黑客与画家》。它里面提到一个很重要的概念就是黑客(优秀的程序员)是一名建筑师,而不是一名工程师。 传统的主管和互联网的Leader 这两者有什么区别呢?关键点在于建筑师是思考做什么,而工程师是…...
Java多线程总结
一、概念: 1、什么是多任务 多任务就是在同一时间做多件事情,如边吃饭边玩手机等。看起来是多个任务都在做,本质上我们的大脑在同一时间依旧只做了一件件事情 2、什么是程序 程序是指令和数据的有序集合,其本身没有…...
docker devicemapper: Error running DeleteDevice dm_task_run failed
docker 删除容器,遇到: devicemapper: Error running DeleteDevice dm_task_run failed 异常 [hadoophadoop02 ~]$ sudo docker rm 5ede1280f0bf Error response from daemon: container 5ede1280f0bf791e91d40038b15decd42e8923546ae578abd96e08114c76…...
第二十章总结
一.线程简介 二.创建线程 1.继承Thread类 Thread类中常用的两个构造方法如下: public Thread():创建一个新的线程对象。 public Thread(String threadName):创建一个名称为threadName的线程对象。 继承Thread类创建一个新的线程的语法如下: public …...
Linux环境安装Java,Tomcat,Mysql,
1、Java的安装 载 jdk1.8 注:此处 CentOS7 是64位,所以下载的是:Linux x64, 文件类型为 tar.gz 的文件 JDK 官网地址:https://www.oracle.com/java/ cd /usr/local/ mkdir jdk cd jdk/tar -xvf jdk-8u202-linux-x64.…...
前后端分离开发出现的跨域问题
先说说什么是跨域。 请求的URL地址中的协议、域名、端口号中的任意一个与当前URL不同就是跨域。 比如: 当前页面的URL请求的URL是否跨域原因htttp://localhost:8080htttps://localhost:8080是协议不同htttp://localhostll:8080htttp://localhost:8080是域名不同htt…...
水淼采集器-免费水淼采集器下载
在当今数字时代,随着信息的迅猛增长,许多网站管理员面临一个共同而具有挑战性的问题——如何在短时间内获取大量优质内容,以满足用户对信息的不断需求?水淼采集器,作为一个备受瞩目的解决方案,正成为许多人…...
[DASCTF 2023 0X401七月暑期挑战赛] web刷题记录
文章目录 EzFlask方法一 python原型链污染方法二 flask框架静态文件方法三 pin码计算 MyPicDisk方法一 字符串拼接执行命令方法二 phar反序列化 ez_cms EzFlask 考点:python原型链污染、flask框架理解、pin码计算 源码如下 import uuidfrom flask import Flask, re…...
Python超级详细的变量命名规则
Python 需要使用标识符给变量命名,其实标识符就是用于给程序中变量、类、方法命名的符号(简单来说,标识符就是合法的名字)。 Python 语言的标识符必须以字母、下画线(_)开头,后面可以跟任意数目…...
Zabbix 6 详细安装部署教程
目录 一、安装 MySQL 数据库 二、安装 zabbix 监控平台 三、编辑配置文件 四、启动服务 五、zabbix-web 安装 zabbix web 出图展示乱码问题解决方案 zabbix 的安装部署非常简单,官方提供了四种安装途径,分别是二进制 rpm 包安装方式、源码安装方…...
如何设置带有密码的excel只读模式?
Excel只读模式大家都不陌生,那大家知道带有密码的只读模式吗?今天给大家分享如何设置带有密码的只读模式。 打开excel文件,将文件进行【另存为】设置,然后停留在保存路径的界面中,我们点击下面的工具 – 常规选项 在常…...
企业人力资源公司抖音直播招聘断播怎么处理?
企业人力资源公司抖音直播招聘断播怎么处理? 最直接的处理方式就是进行抖音直播招聘报白,报白后在直播和视频中发布招聘和企业信息,不用担心被封禁和限制流量。 可以通过抖音直播进行招聘,也可以在视频中添加小程序,…...
数据治理与数据入表、数据交易有什么关系?
数据作为关键生产要素,其乘数效应的发挥离不开数据要素保有量的丰富程度、数据要素市场的发展成熟度以及数据要素应用路径的清晰度。财政部2023年8月21日发布了《企业数据资源相关会计处理暂行规定》,标志着企业数据资源入表迈出了0到1的关键一步。 与此…...
GitHub 2023排名前十的最佳开源项目
开源软件(OSS)彻底改变了当今软件开发的方式。在数百万个开源GitHub项目中,要找到最适合需求的开源项目可能会让人不知所措。 今天给大家列出2023年增长最快的前10个开源GitHub仓库。通过这些增长最快的开源项目,也可以从整体上了…...
抖音视频如何无水印下载,怎么批量保存主页所有视频没水印?
现在最火的短视频平台莫过于抖音,当我们刷到一个视频想下载下来怎么办?我们知道可以通过保存到相册的方式下载,但用这种方法下载的视频带有水印,而且有些视频不能保存到相册(这是视频作者设置了禁止下载)。…...
淘宝详情API接口:一键获取商品信息的实践探索
一、引言 淘宝作为中国最大的电商平台,拥有庞大的商品信息库。为了更好地利用这些数据,开发者可以通过淘宝提供的API接口来获取商品详情。本文将深入探讨如何使用淘宝详情API接口一键获取商品信息,通过实践操作和代码示例,带领读…...
在线陪诊系统: 医学科技的革新之路
医疗服务的数字化时代已经到来,而在线陪诊系统正是医学科技革新的杰出代表。通过巧妙的技术代码,这一系统不仅实现了患者和医生之间的远程互动,还将医疗服务推向了一个更加智能化的未来。在这篇文章中,我们将深入探讨在线陪诊系统…...
2. 两数相加
给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 …...
自研基于Xilinx PCIe的高性能多路视频采集与显示控制器
1 概述 视频采集与显示子系统可以实时采集多路视频信号,并存储到视频采集队列中,借助高效的硬实时视频帧出入队列管理和PCIe C2H DMA引擎,将采集到的视频帧实时传递到上位机采集缓冲区。在超带宽视频采集情况下,支持采集丢帧操作…...
隧道裂缝剥落病害AI识别系统
我国现有公路隧道超2.5万座,总里程超2.8万公里,其中运营超过15年的老旧隧道占比达35%。据交通运输部2025年统计,年均因隧道结构病害导致的交通中断超1200次,直接经济损失超45亿元。传统检测模式暴露四大核心痛点:检测周…...
网易云音乐NCM转MP3终极指南:ncmdump工具完整使用教程
网易云音乐NCM转MP3终极指南:ncmdump工具完整使用教程 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你是否曾经从网易云音乐下载了心爱的歌曲,却发现只能在特定播放器上收听?NCM格式的限制让音乐…...
手把手教你为WCH CH582移植CherryUSB主机栈(基于RT-Thread,含中断优化)
基于RT-Thread的WCH CH582 USB主机协议栈深度移植指南在嵌入式开发领域,USB主机功能的实现往往意味着设备能够直接连接各类USB外设,从简单的键盘鼠标到复杂的存储设备。对于使用WCH CH582这类RISC-V内核MCU的开发者而言,原厂SDK提供的USB主机…...
基于可解释机器学习的城市人口流动空间降尺度分析实践
1. 项目概述:从宏观到微观,解码城市脉搏在城市的肌理中,人口的流动如同血液的循环,承载着经济活力、社会互动与空间结构的全部信息。无论是城市规划师优化公交线路,还是商业分析师评估店铺选址,亦或是公共卫…...
超维计算(HDC)原理与ScalableHD架构优化实践
1. 超维计算(HDC)基础解析超维计算(Hyperdimensional Computing, HDC)是一种受大脑信息处理机制启发的计算范式,其核心思想是用高维随机向量(通常称为超向量或HV)来表示和处理信息。与传统神经网…...
3分钟开启PC游戏分屏派对:NucleusCoop让单机游戏秒变多人同屏神器
3分钟开启PC游戏分屏派对:NucleusCoop让单机游戏秒变多人同屏神器 【免费下载链接】nucleuscoop Starts multiple instances of a game for split-screen multiplayer gaming! 项目地址: https://gitcode.com/gh_mirrors/nu/nucleuscoop 还在为热门PC游戏不支…...
LoRa物联网与动态基线算法在养殖体温监测中的实战应用
1. 项目概述:为什么我们需要一个智能体温监测系统?在规模化养殖场里干了十几年,我见过太多因为体温异常没被及时发现而导致的损失。一头育肥猪突然不吃食,等饲养员第二天巡栏发现时,可能已经高烧好几天,继发…...
通过TaotokenCLI工具一键配置开发环境接入参数
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 通过Taotoken CLI工具一键配置开发环境接入参数 对于需要接入多个大模型服务的开发者而言,手动配置每个项目的API密钥、…...
XZ6128A工作电压5-100V 输出电流5A 升压型大功率LED灯恒流驱动控制芯片
概述 XZ6128A是一款高效率、高精度的升压型大功率LED灯恒流驱动控制芯片。 XZ6128A内置高精度误差放大器,固定关断时间控制电路,恒流驱动电路等,特别适合大功率、多个高亮度LED灯串的恒流驱动。 XZ6128A采用固定关断时间的控制方式࿰…...
如何用免费工具解锁QQ音乐、网易云音乐等加密格式:3分钟解决音乐播放限制
如何用免费工具解锁QQ音乐、网易云音乐等加密格式:3分钟解决音乐播放限制 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web…...
