|
楼主 |
发表于 2024-10-18 20:26:23
|
显示全部楼层
你好,我试了下对LW01B1修改,步骤如下
SystemBaudRateAddr = 0x01B1 --LW 系统串口波特率地址
SystemComSetAddr = 0x01B0 --LW 串口锁地址
SystemComSetValue = 0x5501 --LW 串口锁数据
SystemBaudrateNum = 0x0032 --RW 波特率下拉框选定项数保存地址,这个地址最小为0,所以需要加1才与波特率数组对应
--变量发生改动时调用
function on_update(slave,vtype,addr)
local baudnum = 0
if get_uint16(VT_LW,Flag_SysConfigSave) == 1 then --系统配置保存
set_uint16(VT_LW,Flag_SysConfigSave,0)
baudnum = get_uint16(VT_RW,SystemBaudrateNum) --获取下拉选框选项号
set_uint32(VT_RW,sysbaud,Systembaudrate[baudnum+1]) --在将当前波特率值写入自定义RW地址
set_uint32(VT_LW,SystemBaudRateAddr,Systembaudrate[baudnum+1]) --设置LW01B地址的波特率值
set_uint16(VT_LW,SystemComSetAddr,SystemComSetValue) --解锁COM口
--uart_setup(1,Systembaudrate[baudnum + 1],1,0,0) --设置串口
end
end
上图是我运行后的程序,下拉框控件上面两个数值分别是下拉框选项号和我保存到RW中的值,这个显示是正确的,但写LW01B1,波特率配置却没有成功,还是按原波特率在发码(我有计数器中断定器发码)
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|