如果按面板上的单选按钮(发送数据),对于以下代码,数据将被发送两次或三次,有时是一次:
on sysvar RC::send_data
{
systemData.byte(0) = 0x01;
systemData.byte(1) = 0x01;
systemData.byte(2) = 0x01;
systemData.byte(3) = 0x01;
systemData.byte(4) = 0x01;
systemData.byte(5) = 0x01;
systemData.byte(6) = 0x01;
systemData.byte(7) = 0xFF;
output(systemData);
}
我只需要按一次就发送一次,如何实现?
为什么数据被随机发送多次?
预期:
Tx : 01010101010101FF
错误结果:
Tx : 01010101010101FF
Tx : 01010101010101FF
答案 0 :(得分:0)
当您按下按钮时,sysvar将被设置为某个值。您可以在面板设计器的按钮属性Pressed
中配置此值。
释放按钮时,sysvar设置为其他值。您可以在面板设计器中的按钮属性Released
上配置此值。
您的on sysvar
事件处理程序在按下按钮时被调用一次,在释放按钮时被调用一次。
您可以在事件处理程序中使用if
语句来仅对sysvar的某些值做出反应。