【发布时间】:2022-05-06 16:51:47
【问题描述】:
我想知道在任何 twincat3 系统库中是否有类似 UINT_MAX (= 65535) 的定义。
【问题讨论】:
标签: twincat
我想知道在任何 twincat3 系统库中是否有类似 UINT_MAX (= 65535) 的定义。
【问题讨论】:
标签: twincat
TwinCAT 内部似乎没有任何特定功能可以满足您的需求。但是在 C 层对象内部有一些相似的。
类型系统中有多个版本的 UINT(UINT、UINT24、UINT40、UINT48、UINT56),它们都专用于相同的信息范围和值。
在 TMC 处理(数据类型)内部查看时,这些数据类型中的每一个都有 2 个属性:
DisplayMinValue: #x0000DisplayMaxValue: #xFFFF这些属性的实现和访问似乎仅限于通过 C 接口访问,并且无法从 TwinCAT 本身内部访问,但它们就在那里。
【讨论】:
解决此问题的另一种方法是使用按位运算符 NOT。定义一个名为 UINT_MAX 的 UINT,并在 PLC 的第一个循环中使用以下 sn-p:
UINT_MAX := NOT UINT_MAX;
【讨论】: