添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
绅士的抽屉  ·  和Guy Somberg学习C++ ...·  15 分钟前    · 
跑龙套的牙膏  ·  NCTF 2023 Web ...·  2 小时前    · 
才高八斗的小狗  ·  'description': ...·  3 小时前    · 
腹黑的板凳  ·  DateUtil (hutool ...·  13 小时前    · 
淡定的茶壶  ·  anti-emulator/AntiEmul ...·  13 小时前    · 
快乐的马克杯  ·  新漫画·  1 年前    · 
0x3132 -- 数值标识 "3132" -- hex字符串,这个给人看的HEX字符串 "12" -- 与0x3132等价一个lua string {0x31, 0x32} -- lua数组(table) [0x31, 0x32] -- java/c/c++的byte[]/char[]

把0x3132写入uart, socket/spi都是同理

// 方法1, 使用string.char, 逐个字节描述
local data = string.char(0x31, 0x32)
uart.write(id, data)
// 方法2, 使用 string.fromHex, 传入2的倍数长度的hex字符串
local data = string.fromHex("3132")
uart.write(id, data)
// 方法3, 使用pack库, H代表2字节符号数, I代表4字节无符号数, wiki可查
local data = pack.pack("H", 0x3132)
uart.write(id, data)

将socket读取的数据转换为数值, uart/spi均同理

local re, data = socket:recv(1000) -- 等待1秒
-- 注意, data是lua string, 内容是 "12", 对应hex值 [0x31,0x32]
-- lua string不是数组不是table,不能直接下标读取
打印其hex字符串形式
local hexStr, len = string.toHex(data) -- 返回值"3132",2,后面的2是长度
print(hexStr) -- 将输出 3132
--- 方式1,使用pack.unpack
-- 分解为2个数, b是无符号单字节数,2代表数量
local nexti, numa, numb = pack.unpack(data, "b2")
print(numa) -- 数字 31
print(numb) -- 数字 32
直接取第二个数, 位置写2
local nexti, numb = pack.unpack(data,"b",2)
print(numb) -- 数字 32
-- 方式2,使用string.byte
local numa = string.byte(data, 1)
local numb = string.byte(data, 2)
print(numa) -- 数字 31
print(numb) -- 数字 32

string.byte用法
http://wiki.openluat.com/doc/luatApi/#stringbyte

string.fromHex用法
http://wiki.openluat.com/doc/luatApi/#stringfromhex

string.toHex用法
http://wiki.openluat.com/doc/luatApi/#stringtohex

pack库
http://wiki.openluat.com/doc/luatApi/#packpack


转载请注明原文链接:详解lua的string与hex数据(十六进制)
喜欢 (0)
724UG 开发板点7735S 彩屏的曲折过程。724UG 开发板点7735S 彩屏的曲折过程。2021-05-150

    网站统计

    • 文章总数:2246 篇
    • 评论数目:89 条
    • 建站日期:2021-05-07
    • 运行天数:677 天
    • 标签总数:11 个
    • 最后更新:2021-5-15
  • 版权声明

    本站的文章和资源来自互联网或者站长
    的原创,按照 CC BY -NC -SA 3.0 CN
    协议发布和共享,转载或引用本站文章
    应遵循相同协议。如果有侵犯版权的资
    源请尽快联系站长,我们会在24h内删
    除有争议的资源。
  • 网站简介

    还在为找不到模组资料而发愁吗?
    还在因为大厂不对个人开发者不友好而发愁吗?
    还在因为官网资料混乱而找不到想要的东西发愁吗?
    我们来解决你的问题!
  • 留言申请友联
  • SIMCom
  • 提交资料

    欢迎志同道合的朋友,分享资料
    本站不使用积分制,所有资料免费下载!
  •