如何解决在Twincat 3中获取枚举的字符串值
在Twincat 3中,我有一个像这样的枚举:
TYPE ENUM_FUNCTIONS :
(
EMPTY :=0,MOTOR_SPEED_INPUT_1 :=1,MOTOR_SPEED_INPUT_2 :=2,MAIN_SHAFT_SPEED_MONITOR_3 :=3,MAIN_SHAFT_SPEED_MONITOR_1 :=4,MAIN_SHAFT_SPEED_MONITOR_2 :=5
);
END_TYPE
有什么方法可以获取枚举的字符串值?
例如,使用 ENUM_FUNCTIONS [5] 并获得值 MAIN_SHAFT_SPEED_MONITOR_2
谢谢。
解决方法
是的。请参阅here的操作方法(仅自 TwinCAT 3.1.4024.x 或 CODESYS 3.5.14.0 起可用)
TL; DR ,简而言之,请使用 Enum 和to_string
函数上的TO_STRING
属性来获取字符串:
{attribute 'to_string'}
TYPE ENUM_FUNCTIONS :
...
END_TYPE
myEnum: ENUM_FUNCTIONS;
str: STRING := TO_STRING(myEnum);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。