硬汉嵌入式论坛

 找回密码
 立即注册
查看: 694|回复: 0
收起左侧

[Lua] Lua简单处理结构体数据方法

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107911
QQ
发表于 2022-9-19 01:37:55 | 显示全部楼层 |阅读模式
现在封装的各种硬件收发API和文件系统的f_write,f_read函数都是字符串的用法。

为了方便将实际的数值以字符串形式写入,可以使用string.format或者string.char,我们这里用string.format

下面是16bit和32bit数值的处理,返回的字符串就是实际的数值,只是以字符串处理:

[Lua] 纯文本查看 复制代码
function TwoValueRe(value)
        local str1
        local byte0
        local byte1

        -- 将固件大小转换成四个字节
        byte0 = ((value >> 0) & 0xFF)
        byte1 = ((value >> 8) & 0xFF)

        str1 = string.format("%c%c", byte0, byte1)

        return str1
end

function FourValueRe(value)
        local str1
        local byte0
        local byte1
        local byte2
        local byte3

        -- 将固件大小转换成四个字节
        byte0 = ((value >> 0) & 0xFF)
        byte1 = ((value >> 8) & 0xFF)
        byte2 = ((value >> 16) & 0xFF)
        byte3 = ((value >> 24) & 0xFF)

        str1 = string.format("%c%c%c%c", byte0, byte1 , byte2, byte3)
        return str1
end


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-6-18 09:54 , Processed in 0.141056 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表