lHMI Lua 位操作 和 get_uint16
1、get_uint16(VT_LW, 0x1060)这个函数是取了0x1060 和0x1061两个字节的数据吗,还是只取了0x1060地址的数据2、取出来的数据,怎么单独取出某个位是1还是0
1、取0x1060这个地址的寄存器数据,HMI一个地址就是1个寄存器,一个寄存器为16位数据
--@set_valbit:设置位状态
--data:源数据
--bitmask:第几个位,如bit0,填0; bit1,填1;
--state:置0/1
function set_valbit(data, bitmask, state)
bitmask= (1 << bitmask) & 0xFF
if state == 0
then
data = data & (~bitmask)
elseif state == 1
then
data = data | bitmask
end
return data
end If后要接end 发表于 2022-12-13 08:52
--@set_valbit:设置位状态
--data:源数据
--bitmask:第几个位,如bit0,填0; bit1,填1;
串口屏如果读取哪个位的数据用哪个API miyuhao 发表于 2023-10-6 20:13
串口屏如果读取哪个位的数据用哪个API
get_bit() If后要接end 发表于 2023-10-7 08:57
get_bit()
要读取某个寄存器中的某一位的值,怎么用这个指令? 字寄存器就get_uint16/get_int16/get_uint32/get_int32,然后>>左移对应的位数
页:
[1]