我有一个在 codesys 3.5 中运行的结构化文本程序,我想在其中将某些电机的模式设置为多个值。为了获得良好的封装代码,我定义了以下结构:
{attribute 'strict'}
TYPE PD4_modes :
(
no_mode := 0,
position:= 1,
velocity := 2,
homing_mode := 3
) UINT;
END_TYPE
但是,一旦我尝试将此值分配给sint
驱动电机模式的适当变量(an),如下所示:
mot1_ctrmode = PD4_modes.homing_mode
我得到错误:type PD4_modes cannot be cast to sint
。这是为什么?我以为我在结构中将模式定义为 uint ?因此不需要铸造,对吧?我也试图删除该属性strict
,但这并没有帮助......