接口 DarraCore
- 所有超级接口:
com.sun.jna.Library
Java 接口方法名保持业务语义 (例如 Initialize / SetState); JNA 在加载时通过
OPTIONS 中的 FunctionMapper 将方法名解析为库内对应的导出符号,
调用方按业务方法名调用即可, 无需关心底层符号命名。
-
嵌套类概要
嵌套类修饰符和类型接口说明static final classstatic final classstatic interfaceAoE 通知回调static classstatic interface崩溃通知回调static interfaceDC 同步丢失回调static classstatic classstatic classEMCY 记录结构体static interface紧急事件回调static interfaceEoE 异步接收回调 (主循环线程 PDO 上下文执行, 不可阻塞, 必须立即拷贝 frameData).static classstatic interfaceFoE BUSY 回调 / FoE BUSY callback.static classstatic interfaceFoE 进度回调static classFSoE 连接配置结构体 (对应 C fsoe_config_t, 自然对齐, 20 字节)static classFSoE 连接状态结构体 (对应 C fsoe_status_t, 自然对齐, 32 字节)static classHot-Connect 组定义 native 结构体 (对齐 C 端 hotconnect_group_t, Pack=1).static interface输入 PDO 数据变化回调。static interface日志回调static class主站诊断数据结构体static class主站身份信息结构体static class邮箱协议统计快照 (对齐 C 端 struct mbx_stats, 72 字节).static class邮箱事务对象 (对齐 C 端 mbx_transaction_t, 72 字节).static interfacePDO 连续丢帧回调static interfacePDO 周期回调static interface冗余模式变化回调static classstatic classFSoE MDP 多连接配置结构体 (扩展版, 自然对齐)static classstatic interface从站发现回调static classstatic interface从站身份不符回调 (v2 热插拔自修复) 触发时机: 断电重插从站后 ident FSM 读取到的 Vendor/Product 与配置不匹配, 或 Revision 低于配置 (向后兼容: actual >= configured 视为匹配) 去重规则: 进入 IDENT_REJECTED 状态时仅触发一次, 调用 AcknowledgeSlaveReplacement 后才会重新探测 32 位字段通过 int 承载, Java 层解释为 unsigned (无效输入:'&' 0xFFFFFFFFL)static interface从站端口链路变化回调 (断线检测) 触发时机: 从站 DL Status (0x0110) 的 port link bit 从 1->0 (断开) 或 0->1 (恢复) 每 1 秒诊断周期检测, 每次 bit 翻转触发一次 (去重不重复触发) port: 0-3 对应 P0/P1/P2/P3 isUp: TRUE=link 恢复, FALSE=link 断开static interface从站 PreOP 重配置回调static interface从站状态变化回调static interfaceSoE 硬件 Emergency 回调 (OpCode=6) / SoE Emergency callback (OpCode=6).static interfaceSoE 硬件 Notification 回调 (OpCode=5) / SoE Notification callback (OpCode=5).static classstatic class拓扑节点结构体static interfaceVoE 异步通知回调 (主循环线程 PDO 上下文; data 仅在回调期间有效).static classstatic class从接口继承的嵌套类/接口 com.sun.jna.Library
com.sun.jna.Library.Handler -
字段概要
字段修饰符和类型字段说明static final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final DarraCore原生库单例实例 (使用 OPTIONS 中的 FunctionMapper 自动解析导出符号)JNA 加载选项: 安装FunctionMapper, 在加载时把 Java 业务方法名解析为库内对应的导出符号。从接口继承的字段 com.sun.jna.Library
OPTION_ALLOW_OBJECTS, OPTION_CALLING_CONVENTION, OPTION_CLASSLOADER, OPTION_FUNCTION_MAPPER, OPTION_INVOCATION_MAPPER, OPTION_OPEN_FLAGS, OPTION_STRING_ENCODING, OPTION_STRUCTURE_ALIGNMENT, OPTION_SYMBOL_PROVIDER, OPTION_TYPE_MAPPER -
方法概要
修饰符和类型方法说明void中止网络操作void中止网络扫描booleanAcknowledgeSlaveReplacement(short masterIndex, short slaveIndex) 用户确认从站替换: 将从站 ident FSM 从 IDENT_REJECTED 复位到 SCAN_ADDR, 下一个 recovery_due tick 重新走一遍完整状态机 若身份已纠正 (换回正确设备) -> 自动恢复并触发 SlaveOnline 若仍不匹配 -> 再次触发 SlaveIdentityMismatch, 回到 IDENT_REJECTEDintAddStartupParameter(short masterIndex, short slaveIndex, DarraCore.StartupParam param) 添加一个启动参数intAddStartupParameterBatch(short masterIndex, short slaveIndex, DarraCore.StartupParam[] paramArray, int count) 批量添加启动参数com.sun.jna.PointerAL_StatusCode_GetDescription(short code) com.sun.jna.PointerAL_StatusCode_GetRecoveryHint(short code) intAL_StatusCode_GetSeverity(short code) intAL_StatusCode_IsVendorSpecific(short code) booleanAOEAddNotification(short masterIndex, short slave, int indexGroup, int indexOffset, int length, int transMode, int maxDelay, int cycleTime, com.sun.jna.ptr.IntByReference handle, int timeout) AoE 添加通知booleanAOEDelNotification(short masterIndex, short slave, int handle, int timeout) AoE 删除通知booleanAOEGetConfig(short masterIndex, short slave, byte[] targetNetId, com.sun.jna.ptr.ShortByReference targetPort, byte[] sourceNetId, com.sun.jna.ptr.ShortByReference sourcePort) AoE 获取配置boolean检查 AoE 通知监听线程是否运行booleanAOEReadDeviceInfo(short masterIndex, short slave, com.sun.jna.ptr.ByteByReference majorVer, com.sun.jna.ptr.ByteByReference minorVer, com.sun.jna.ptr.ShortByReference build, byte[] deviceName, int nameSize, int timeout) AoE 读取设备信息booleanAOEReadState(short masterIndex, short slave, com.sun.jna.ptr.ShortByReference adsState, com.sun.jna.ptr.ShortByReference deviceState, int timeout) AoE 读取状态booleanAOEReadWrite(short masterIndex, short slave, int indexGroup, int indexOffset, int readLength, int writeLength, byte[] writeData, com.sun.jna.ptr.PointerByReference readData, com.sun.jna.ptr.IntByReference bytesRead, int timeout) AoE 读写intAOERegisterNotification(short slave, int handle, int indexGroup, int indexOffset, int dataLength, DarraCore.AOENotificationCallback callback, com.sun.jna.Pointer userData) 注册 AoE 通知回调booleanAOESendCommand(short masterIndex, short slave, short targetPort, short commandId, byte[] commandData, int commandSize, com.sun.jna.ptr.PointerByReference responseData, com.sun.jna.ptr.IntByReference responseSize, int timeout) AoE 发送命令booleanAOESetConfig(short masterIndex, short slave, byte[] targetNetId, short targetPort, byte[] sourceNetId, short sourcePort) AoE 设置配置booleanAOEStartNotificationListener(short masterIndex) 启动 AoE 通知监听线程boolean停止 AoE 通知监听线程booleanAOEUnregisterNotification(int subscriptionIndex) 注销 AoE 通知回调booleanAOEWriteControl(short masterIndex, short slave, short adsState, short deviceState, byte[] data, int dataSize, int timeout) AoE 写入控制boolean应用实时优化intApplyStartupParameters(short masterIndex, short slaveIndex, byte transition, byte timing) 执行指定从站的启动参数intApplyStartupParametersAll(short masterIndex, byte transition, byte timing) 对所有从站执行启动参数intAutoCalculateDCShift(short masterIndex) 自动计算 DC 偏移intAutoConfigureSM(short masterIndex, short slaveIndex) 自动配置 SM (slaveIndex=0 处理所有从站)booleanCheckRedundancyHealth(short masterIndex) 检查冗余健康状态booleanCiA402_Enable(short master, short slave, int maxRetries) 自动使能驱动器 (状态机链式推进)booleanCiA402_FaultReset(short master, short slave) 故障复位shortCiA402_GetEnableCommand(short statusword) 根据当前状态字计算使能控制字byteCiA402_GetMode(short master, short slave) 获取当前运行模式 (0x6061)intCiA402_ParseState(short statusword) 解析状态字, 返回 CiA 402 状态值shortCiA402_ReadStatusWord(short master, short slave) 读取状态字 (0x6041)booleanCiA402_SetMode(short master, short slave, byte mode) 设置运行模式 (0x6060)booleanCiA402_WriteControlWord(short master, short slave, short cw) 写入控制字 (0x6040)intCiA402Modes_ExpandSupportedMask(int mask, byte[] modes, int capacity) intCiA402Modes_GetHomingDirection(byte method) com.sun.jna.PointerCiA402Modes_GetHomingMethodName(byte method) intCiA402Modes_GetHomingTrigger(byte method) com.sun.jna.PointerCiA402Modes_GetModeDescription(byte mode) com.sun.jna.PointerCiA402Modes_GetModeName(byte mode) com.sun.jna.PointerCiA402Modes_GetModeNameEn(byte mode) intCiA402Modes_IsCyclicSyncMode(byte mode) intCiA402Modes_IsModeSupportedInMask(int mask, byte mode) intCiA402Modes_IsStandardHomingMethod(byte method) intCiA402Modes_ListStandardHomingMethods(byte[] array, int capacity) intCiA402Modes_ModeToSupportedBit(byte mode) intCiA402Modes_RequiresDC(byte mode) voidClearSlaveNeedsStartupReconfig(short masterIndex, short slaveIndex) 清除从站启动重配置标志intClearStartupParameters(short masterIndex, short slaveIndex) 清除启动参数 (slaveIndex=0 清除所有从站)intcoe_diag_acknowledge(short masterIndex, short slaveIndex, byte ackSubidx, com.sun.jna.ptr.IntByReference outAbortCode) 确认已处理消息 / acknowledge the newest-processed sub-index.intcoe_diag_poll_new_available(short masterIndex, short slaveIndex, com.sun.jna.ptr.IntByReference outAbortCode) 轮询 0x10F3:04 "NewAvailable" 标志 / poll 0x10F3:04 "NewAvailable".intcoe_diag_read_message(short masterIndex, short slaveIndex, byte msgSubidx, byte[] outBuf, int bufCap, com.sun.jna.ptr.IntByReference outLen, com.sun.jna.ptr.IntByReference outAbortCode) 读 0x10F3:msg_subidx (6..255) 指定诊断消息 / read the specified diagnosis message.intcoe_diag_read_meta(short masterIndex, short slaveIndex, com.sun.jna.ptr.ByteByReference maxMsgs, com.sun.jna.ptr.ByteByReference newest, com.sun.jna.ptr.ByteByReference acknowledged, com.sun.jna.ptr.ShortByReference flags16, com.sun.jna.ptr.IntByReference outAbortCode) 读 0x10F3 元数据 / read 0x10F3:01..05 meta (MaxMessages / Newest / Acked / Flags).voidcoe_free_odlist(com.sun.jna.Pointer p) 释放 coe_get_od_list / coe_get_object_desc 返回的指针.voidcoe_free_oelist(com.sun.jna.Pointer p) 释放 coe_get_entry_desc 返回的指针.com.sun.jna.Pointercoe_get_entry_desc(short masterIndex, short slaveIndex, short index, byte subindex) 读单个 Entry Description (DataType/BitLength/ObjAccess/Name).com.sun.jna.Pointercoe_get_object_desc(short masterIndex, short slaveIndex, short index) 读单个对象 Description (DataType/MaxSub/Name).com.sun.jna.Pointercoe_get_od_list(short masterIndex, short slaveIndex) 读对象索引清单.intConfigureDCAll(short masterIndex, int sync0Ns, int sync1Ns) 为所有 DC 从站配置 DC 同步booleanConfigureFMMU(short masterIndex, short slaveIndex, byte fmmuIndex, int logicalAddr, short length, byte logicalStartBit, byte logicalEndBit, short physicalAddr, byte physicalStartBit, byte fmmuType, boolean enable) 配置 FMMUbooleanConfigureSyncManager(short masterIndex, short slaveIndex, byte smIndex, short startAddr, short length, byte control, boolean enable) 配置 SyncManagerintD_1737()roundSDKSAN2 内部入口。introundDEEP1 内部入口 (序号绑定)booleanroundDEEP1 内部入口 (序号绑定)voidroundDEEP1 内部入口 (序号绑定)intDarraCoreInvoke(short masterIndex, int command, int arg0, int arg1, int arg2) intDarraCoreInvokeText(short masterIndex, int command, String text, int arg0, int arg1, int arg2) com.sun.jna.Pointer获取驱动安装包下载链接 (默认 https://www.darrart.com/downloads/drivers, 可通过环境变量 DARRA_INSTALLER_URL 覆盖).int探测内核驱动 (DarraRT_Eth.sys) 当前可用性.com.sun.jna.PointerDarraEcat_KernelStatusMessage(int status) 获取状态码对应的中文可读消息 (UTF-8, DLL 内部静态字符串).intDarraValidateTimerAccuracy(int expectedUsec, int toleranceUsec) 验证定时器精度booleanDisableOutputSyncManager(short masterIndex, short slaveIndex) 禁用输出 SyncManagervoidDispose(short masterIndex) 释放指定主站资源void输出从站结构体偏移量 (调试用)booleanDxSafeMdpCheckWatchdog(short masterIndex, short slaveIndex, short connectionIndex) 检查指定连接的看门狗状态voidDxSafeMdpClearError(short masterIndex, short slaveIndex, short connectionIndex) 清除指定连接的错误booleanDxSafeMdpCloseConnection(short masterIndex, short slaveIndex, short connectionIndex) 关闭 MDP 从站的指定连接shortDxSafeMdpDetectConnections(short masterIndex, short slaveIndex) 检测从站是否为 MDP 设备并返回支持的 FSoE 连接数booleanDxSafeMdpDownloadParameters(short masterIndex, short slaveIndex, short connectionIndex, byte[] paramData, int paramSize, com.sun.jna.ptr.IntByReference sraCrc) 下载指定连接的安全参数booleanDxSafeMdpGetDeviceAddress(short masterIndex, short slaveIndex, com.sun.jna.ptr.ShortByReference safetyAddress) 读取从站的设备级 FSoE 安全地址 (0xF980:01)intDxSafeMdpGetLastError(short masterIndex, short slaveIndex, short connectionIndex) 获取指定连接的最后错误booleanDxSafeMdpGetModuleCommParam(short masterIndex, short slaveIndex, short moduleNumber, byte[] paramData, com.sun.jna.ptr.IntByReference paramSize) 读取指定模块的 FSoE 通信参数 (0x9nn1)booleanDxSafeMdpGetModuleDiagnosis(short masterIndex, short slaveIndex, short moduleNumber, com.sun.jna.ptr.ShortByReference connectionState, com.sun.jna.ptr.ShortByReference connectionDiagnosis) 读取指定模块的 FSoE 诊断数据 (0xAnn0)shortDxSafeMdpGetSlaveConnectionCount(short masterIndex, short slaveIndex) 获取从站的 FSoE 连接数量intDxSafeMdpGetState(short masterIndex, short slaveIndex, short connectionIndex) 获取指定连接的当前状态booleanDxSafeMdpGetStatus(short masterIndex, short slaveIndex, short connectionIndex, DarraCore.FSoEStatus status) 获取指定连接的状态booleanDxSafeMdpInitConnection(short masterIndex, short slaveIndex, short connectionIndex, DarraCore.SafeMdpConfig config) 初始化 MDP 从站的指定连接booleanDxSafeMdpReadSafeInput(short masterIndex, short slaveIndex, short connectionIndex, byte[] data, com.sun.jna.ptr.IntByReference size) 读取指定连接的安全输入数据booleanDxSafeMdpRequestState(short masterIndex, short slaveIndex, short connectionIndex, int targetState) 请求指定连接的状态转换booleanDxSafeMdpReset(short masterIndex, short slaveIndex, short connectionIndex) 重置指定连接booleanDxSafeMdpSetFailsafeOutput(short masterIndex, short slaveIndex, short connectionIndex, byte[] data, int size) 设置指定连接的失效安全输出值booleanDxSafeMdpWriteSafeOutput(short masterIndex, short slaveIndex, short connectionIndex, byte[] data, int size) 写入指定连接的安全输出数据intec_perf_export_csv(short masterIndex, String filepath) 导出性能统计到 CSV 文件intec_validate_config(short masterIndex) 验证主站配置voidEcClose(short masterIndex) 一步关闭: ClearStartupParams + Stop + DisposeintEcCouplerId_DetectDeviceType(int vendorId, int productCode) com.sun.jna.PointerEcCouplerId_GetDeviceTypeName(int type) com.sun.jna.PointerEcCouplerId_GetVendorName(int vendorId) com.sun.jna.PointerEcCouplerId_GetVendorNameEn(int vendorId) intEcCouplerId_IsCoupler(int vendorId, int productCode) intEcCouplerId_IsTerminal(int vendorId, int productCode) com.sun.jna.PointerEcDiagStrings_BreakpointType(byte bp) voidEcDiagStrings_FormatBreakpoint(short slaveIdx, byte port, byte bp, byte[] buf, int bufSize) com.sun.jna.PointerEcDiagStrings_TimingMode(int mode) com.sun.jna.PointerEcDiagStrings_TopologyDescription(byte topo) intEcEsi_ApplyAllSlaves(short masterIndex) 对所有已匹配 ESI 的从站批量注册启动参数.intEcEsi_AutoMatchAll(short masterIndex) 自动给本主站所有从站匹配 ESI (按 VID/PID 在 ESI 库内找最高 Revision).intEcEsi_BindToSlave(short masterIndex, short slaveIndex, String filePath) 把指定 ESI 文件绑定到指定从站 (按 VID/PID 显式覆盖自动匹配).void清空 ESI 库 (释放所有已加载的设备描述).intEcEsi_GetDeviceDcSyncMode(short masterIndex, short slaveIndex) 获取 Device DC Sync 模式 (与 ec_dc_sync_mode_t 对齐)intEcEsi_GetDeviceIdentity(short masterIndex, short slaveIndex, com.sun.jna.ptr.IntByReference vendorId, com.sun.jna.ptr.IntByReference productCode, com.sun.jna.ptr.IntByReference revisionNo, byte[] nameBuf, int nameBufSize) 获取 Vendor/Product/Revision/Name (UTF-8 写入 nameBuf).intEcEsi_GetDeviceMailboxTimeout(short masterIndex, short slaveIndex, com.sun.jna.ptr.IntByReference requestMs, com.sun.jna.ptr.IntByReference responseMs) 获取邮箱 Request/Response 超时 (毫秒).intEcEsi_GetDevicePdoIndices(short masterIndex, short slaveIndex, int direction, short[] outIndices, int maxCount) 列出 Device 的 PDO Index 列表 (从已绑定 ESI Device 派生).intEcEsi_GetDevicePdoSizeBits(short masterIndex, short slaveIndex, short pdoIndex) 获取指定 PDO 的总位长 (含 Padding).intEcEsi_GetDeviceSmInfo(short masterIndex, short slaveIndex, byte smIdx, com.sun.jna.ptr.ShortByReference startAddr, com.sun.jna.ptr.ShortByReference defaultLen, com.sun.jna.ptr.ByteByReference controlByte) 获取 Device 的 SyncManager 信息 (sm_idx 0..3).int返回 ESI 库当前已加载的 device 数量.intEcEsi_LoadDirectory(String dirPath) 递归加载目录下所有 .xml 文件到 ESI 库.intEcEsi_LoadFile(String filePath) 加载单个 ESI XML 文件到 ESI 库.intEcEsi_RegisterStartupParameters(short masterIndex, short slaveIndex) 把单个从站的 InitCmd / Mailbox / 启动 SDO 注册到 master 启动序列 (PreOp 前生效).short一步初始化: JSON -> Initialize + SetNetwork + LoadConfig + SetStateSequence + StartshortEcInitFromFile(String jsonFilePath) 一步初始化: 从 JSON 文件路径com.sun.jna.PointerEcMailbox_GetErrorDescription(short mbxErrorCode) com.sun.jna.PointerEcMailbox_GetTypeName(short type) com.sun.jna.PointerEcMailbox_GetTypeNameEn(short type) byteEcMailbox_NextCounter(byte current) intEcPdoCodec_CountActivePorts(byte activePorts) intEcPdoCodec_DataTypeBitSize(int dt) com.sun.jna.PointerEcPdoCodec_DataTypeName(int dt) intEcPdoCodec_ExtractI64(byte[] src, int srcSize, int bitOffset, int bitLength, com.sun.jna.ptr.LongByReference value) intEcPdoCodec_ExtractReal32(byte[] src, int srcSize, int bitOffset, com.sun.jna.ptr.FloatByReference value) intEcPdoCodec_ExtractReal64(byte[] src, int srcSize, int bitOffset, com.sun.jna.ptr.DoubleByReference value) intEcPdoCodec_ExtractU64(byte[] src, int srcSize, int bitOffset, int bitLength, com.sun.jna.ptr.LongByReference value) intEcPdoCodec_GetTopology(byte activePorts) com.sun.jna.PointerEcPdoCodec_GetTopologyName(int topo) com.sun.jna.PointerEcPdoCodec_GetTopologyNameEn(int topo) intEcPdoCodec_InsertI64(byte[] dst, int dstSize, int bitOffset, int bitLength, long value) intEcPdoCodec_InsertReal32(byte[] dst, int dstSize, int bitOffset, float value) intEcPdoCodec_InsertReal64(byte[] dst, int dstSize, int bitOffset, double value) intEcPdoCodec_InsertU64(byte[] dst, int dstSize, int bitOffset, int bitLength, long value) intEcPdoCodec_IsPortActive(byte activePorts, int port) intEcSii_CoeCompleteAccess(byte coeDetails) intEcSii_CoeEnabled(byte coeDetails) intEcSii_CoePdoAssign(byte coeDetails) intEcSii_CoePdoConfig(byte coeDetails) intEcSii_CoeSdoInfo(byte coeDetails) intEcSii_CoeUploadAtStartup(byte coeDetails) intEcSii_EnumerateCategories(byte[] siiData, int siiSize, short[] catTypes, int capacity) intEcSii_EoeEnabled(byte eoeDetails) intEcSii_FindCategory(byte[] siiData, int siiSize, short catType, com.sun.jna.ptr.IntByReference outSizeBytes) intEcSii_FoeEnabled(byte foeDetails) shortEcSii_GetConfiguredAlias(byte[] siiData, int siiSize) intEcSii_GetProductCode(byte[] siiData, int siiSize) intEcSii_GetRevision(byte[] siiData, int siiSize) intEcSii_GetSerialNumber(byte[] siiData, int siiSize) intEcSii_GetStringByIndex(byte[] catData, int catSize, int idx, byte[] outBuf, int bufSize) intEcSii_GetStringCount(byte[] catData, int catSize) intEcSii_GetVendorId(byte[] siiData, int siiSize) com.sun.jna.PointerEcSoE_GetErrorDescription(short soeError) com.sun.jna.PointerEcState_GetName(short state) com.sun.jna.PointerEcState_GetNameEn(short state) intEcState_GetTransitionPath(short from, short to, short[] path, int pathCapacity) intEcState_GetTransitionType(short from, short to) intEcState_HasErrorAck(short state) intEcState_IsBootstrapRequired(short state) intEcState_IsValidTransition(short from, short to) shortEcState_StripErrorAck(short state) intEcxMbxCancel(short masterIndex, int ticket) 取消异步邮箱事务.intEcxMbxGetResult(short masterIndex, int ticket, DarraCore.MbxTransactionNative.ByReference txn) 查询异步邮箱事务的完整结果.intEcxMbxGetStats(short masterIndex, short slave, byte protocolType, DarraCore.MbxStatsNative stats) 查询 per-slave / per-protocol 邮箱统计.voidEcxMbxResetStats(short masterIndex, short slave, byte protocolType) 重置 per-slave / per-protocol 邮箱统计.intEcxMbxSubmitAsync(short masterIndex, DarraCore.MbxTransactionNative.ByReference txn, com.sun.jna.ptr.IntByReference outTicket) 异步投递邮箱事务.intEcxMbxWait(short masterIndex, int ticket, int timeoutMs) 等待异步邮箱事务完成.voidEmcyClearHistory(short master, short slave) 清除 EMCY 历史记录voidEmcyCode_FormatErrorRegister(byte errorRegister, byte[] buf, int bufSize) intEmcyCode_GetClass(short errorCode) com.sun.jna.PointerEmcyCode_GetClassName(int classCode) com.sun.jna.PointerEmcyCode_GetDescription(short errorCode) intEmcyCode_IsRecovery(short errorCode) intEmcyGetCount(short master, short slave) 获取 EMCY 记录数量intEmcyGetHistory(short master, short slave, DarraCore.EmcyRecord[] out, int max) 获取 EMCY 历史记录void紧急关闭所有网卡句柄voidEnableContinuousMeasurement(short masterIndex, boolean enable, int intervalSec) 启用/禁用持续传播延迟测量voidEnableDriftCompensation(short masterIndex, boolean enable, int thresholdNs, int gain) 启用/禁用漂移补偿booleanEnableOutputSyncManager(short masterIndex, short slaveIndex) 启用输出 SyncManagervoidEnablePDOMonitoring(byte enable) 启用/禁用 PDO 监控.booleanEnableRedundancy(short masterIndex, boolean enable) 启用/禁用冗余int探测并启动内核驱动服务 (DarraRT/DarraRT_Eth).intEnumerateDefaultPdo(short masterIndex, short slaveIndex, int direction, short[] outIndices, int maxCount) 枚举从站默认 PDO Assignment (协议下沉到 native)
SDK 公开层不再循环 SDORead 0x1C12/0x1C13; 由 native 处理协议细节.booleanEOEClearReceiveHook(short masterIndex) 清除 EoE 异步接收 Hook.booleanEOEGetAddressFilter(short masterIndex, short slave, byte port, com.sun.jna.ptr.ByteByReference filterCount, byte[] macFilters, int maxFilters, int timeout) EoE 获取地址过滤booleanEOEGetDNS(short masterIndex, short slave, byte port, com.sun.jna.ptr.IntByReference dnsIp, byte[] dnsName, int timeout) EoE 获取 DNSbooleanEOEGetFullParam(short masterIndex, short slave, byte port, com.sun.jna.ptr.IntByReference ipAddress, com.sun.jna.ptr.IntByReference subnetMask, com.sun.jna.ptr.IntByReference defaultGateway, byte[] macAddress, com.sun.jna.ptr.IntByReference dnsIp, byte[] dnsName, int timeout) EoE 获取全部参数booleanEOEGetIP(short masterIndex, short slave, byte port, com.sun.jna.ptr.IntByReference ipAddress, com.sun.jna.ptr.IntByReference subnetMask, com.sun.jna.ptr.IntByReference defaultGateway, int timeout) EoE 获取 IPbooleanEOEGetMAC(short masterIndex, short slave, byte port, byte[] mac, int timeout) EoE 获取 MAC 地址booleanEOEReceiveFrame(short masterIndex, short slave, byte port, com.sun.jna.ptr.PointerByReference data, com.sun.jna.ptr.IntByReference size, int timeout) EoE 接收帧booleanEOESendFrame(short masterIndex, short slave, byte port, byte[] frameData, int frameSize, int timeout) EoE 发送帧booleanEOESendFrameEx(short masterIndex, short slave, byte port, byte[] frameData, int frameSize, byte timeAppended, int timestamp, int timeoutUs) EoE 扩展发送 (ETG.1000.6 §5.7): 在第一片 frameinfo1 置 TIME_APPEND 并将 4B 时间戳追加到末尾. timeAppended=1 时启用 TIME_APPEND, 否则等价 EOESendFrame.booleanEOESetAddressFilter(short masterIndex, short slave, byte port, byte filterCount, byte[] macFilters, int timeout) EoE 设置地址过滤booleanEoE 设置 DNSbooleanEOESetFullParam(short masterIndex, short slave, byte port, int ipAddress, int subnetMask, int defaultGateway, byte[] macAddress, int dnsIp, String dnsName, int timeout) EoE 设置全部参数booleanEOESetIP(short masterIndex, short slave, byte port, int ipAddress, int subnetMask, int defaultGateway, int timeout) EoE 设置 IPbooleanEOESetMAC(short masterIndex, short slave, byte port, byte[] mac, int timeout) EoE 设置 MAC 地址booleanEOESetReceiveHook(short masterIndex, DarraCore.EOEFrameCallback callback) 注册 EoE 异步接收 Hook (callback=null 等价 Clear).booleanFOEClearCancel(short masterIndex, short slave) 清除 FoE 取消标志 / clear the FoE cancel flag.booleanFOEClearProgressHook(short masterIndex) 清除 FoE 进度回调booleanFOERead(short masterIndex, short slave, String filename, int password, com.sun.jna.ptr.PointerByReference fileData, com.sun.jna.ptr.IntByReference fileSize, int timeout) FoE 读取文件booleanFOEReadEx(short masterIndex, short slave, String filename, int password, com.sun.jna.ptr.PointerByReference fileData, com.sun.jna.ptr.IntByReference fileSize, int timeout, DarraCore.FoEOptions options) FoE 扩展读取 (含选项)booleanFOERequestCancel(short masterIndex, short slave) 请求取消 FoE 传输 / request cancel of an ongoing FoE transfer.booleanFOESetBusyHook(short masterIndex, DarraCore.FoEBusyCallback callback) 设置 FoE BUSY 回调 / set FoE BUSY hook.booleanFOESetProgressHook(short masterIndex, DarraCore.FoEProgressCallback callback) 设置 FoE 进度回调booleanFOEWrite(short masterIndex, short slave, String filename, int password, com.sun.jna.Pointer fileData, int fileSize, int timeout) FoE 写入文件booleanFOEWriteEx(short masterIndex, short slave, String filename, int password, com.sun.jna.Pointer fileData, int fileSize, int timeout, DarraCore.FoEOptions options) FoE 扩展写入 (含选项)booleanForceRedundancyFailover(short masterIndex) 强制冗余故障切换voidFreeMemory(com.sun.jna.Pointer ptr) 释放 DLL 分配的内存voidFreeMultiSlaveSDOList(com.sun.jna.Pointer[] results, int count) 释放批量 SDO 列表分配的内存booleanFSoECheckWatchdog(short masterIndex, short slaveIndex) 检查看门狗状态voidFSoEClearError(short masterIndex, short slaveIndex) 清除 FSoE 错误booleanFSoECloseConnection(short masterIndex, short slaveIndex) 关闭 FSoE 连接booleanFSoEDownloadParameters(short masterIndex, short slaveIndex, byte[] paramData, int paramSize, com.sun.jna.ptr.IntByReference sraCrc) 下载安全参数 (在 PARAMETER 状态)shortFSoEGetConnectionCount(short masterIndex) 获取主站的 FSoE 连接数intFSoEGetLastError(short masterIndex, short slaveIndex) 获取最后的 FSoE 错误intFSoEGetState(short masterIndex, short slaveIndex) 获取当前 FSoE 状态booleanFSoEGetStatus(short masterIndex, short slaveIndex, DarraCore.FSoEStatus status) 获取 FSoE 连接状态booleanFSoEInitConnection(short masterIndex, short slaveIndex, DarraCore.FSoEConfig config) 初始化从站的 FSoE 连接booleanFSoEIsSlaveCapable(short masterIndex, short slaveIndex) 检查从站是否支持 FSoEvoidFSoEProcessCycle(short masterIndex) 处理 FSoE 帧 (由 PDO 循环调用)booleanFSoEReadSafeInput(short masterIndex, short slaveIndex, byte[] data, com.sun.jna.ptr.IntByReference size) 读取安全输入数据booleanFSoERequestState(short masterIndex, short slaveIndex, int targetState) 请求 FSoE 状态转换booleanFSoEReset(short masterIndex, short slaveIndex) 重置 FSoE 连接到初始状态booleanFSoESetFailsafeOutput(short masterIndex, short slaveIndex, byte[] data, int size) 设置失效安全输出值booleanFSoEValidateConnId(short connId) 校验 FSoE Connection ID 是否可用 / validate FSoE Connection ID availability.booleanFSoEWriteSafeOutput(short masterIndex, short slaveIndex, byte[] data, int size) 写入安全输出数据byteGetActiveGroupCount(short masterIndex) 获取活动组数量int获取可用 CPU 核心数longGetBigGapUnknownCount(short mi) 大间隙未知原因计数 (uint64).intGetBreakPoints(short masterIndex, short[] outSlaves, byte[] outPorts, byte[] outTypes, short maxResults) 获取断点信息com.sun.jna.PointerGetCommunicationStats(short masterIndex) 获取通信统计信息指针longGetCycleCount(short masterIndex) 获取已完成 PDO 周期总计数 (一致性读取判帧新鲜度用). unsigned uint64, Java long 容纳.com.sun.jna.PointerGetCycleEventHandle(short masterIndex) 获取周期事件内核句柄 (用户态可 WaitForSingleObject 等待 PDO 周期边界).com.sun.jna.PointerGetCycleEventName(short masterIndex) 获取周期事件命名 (跨进程打开同一 named event 用).booleanGetDCAutoShiftEnabled(short masterIndex) 获取 DC 自动偏移状态byteGetDcSyncMode(short masterIndex, short slaveIndex) 读取从站当前 SyncManager 同步类型 (内部读 0x1C32:01 / 0x1C33:01).com.sun.jna.PointerGetDetailedDiagnostics(short masterIndex) 获取详细诊断信息指针com.sun.jna.Pointer获取设备名称booleanGetDiagnosticsEnabled(short masterIndex) 获取诊断功能启用状态com.sun.jna.PointerGetDiagnosticsPointer(short masterIndex) 获取诊断指针 (零拷贝)com.sun.jna.Pointer获取 DLL 版本信息 (返回指针, 需用 DllVersionInfo 解析)com.sun.jna.Pointer获取驱动列表com.sun.jna.Pointer取内核驱动版本信息 (Core.dll 端缓存, 多次调用免费, 失败时 Available=0).shortGetExpectedWKC(short masterIndex) 获取期望的工作计数器shortGetGroupActualWKC(short masterIndex, byte group) 组实际 WKC (与 GetGroupExpectedWKC 配对)byteGetGroupCycleDivider(short masterIndex, byte group) 获取组周期分频voidGetGroupDiag(short masterIndex, byte group, com.sun.jna.ptr.ShortByReference miss, com.sun.jna.ptr.IntByReference total, com.sun.jna.ptr.IntByReference mismatch) 组诊断: miss/total/mismatch (与 C# GetGroupDiag 签名对齐)booleanGetGroupEnabled(short masterIndex, byte group) 获取组是否启用shortGetGroupExpectedWKC(short masterIndex, byte group) 获取组预期 WKCshortGetGroupSlaveCount(short masterIndex, byte group) 获取组内从站数量byteGetIO(short masterIndex, short slave, com.sun.jna.ptr.IntByReference outByteSize, com.sun.jna.ptr.PointerByReference outByte, com.sun.jna.ptr.IntByReference inByteSize, com.sun.jna.ptr.PointerByReference inByte) 获取从站 IO 数据指针floatGetLateFrameRate(short masterIndex) [2026-04-27] 过慢帧率 (0.0~1.0) — idx 出 8 帧窗 stale, 不计入丢包byteGetLinkStatus(short masterIndex) 获取链路状态shortGetMappedSlaveCount(short masterIndex) DLL 已向内核下发映射的 slave 数 (契约就绪度). >0 = WcState 可信; 0 = 不可信(应显"未知").longGetMasterDCTime(short masterIndex) 主站最近一次 PDO 周期取回的 64-bit DC 系统时间 (纳秒, ETG 2000-01-01 纪元).booleanGetMasterDiagData(short masterIndex, DarraCore.MasterDiagData diag) 获取主站诊断数据 (ETG.1510 对象 0xF120)booleanGetMasterIdentity(short masterIndex, DarraCore.MasterIdentity identity) 获取主站身份信息 (ETG.1510 对象 0x1018)com.sun.jna.PointerGetMasterState(short masterIndex) 获取主站状态指针com.sun.jna.PointerGetMasterStateCache(short masterIndex) 获取线程安全状态缓存指针int获取最大主站实例数intGetMaxPropagationDelay(short masterIndex) 获取最大传播延迟 (纳秒)intGetMaxSyncDifference(short masterIndex) 获取最大同步偏差 (纳秒)intGetMultiSlaveSDOList(short masterIndex, short[] slaveIndices, int count, com.sun.jna.Pointer[] results) 批量读取多个从站的 SDO 对象字典 (流水线并行)booleanGetMutexProtection(short masterIndex) 获取 Mutex 保护状态intGetNetworkInfo(boolean isRedundant, boolean needSlavesNum) 获取网络信息 (网卡列表数量)com.sun.jna.Pointer获取网络列表指针floatGetPacketLossRate(short masterIndex) [2026-04-27] 丢包率 (0.0~1.0) — TX vs RX, 5 秒滑窗voidGetPDOFrameLossStats(short masterIndex, byte group, com.sun.jna.ptr.IntByReference totalLost, com.sun.jna.ptr.IntByReference consecutiveLost, com.sun.jna.ptr.IntByReference maxConsecutiveLost) 获取 PDO 丢帧统计byteGetPDOMapping(short masterIndex, short slaveIndex, short pdoType, com.sun.jna.Pointer mappingBuffer, int bufferSize, com.sun.jna.ptr.IntByReference mappingCount) 获取 PDO 映射.com.sun.jna.PointerGetPDOStats(short masterIndex, short slaveIndex) 获取 PDO 统计信息指针 (指向 native pdo_stats_t, 用解析).引用无效
Structures.PDOStatsintGetPDOThreadCpuAffinity(short masterIndex) 获取 PDO 线程 CPU 亲和性short全局 primary 工作计数器 (无 master 参数, kernel 全局共享)shortGetPrimaryWKCEx(short masterIndex) 主发帧实测 WKC. unsigned, 上层& 0xFFFF.boolean获取实时优化状态int获取冗余处理模式com.sun.jna.PointerGetRedundancyStatus(short masterIndex) 获取冗余状态指针shortGetReferenceClockSlaveIndex(short masterIndex) 当前参考时钟从站索引 (1-based).intGetRingMode(short masterIndex) 获取环拓扑冗余模式 (0=Inactive, 1=Dual, 2=Degraded)int获取环形拓扑从站数量longGetRtPreemptCount(short mi) RT 线程被抢占累计次数 (uint64).intGetRtPreemptPeakNs(short mi) RT 线程被抢占峰值时长 ns (uint32).int获取已扫描从站数量booleanGetScannedSlaveInfo(int index, com.sun.jna.ptr.IntByReference vendorId, com.sun.jna.ptr.IntByReference productCode, com.sun.jna.ptr.IntByReference revision, com.sun.jna.ptr.IntByReference serial, byte[] name, int nameSize, com.sun.jna.ptr.ShortByReference configAddr, com.sun.jna.ptr.ShortByReference aliasAddr, com.sun.jna.ptr.ShortByReference parent, com.sun.jna.ptr.ByteByReference topology, com.sun.jna.ptr.ByteByReference activePorts, com.sun.jna.ptr.ByteByReference entryPort, com.sun.jna.ptr.ByteByReference parentPort, com.sun.jna.ptr.ByteByReference ptype) 获取已扫描从站信息booleanGetSecondaryLinkStatus(short masterIndex) 获取冗余链路状态short全局 secondary 工作计数器shortGetSecondaryWKCEx(short masterIndex) 副发帧实测 WKC. unsigned, 上层& 0xFFFF.com.sun.jna.Pointer获取设备序列号com.sun.jna.PointerGetSlave(short masterIndex, short slaveIndex) 获取从站结构体指针byteGetSlaveActivePorts(short masterIndex, short slaveIndex) 获取从站活动端口shortGetSlaveAliasAddr(short masterIndex, short slaveIndex) 获取从站别名地址shortGetSlaveALStatusCode(short masterIndex, short slaveIndex) 获取从站 ALStatusCodeshortGetSlaveALStatusCodeLive(short masterIndex, short slaveIndex) 获取从站 ALStatusCode (强制实时读, 绕过缓存; 对应 GetSlaveALStatusCodeLive).shortGetSlaveAlStatusMirror(short masterIndex, short slaveIndex) 从站 AL 状态镜像 (16bit raw): 低字节 AL State (bit4=Error), 有 Error 时高字节为 AL Status Code.booleanGetSlaveBlockLRW(short masterIndex, short slaveIndex) 获取从站 BlockLRW 标志byteGetSlaveCoEDetails(short masterIndex, short slaveIndex) 获取从站 CoE 详情shortGetSlaveConfigAddr(short masterIndex, short slaveIndex) 获取从站配置地址byteGetSlaveConsumedPorts(short masterIndex, short slaveIndex) 获取从站已使用端口shortGetSlaveDCActive(short masterIndex, short slaveIndex) 获取从站 DC AssignActivate 值intGetSlaveDCCycle0(short masterIndex, short slaveIndex) 获取从站 SYNC0 周期 (纳秒)intGetSlaveDCCycle1(short masterIndex, short slaveIndex) 获取从站 SYNC1 周期 (纳秒)shortGetSlaveDCNext(short masterIndex, short slaveIndex) 获取从站 DC 下一个索引shortGetSlaveDCPrevious(short masterIndex, short slaveIndex) 获取从站 DC 上一个索引intGetSlaveDCReceiveTimeA(short masterIndex, short slaveIndex) 获取从站端口 A 接收时间 (纳秒)intGetSlaveDCReceiveTimeB(short masterIndex, short slaveIndex) 获取从站端口 B 接收时间 (纳秒)intGetSlaveDCReceiveTimeC(short masterIndex, short slaveIndex) 获取从站端口 C 接收时间 (纳秒)intGetSlaveDCReceiveTimeD(short masterIndex, short slaveIndex) 获取从站端口 D 接收时间 (纳秒)intGetSlaveDCShift(short masterIndex, short slaveIndex) 获取从站 DC 偏移 (纳秒)com.sun.jna.PointerGetSlaveDetailedInfo(short masterIndex, short slaveIndex) 获取从站详细信息 (JSON 指针)booleanGetSlaveDeviceEmulationFlag(short masterIndex, short slaveIndex) 获取从站设备仿真标志intGetSlaveDeviceName(short masterIndex, short slaveIndex, byte[] buf, int bufSize) 获取从站设备名称 (SDO 0x1008).shortGetSlaveEbusCurrent(short masterIndex, short slaveIndex) 获取从站 E-bus 电流 (mA)booleanGetSlaveEep8Byte(short masterIndex, short slaveIndex) 获取从站 EEPROM 8字节寻址byteGetSlaveEepPDI(short masterIndex, short slaveIndex) 获取从站 PDI 类型byteGetSlaveEntryPort(short masterIndex, short slaveIndex) 获取从站入口端口byteGetSlaveEoEDetails(short masterIndex, short slaveIndex) 获取从站 EoE 详情booleanGetSlaveEsiVersion(short masterIndex, short slaveIndex, byte[] buf, int bufSize) 获取从站 ESI 版本 (写入缓冲区, 返回是否成功)booleanGetSlaveEsmTimeouts(short masterIndex, short slaveIndex, DarraCore.EsmTimeouts timeouts) 获取从站 ESM 超时配置byteGetSlaveFMMU0Function(short masterIndex, short slaveIndex) 获取从站 FMMU0 功能byteGetSlaveFMMU1Function(short masterIndex, short slaveIndex) 获取从站 FMMU1 功能byteGetSlaveFMMU2Function(short masterIndex, short slaveIndex) 获取从站 FMMU2 功能byteGetSlaveFMMU3Function(short masterIndex, short slaveIndex) 获取从站 FMMU3 功能byteGetSlaveFoEDetails(short masterIndex, short slaveIndex) 获取从站 FoE 详情byteGetSlaveFreeRunDemoted(short masterIndex, short slaveIndex) 从站是否被降级为 free-run (邮箱半失效自动降级): 1=已降级, 0=正常, 0xFF=未知.byteGetSlaveGroup(short masterIndex, short slaveIndex) 获取从站所属组booleanGetSlaveHasDC(short masterIndex, short slaveIndex) 获取从站是否支持 DCbooleanGetSlaveHasEsi(short masterIndex, short slaveIndex) 获取从站是否已加载 ESIbooleanGetSlaveHasMDP(short masterIndex, short slaveIndex) 获取从站是否支持 MDPintGetSlaveHealthDegradedCount(short masterIndex, short slaveIndex) 从站健康降级累计次数 (诊断计数, 单调递增). unsigned uint32, 上层& 0xFFFFFFFFL.booleanGetSlaveIdentity(short masterIndex, short slaveIndex, DarraCore.SlaveIdentity identity) 获取从站身份信息shortGetSlaveInputBits(short masterIndex, short slaveIndex) 获取从站输入位数intGetSlaveInputBytes(short masterIndex, short slaveIndex) 获取从站输入字节数intGetSlaveInputOffset(short masterIndex, short slaveIndex) 获取从站输入偏移byteGetSlaveInputStartBit(short masterIndex, short slaveIndex) 获取从站输入起始位booleanGetSlaveIsLost(short masterIndex, short slaveIndex) 获取从站是否丢失shortGetSlaveLinkQuality(short masterIndex, short slaveIndex) 获取从站链路质量byteGetSlaveMailboxHealth(short masterIndex, short slaveIndex) 从站邮箱健康度: 1=健康, 0=半失效, 0xFF=未知.shortGetSlaveMailboxProto(short masterIndex, short slaveIndex) 获取从站邮箱协议类型shortGetSlaveMailboxReadLength(short masterIndex, short slaveIndex) 获取从站邮箱读取长度shortGetSlaveMailboxReadOffset(short masterIndex, short slaveIndex) 获取从站邮箱读取偏移shortGetSlaveMailboxWriteLength(short masterIndex, short slaveIndex) 获取从站邮箱写入长度shortGetSlaveMailboxWriteOffset(short masterIndex, short slaveIndex) 获取从站邮箱写入偏移byteGetSlaveMbxCount(short masterIndex, short slaveIndex) 获取从站邮箱计数器intGetSlaveName(short masterIndex, short slaveIndex, byte[] buf, int bufSize) 获取从站名称 (EEPROM).booleanGetSlaveNeedsStartupReconfig(short masterIndex, short slaveIndex) 获取从站是否需要启动重配置booleanGetSlaveOpOnlyFlag(short masterIndex, short slaveIndex) 获取从站 OpOnly 标志booleanGetSlaveOptional(short masterIndex, short slaveIndex) 获取从站可选标志shortGetSlaveOutputBits(short masterIndex, short slaveIndex) 获取从站输出位数intGetSlaveOutputBytes(short masterIndex, short slaveIndex) 获取从站输出字节数intGetSlaveOutputOffset(short masterIndex, short slaveIndex) 获取从站输出偏移byteGetSlaveOutputStartBit(short masterIndex, short slaveIndex) 获取从站输出起始位shortGetSlaveParent(short masterIndex, short slaveIndex) 获取从站父节点索引 (uint16).byteGetSlaveParentPort(short masterIndex, short slaveIndex) 获取从站父端口shortGetSlaveParentStation(short masterIndex, short slaveIndex) 获取从站父站地址intGetSlavePDelay(short masterIndex, short slaveIndex) 获取从站传播延迟byteGetSlavePhysicalType(short masterIndex, short slaveIndex) 获取从站物理类型com.sun.jna.PointerGetSlavePointer_SDO(short masterIndex, short slaveIndex, short oeIndex) 获取从站 SDO 对象字典条目指针com.sun.jna.PointerGetSlavePointer_SDO_IndexValue(short masterIndex, short slaveIndex, short index, byte subidx, com.sun.jna.ptr.IntByReference outByteSize) SDO 值读取 (按 OD 索引 + 子索引)com.sun.jna.PointerGetSlavePointer_SDO_Value(short masterIndex, short slaveIndex, short odIndex, byte oeIndex, com.sun.jna.ptr.IntByReference outByteSize) SDO 值读取 (按 OD 索引 + 子索引偏移)com.sun.jna.PointerGetSlavePointer_SDO_WithODList(short masterIndex, short slaveIndex, short oeIndex, com.sun.jna.Pointer odlist) 优化版 SDO 读取 (使用已有的 ODList)com.sun.jna.PointerGetSlavePortErrorStats(short masterIndex, short slaveIndex) 获取从站端口错误统计指针booleanGetSlavePrimaryLinkBroken(short masterIndex, short slaveIndex) 获取从站主线路是否断路intGetSlaveProductCode(short masterIndex, short slaveIndex) 获取从站产品代码intGetSlavePropagationDelay(short masterIndex, short slaveIndex) 获取从站传播延迟 (纳秒)booleanGetSlaveRedundancyActivated(short masterIndex, short slaveIndex) 获取从站冗余是否已激活intGetSlaveRevision(short masterIndex, short slaveIndex) 获取从站修订版本号com.sun.jna.PointerGetSlaveSDOList(short masterIndex, short slaveIndex) 获取从站 SDO 对象字典列表指针com.sun.jna.PointerGetSlaveSDOListBasic(short masterIndex, short slaveIndex) 获取从站 SDO 对象字典基本列表指针booleanGetSlaveSecondaryLinkBroken(short masterIndex, short slaveIndex) 获取从站冗余线路是否断路intGetSlaveSerialNumber(short masterIndex, short slaveIndex) 获取从站序列号shortGetSlaveSMLength(short masterIndex, short slaveIndex, byte smIdx) 查询从站 SyncManager 长度 (字节, 主机字节序).byteGetSlaveSoEDetails(short masterIndex, short slaveIndex) 获取从站 SoE 详情byteGetSlaveState(short masterIndex, short slaveIndex) 获取从站状态byteGetSlaveStateLive(short masterIndex, short slaveIndex) 获取从站状态 (强制实时读, 绕过缓存; 对应 GetSlaveStateLive)booleanGetSlaveSupportsFrameRepeat(short masterIndex, short slaveIndex) 获取从站帧重发支持标志booleanGetSlaveSyncWindowStatus(short masterIndex, short slaveIndex, com.sun.jna.ptr.IntByReference diffNs, com.sun.jna.ptr.IntByReference maxDiffNs, com.sun.jna.ptr.IntByReference minDiffNs, com.sun.jna.ptr.IntByReference inSync, com.sun.jna.ptr.IntByReference outOfSyncCount) 获取从站同步窗口状态byteGetSlaveTopologyType(short masterIndex, short slaveIndex) 获取从站拓扑类型intGetSlaveVendorId(short masterIndex, short slaveIndex) 获取从站厂商 IDintGetSlaveVendorName(short masterIndex, short slaveIndex, com.sun.jna.Pointer buf, int bufLen) 获取从站厂商名称 (写入缓冲区, 返回实际长度)booleanGetSlaveWatchdogConfig(short masterIndex, short slaveIndex, DarraCore.WatchdogConfig config) 获取从站看门狗配置booleanGetSlaveWatchdogStatus(short masterIndex, short slaveIndex, DarraCore.WatchdogStatus status) 获取从站看门狗状态byteGetSlaveWcState(short masterIndex, short slaveIndex) 从站本周期是否贡献应有 WKC: 1=贡献(在线), 0=没贡献(疑似掉站), 0xFF(=-1)=未知(契约未就绪).intGetSmiMsrAvailable(short mi) SMI MSR 是否可用 (uint32, 1=可用).intGetStartupParameterCount(short masterIndex, short slaveIndex) 获取启动参数数量com.sun.jna.PointerGetSummaryPointer(short masterIndex) 获取摘要指针 (零拷贝)intGetSyncWindowThreshold(short masterIndex) 获取同步窗口阈值intGetTimingMode(short masterIndex) 获取定时模式intGetTopology(short master_index, com.sun.jna.Pointer out_nodes, int max_nodes) 获取拓扑信息, 返回从站数量shortGetTopoPriIntact(short masterIndex) 主拓扑环路完好性 (内核每周期实测). unsigned, 上层& 0xFFFF.shortGetTopoSecIntact(short masterIndex) 冗余拓扑环路完好性 (内核每周期实测). unsigned, 上层& 0xFFFF.booleanGetUdpMode(short masterIndex) 获取 UDP 模式com.sun.jna.Pointer获取用户邮箱shortGetWcDeficit(short masterIndex) WKC 缺口 (= WkcExpectedMirror - WkcActualMirror, 内核如实算永不下调 expected)longGetWcStateSeq(short masterIndex) per-slave 诊断序列号 (内核每 PDO 周期 +1).intGetWdkDiagCounter(short mi, int counterId) WDK 通用诊断计数器 (uint32).intGetWdkDispatchCycleMaxJitterNs(short mi) WDK 调度周期最大抖动 ns (uint32).intGetWdkDrainCycleMaxJitterNs(short mi) WDK 排空周期最大抖动 ns (uint32).intGetWdkJitterHistBin(short mi, int binIndex) WDK 抖动直方图指定 bin 计数 (uint32).intGetWdkJitterInstrumentVer(short mi) WDK 抖动仪表版本号 (uint32).intGetWdkJitterLastWakeDeltaNs(short mi) WDK 上次唤醒偏差 ns (int, 可正可负).intGetWdkJitterMinNs(short mi) WDK 抖动最小值 ns (uint32).longGetWdkJitterTotalSamples(short mi) WDK 抖动样本总数 (uint64).intGetWdkKtimerWakeNormalCnt(short mi) WDK KTIMER 正常唤醒计数 (uint32).intGetWdkKtimerWakeOverrunCnt(short mi) WDK KTIMER 超时唤醒计数 (uint32).booleanGetWdkMode(short masterIndex) 获取 WDK 模式intGetWdkPathCountFast(short mi) WDK 快路径处理计数 (uint32).intGetWdkPathCountMed(short mi) WDK 中路径处理计数 (uint32).intGetWdkPathCountSlow(short mi) WDK 慢路径处理计数 (uint32).intGetWdkPrimaryFrameRx(short masterIndex) 主网卡 RX 帧累计intGetWdkPrimaryFrameTx(short masterIndex) 主网卡 TX 帧累计 (kernel WDK 直读)intGetWdkRtCpuIndex(short mi) WDK RT 线程绑定 CPU 序号 (int, -1=未绑).intGetWdkRxCpuIndex(short mi) WDK RX 线程绑定 CPU 序号 (int, -1=未绑).intGetWdkSecondaryFrameRx(short masterIndex) 副网卡 RX 帧累计intGetWdkSecondaryFrameTx(short masterIndex) 副网卡 TX 帧累计com.sun.jna.Pointer获取 Windows 产品密钥shortGetWkcActualMirror(short masterIndex) 聚合 LRW WKC 实测镜像 (= 本周期响应 slave 总数).shortGetWkcExpectedMirror(short masterIndex) 期望 WKC 镜像 (配置期/进 OP 确定的固定真值, 拓扑固定即固定, 绝不篡改迁就劣化总线).intHotConnectAddGroup(short masterIndex, short groupId, short alias, int vendorId, int productCode) 注册 Hot-Connect 组.voidHotConnectClearAll(short masterIndex) 清空所有 Hot-Connect 组.intHotConnectEnumerate(short masterIndex, com.sun.jna.Pointer outBuf, int max) 枚举所有 Hot-Connect 组 (out_buf 必须是连续 hotconnect_group_t[max] 缓冲).intHotConnectGetGroupCount(short masterIndex) 当前已注册组数.intHotConnectGetGroupStatus(short masterIndex, short groupId) 查询组状态.intHotConnectRemoveGroup(short masterIndex, short groupId) 移除 Hot-Connect 组.intHotSwapRebuild(short masterIndex) [roundHOTSWAP1 2026-06-08] 运行中一次性热插拔重建拓扑 (重扫从站+重建拓扑图+恢复 OP, 不停总线).short初始化主站, 返回主站编号shortInitializeSpecificMaster(short masterIndex) 初始化指定编号的主站, 返回主站编号 (uint16).void装/卸驱动后调, 清除运行库内缓存的驱动版本结果.booleanIsAllSlavesInSync(short masterIndex) 检查所有从站是否同步byte获取 PDO 监控启用状态.booleanIsUdpAvailable(short masterIndex) 检查 UDP 是否可用booleanIsWdkAvailable(short masterIndex) 检查 WDK 是否可用intLicenseActivate(String activationCode, byte[] errBuf, int errBufLen) 激活授权。intLoadConfigJson(short masterIndex, String jsonStr) 从 JSON 加载配置voidLockIOmap(short masterIndex) 锁定 IOmap (PDO 数据读写前调用)intPDOBatchRead(short masterIndex, short[] slaveIndices, int slaveCount, com.sun.jna.Pointer[] dataBuffers, int[] bufferSizes, int[] bytesRead) PDO 批量读取.intPDOBatchWrite(short masterIndex, short[] slaveIndices, int slaveCount, com.sun.jna.Pointer[] dataBuffers, int[] dataSizes) PDO 批量写入.bytePDOReadDirect(short masterIndex, short slaveIndex, short pdoIndex, com.sun.jna.Pointer dataBuffer, int bufferSize, com.sun.jna.ptr.IntByReference bytesRead) PDO 直接读取.floatPDOReadInputF32(short mi, short si, int off) 读取输入 PDO: 32 位浮点shortPDOReadInputI16(short mi, short si, int off) 读取输入 PDO: 有符号 16 位intPDOReadInputI32(short mi, short si, int off) 读取输入 PDO: 有符号 32 位shortPDOReadInputU16(short mi, short si, int off) 读取输入 PDO: 无符号 16 位intPDOReadInputU32(short mi, short si, int off) 读取输入 PDO: 无符号 32 位bytePDOReadInputU8(short mi, short si, int off) 读取输入 PDO: 无符号 8 位shortPdoReadInt16(short master, short slave, int offset) 类型化读取 PDO: 有符号 16 位 (int16_t).intPdoReadInt32(short master, short slave, int offset) 类型化读取 PDO: 有符号 32 位 (int32_t).bytePdoReadInt8(short master, short slave, int offset) 类型化读取 PDO: 有符号 8 位 (int8_t).shortPdoReadUint16(short master, short slave, int offset) 类型化读取 PDO: 无符号 16 位 (uint16_t).intPdoReadUint32(short master, short slave, int offset) 类型化读取 PDO: 无符号 32 位 (uint32_t).bytePdoReadUint8(short master, short slave, int offset) 类型化读取 PDO: 无符号 8 位 (uint8_t).bytePDOWriteDirect(short masterIndex, short slaveIndex, short pdoIndex, com.sun.jna.Pointer dataBuffer, int dataSize) PDO 直接写入.voidPdoWriteInt16(short master, short slave, int offset, short value) 类型化写入 PDO: 有符号 16 位 (int16_t).voidPdoWriteInt32(short master, short slave, int offset, int value) 类型化写入 PDO: 有符号 32 位 (int32_t).voidPdoWriteInt8(short master, short slave, int offset, byte value) 类型化写入 PDO: 有符号 8 位 (int8_t).booleanPDOWriteOutputF32(short mi, short si, int off, float val) 写入输出 PDO: 32 位浮点booleanPDOWriteOutputI16(short mi, short si, int off, short val) 写入输出 PDO: 有符号 16 位booleanPDOWriteOutputI32(short mi, short si, int off, int val) 写入输出 PDO: 有符号 32 位booleanPDOWriteOutputU16(short mi, short si, int off, short val) 写入输出 PDO: 无符号 16 位booleanPDOWriteOutputU32(short mi, short si, int off, int val) 写入输出 PDO: 无符号 32 位booleanPDOWriteOutputU8(short mi, short si, int off, byte val) 写入输出 PDO: 无符号 8 位voidPdoWriteUint16(short master, short slave, int offset, short value) 类型化写入 PDO: 无符号 16 位 (uint16_t).voidPdoWriteUint32(short master, short slave, int offset, int value) 类型化写入 PDO: 无符号 32 位 (uint32_t).voidPdoWriteUint8(short master, short slave, int offset, byte value) 类型化写入 PDO: 无符号 8 位 (uint8_t).intQuickFindRedundantPairBatch(String[] adapterNames, int adapterCount, com.sun.jna.ptr.IntByReference primaryIdx, com.sun.jna.ptr.IntByReference secondaryIdx, com.sun.jna.ptr.IntByReference ringCount, com.sun.jna.ptr.IntByReference totalCount) 快速批量查找冗余网卡对intQuickSlaveCount(String adapterName) 快速检测网卡上的从站数量intReadAllSlavePortErrorCounters(short masterIndex) 读取所有从站端口错误计数器booleanReadSlaveDLPORT(short masterIndex, short slaveIndex, com.sun.jna.ptr.ByteByReference dlportValue) 读取从站 DL Port 控制寄存器 (0x0101), 读出值回填 dlportValue.intReadSlaveInfo(String adapterName) 读取从站详细信息booleanReadSlavePortErrorCounters(short masterIndex, short slaveIndex, byte[] rxError, byte[] invalidFrame, byte[] lostLink) 读取从站端口错误计数器booleanReadSlaveRegister(short masterIndex, short slaveIndex, short registerAddr, byte[] data, int dataLength) 读取从站寄存器 (FPRD)voidRecordPDOCycleStart(short masterIndex) 记录 PDO 周期开始voidRecordWKC(short masterIndex, short wkc) 记录工作计数器booleanRecoverSlaveMailboxHealth(short masterIndex, short slaveIndex) 主动修复从站残留 A 邮箱半失效状态.void注册紧急事件回调void注册输入数据变化回调。void注册 PDO 丢帧回调void注册 PDO 周期异步回调。void注册 PDO 周期同步回调void注册冗余模式变化回调void注册从站发现异步回调void注册从站发现同步回调void注册从站身份不符回调 (v2 热插拔自修复)void注册从站端口链路变化回调 (断线检测)void注册从站 PreOP 重配置回调void注册从站状态变化异步回调void注册从站状态变化同步回调void注册 SoE Emergency 回调 / register SoE Emergency callback.void注册 SoE Notification 回调 / register SoE Notification callback.boolean移除实时优化void重置网络中止标志voidResetCommunicationStats(short masterIndex) 重置通信统计voidResetDiagnostics(short masterIndex) 重置诊断信息voidResetPDOFrameLossStats(short masterIndex, byte group) 重置 PDO 丢帧统计voidResetPDOStats(short masterIndex, short slaveIndex) 重置 PDO 统计void重置扫描中止标志booleanResetSlavePortErrorCounters(short masterIndex, short slaveIndex) 重置从站端口错误计数器voidResetSlaveSyncWindowStats(short masterIndex, short slaveIndex) 重置从站同步窗口统计intScanSlaveInfo(String primary, String secondary) 完整扫描从站信息 (单端口/冗余通用, 与 SetNetwork/Build 完全相同的扫描逻辑).intSDOAbort_GetCategory(int abortCode) com.sun.jna.PointerSDOAbort_GetDescription(int abortCode) com.sun.jna.PointerSDOAbort_GetHint(int abortCode) intSDOAbort_IsRetryable(int abortCode) com.sun.jna.PointerSDOread(short masterIndex, short slaveIndex, short index, byte subindex, boolean CA, com.sun.jna.ptr.IntByReference outByteSize) SDO 读取booleanSDOwrite(short masterIndex, short slave, short index, byte subindex, boolean CA, com.sun.jna.Pointer data, int length) SDO 写入intSetAllSlavePdiWatchdog(short masterIndex, int timeoutMs) 为所有从站设置统一PDI看门狗超时intSetAllSlaveWatchdog(short masterIndex, int timeoutMs) 为所有从站设置统一看门狗超时void设置崩溃通知回调voidSetDCAutoShiftEnabled(short masterIndex, boolean enable) 设置 DC 自动偏移启用void设置 DC 同步丢失回调booleanSetDcSyncMode(short masterIndex, short slaveIndex, byte syncType) 配置从站 SyncManager 同步类型 (协议算法下沉到 native 层).voidSetDebugLogging(boolean enable) 启用/禁用调试日志voidSetDiagnosticsEnabled(short masterIndex, boolean enable) 启用/禁用诊断功能voidSetExpectedWKC(short masterIndex, short expectedWkc) 设置期望的工作计数器booleanSetGroupCycleDivider(short masterIndex, byte group, byte divider) 设置组周期分频booleanSetGroupEnabled(short masterIndex, byte group, boolean enabled) 设置组启用/禁用voidSetLogCallback(DarraCore.LogCallback callback) 设置日志回调voidSetMailboxLogging(boolean enable) 启用/禁用邮箱日志booleanSetMasterCpuAffinity(short masterIndex, int cpuCore) 设置主站 CPU 亲和性voidSetMasterDCCycleTime(short masterIndex, int timeNs) 设置主站 DC 循环时间 (纳秒)voidSetMasterLoopCycleTime(short masterIndex, int timeNs) 设置主站 PDO 循环时间 (纳秒)voidSetMutexProtection(short masterIndex, boolean enable) 设置 Mutex 保护intSetNetwork(short masterIndex, String adapter, String redundant) 设置网络适配器voidSetPDOLogging(boolean enable) 启用/禁用 PDO 日志booleanSetPDOThreadCpuAffinity(short masterIndex, int cpuCore) 设置 PDO 线程 CPU 亲和性booleanSetProcessCpuAffinity(int cpuCore) 设置进程 CPU 亲和性voidSetRedProcessdata(int mode) 设置冗余处理模式booleanSetSlaveErrorAck(short masterIndex, short slaveIndex, boolean setAck) 设置从站错误确认intSetSlaveEsiFile(short masterIndex, short slaveIndex, String name) 设置从站 ESI 文件路径booleanSetSlaveEsmTimeouts(short masterIndex, short slaveIndex, DarraCore.EsmTimeouts timeouts) 设置从站 ESM 超时配置booleanSetSlaveGroup(short masterIndex, short slaveIndex, byte group) 设置从站所属组booleanSetSlaveOptional(short masterIndex, short slaveIndex, boolean isOptional) 设置从站为可选booleanSetSlavePdiWatchdog(short masterIndex, short slaveIndex, int timeoutMs) 设置从站 PDI 看门狗超时 (毫秒)booleanSetSlaveStateWithTimeout(short masterIndex, short slaveIndex, int state, int timeoutMs) 单个从站状态转换 (带超时)booleanSetSlaveSupportsFrameRepeat(short masterIndex, short slaveIndex, boolean supports) 设置从站帧重发支持标志booleanSetSlaveWatchdog(short masterIndex, short slaveIndex, int timeoutMs) 设置从站看门狗超时 (毫秒)booleanSetState(short masterIndex, int state) 设置主站状态 (不带启动参数)booleanSetStateSequence(short masterIndex, int targetState, int timeoutMs) 一步到位状态转换: 自动链式 (Init->PreOp->SafeOp->OP)booleanSetStateWithStartup(short masterIndex, int targetState, int timeoutMs) 单步状态转换 + 自动执行 Before/After 启动参数booleanSetStateWithTimeout(short masterIndex, int state, int timeoutMs) 带超时的状态转换voidSetSyncBySlaveIndex(short masterIndex, short slaveIndex, int sync0Ns, int sync1Ns, int shiftNs) 设置从站 DC 同步参数voidSetSyncWindowThreshold(short masterIndex, int thresholdNs) 设置同步窗口阈值 (纳秒)booleanSetUdpMode(short masterIndex, boolean enable) 设置 UDP 模式booleanSetWdkMode(short masterIndex, boolean enable) 设置 WDK 模式intSIIReadWord(short masterIndex, short slaveIndex, short wordAddr, com.sun.jna.ptr.ShortByReference outValue) 读取 SII EEPROM 单字 (返回 1=成功, 0=失败)intSIIWriteWord(short masterIndex, short slaveIndex, short wordAddr, short value) 写入 SII EEPROM 单字 (返回 1=成功, 0=失败)booleanSoERead(short masterIndex, short slave, byte driveNo, byte elementFlags, short idn, com.sun.jna.ptr.PointerByReference data, com.sun.jna.ptr.IntByReference dataSize, int timeout) SoE 读取booleanSoEReadAttributes(short masterIndex, short slave, byte driveNo, short idn, com.sun.jna.ptr.IntByReference attributes, int timeout) SoE 读取属性booleanSoEReadIDNList(short masterIndex, short slave, byte driveNo, com.sun.jna.ptr.PointerByReference idnList, com.sun.jna.ptr.IntByReference listCount, int timeout) SoE 读取 IDN 列表booleanSoEReadMinMax(short masterIndex, short slave, byte driveNo, short idn, com.sun.jna.ptr.PointerByReference minValue, com.sun.jna.ptr.IntByReference minSize, com.sun.jna.ptr.PointerByReference maxValue, com.sun.jna.ptr.IntByReference maxSize, int timeout) SoE 读取最小值/最大值booleanSoEReadName(short masterIndex, short slave, byte driveNo, short idn, com.sun.jna.ptr.PointerByReference name, com.sun.jna.ptr.IntByReference nameLength, int timeout) SoE 读取名称booleanSoEReadUnit(short masterIndex, short slave, byte driveNo, short idn, com.sun.jna.ptr.PointerByReference unit, com.sun.jna.ptr.IntByReference unitLength, int timeout) SoE 读取单位booleanSoEWrite(short masterIndex, short slave, byte driveNo, byte elementFlags, short idn, byte[] data, int dataSize, int timeout) SoE 写入voidStart(short masterIndex) 启动 PDO 循环线程和状态监控线程 (OP 状态后调用)booleanStartWdkRT(short masterIndex, int cycleUs, int cpuIndex) 启动 WDK 实时线程voidStop(short masterIndex) 停止 PDO 循环线程和状态监控线程booleanStopWdkRT(short masterIndex) 停止 WDK 实时线程intTopologyBuild(short master, DarraCore.TopologyNode[] out, int max) 构建网络拓扑intTopologyGetChildren(short master, short parent, short[] out, int max) 获取指定从站的子节点列表intTopologyGetRoots(short master, short[] out, int max) 获取拓扑根节点列表voidUnlockIOmap(short masterIndex) 解锁 IOmapvoid注销紧急事件回调void注销输入数据变化回调void注销 PDO 丢帧回调void注销 PDO 周期异步回调void注销 PDO 周期同步回调void注销冗余模式变化回调void注销从站发现异步回调void注销从站发现同步回调void注销从站身份不符回调void注销从站端口链路变化回调void注销从站 PreOP 重配置回调void注销从站状态变化异步回调void注销从站状态变化同步回调void注销 SoE Emergency 回调 (与注册成对; 对齐 C# DLL.SoE.cs).void注销 SoE Notification 回调 (与注册成对; 对齐 C# DLL.SoE.cs).void取消崩溃通知回调 (与 SetCrashCallback 成对)voidUnsetLogCallback(DarraCore.LogCallback callback) 取消日志回调 (与 SetLogCallback 成对)voidUpdateDiagnosticsSnapshot(short masterIndex) 更新诊断快照voidUpdateDiagnosticsWithESCErrors(short masterIndex) 使用 ESC 错误更新诊断intUpdatePropagationDelays(short masterIndex) 更新传播延迟booleanVerifyAllSlaveIdentities(short masterIndex, DarraCore.SlaveIdentity[] expectedIdentities, int slaveCount, boolean checkRevision, boolean checkSerial, long[] mismatchMask) 批量验证所有从站身份booleanVerifySlaveIdentity(short masterIndex, short slaveIndex, DarraCore.SlaveIdentity expected, boolean checkRev, boolean checkSerial) 验证从站身份boolean查询 VoE 监听线程是否运行.booleanVOEIsSupported(short masterIndex, short slave) VoE 是否支持booleanVOEReceive(short masterIndex, short slave, com.sun.jna.ptr.IntByReference vendorId, com.sun.jna.ptr.ShortByReference vendorType, com.sun.jna.ptr.PointerByReference data, com.sun.jna.ptr.IntByReference dataSize, int timeout) VoE 接收数据booleanVOEReceiveRaw(short masterIndex, short slave, com.sun.jna.ptr.PointerByReference frameData, com.sun.jna.ptr.IntByReference frameSize, int timeout) VoE 接收原始帧intVOERegisterNotification(short slave, int vendorId, short vendorType, DarraCore.VoENotificationCallback callback, com.sun.jna.Pointer userData) 注册 VoE 通知回调. slave=0 / vendorId=0 / vendorType=0 表示通配.booleanVOESend(short masterIndex, short slave, int vendorId, short vendorType, byte[] data, int dataSize, int timeout) VoE 发送数据booleanVOESendRaw(short masterIndex, short slave, byte[] frameData, int frameSize, int timeout) VoE 发送原始帧booleanVOEStartNotificationListener(short masterIndex) 启动 VoE 监听线程 (重入安全).boolean停止 VoE 监听线程 (全局, 非按 master).booleanVOEUnregisterNotification(int subscriptionIndex) 注销 VoE 通知回调.intWaitForCycleEvent(short masterIndex, int timeoutMs) 等待下一个 PDO 周期事件.booleanWriteSlaveDLPORT(short masterIndex, short slaveIndex, byte dlportValue) 写入从站 DL Port 控制寄存器 (0x0101).voidWriteSlaveOutput(short masterIndex, short slaveIndex, byte[] data, int size) 无锁输出写入voidWriteSlaveOutputByte(short masterIndex, short slaveIndex, int offset, byte value) 无锁输出字节写入booleanWriteSlaveRegister(short masterIndex, short slaveIndex, short registerAddr, byte[] data, int dataLength) 写入从站寄存器 (FPWR)
-
字段详细资料
-
ORDINALS
-
OPTIONS
JNA 加载选项: 安装FunctionMapper, 在加载时把 Java 业务方法名解析为库内对应的导出符号。 映射表中未列出的方法按原方法名解析。 -
INSTANCE
原生库单例实例 (使用 OPTIONS 中的 FunctionMapper 自动解析导出符号) -
CORE_OP_21
static final int CORE_OP_21- 另请参阅:
-
CORE_OP_22
static final int CORE_OP_22- 另请参阅:
-
CORE_OP_23
static final int CORE_OP_23- 另请参阅:
-
CORE_OP_24
static final int CORE_OP_24- 另请参阅:
-
CORE_OP_25
static final int CORE_OP_25- 另请参阅:
-
CORE_OP_26
static final int CORE_OP_26- 另请参阅:
-
CORE_OP_27
static final int CORE_OP_27- 另请参阅:
-
CORE_OP_28
static final int CORE_OP_28- 另请参阅:
-
CORE_FLAG_01
static final int CORE_FLAG_01- 另请参阅:
-
-
方法详细资料
-
GetDriverVersion
com.sun.jna.Pointer GetDriverVersion()取内核驱动版本信息 (Core.dll 端缓存, 多次调用免费, 失败时 Available=0). -
InvalidateDriverVersionCache
void InvalidateDriverVersionCache()装/卸驱动后调, 清除运行库内缓存的驱动版本结果. -
EnsureDriversRunning
int EnsureDriversRunning()探测并启动内核驱动服务 (DarraRT/DarraRT_Eth). 返回 0=OK, 负数=错误. -
GetSerialNumber
com.sun.jna.Pointer GetSerialNumber()获取设备序列号 -
GetDeviceName
com.sun.jna.Pointer GetDeviceName()获取设备名称 -
GetUserEmail
com.sun.jna.Pointer GetUserEmail()获取用户邮箱 -
GetWindowsProductKey
com.sun.jna.Pointer GetWindowsProductKey()获取 Windows 产品密钥 -
GetDriverList
com.sun.jna.Pointer GetDriverList()获取驱动列表 -
D1586Entry
int D1586Entry()roundDEEP1 内部入口 (序号绑定) -
D1590Entry
void D1590Entry()roundDEEP1 内部入口 (序号绑定) -
D1589Entry
boolean D1589Entry()roundDEEP1 内部入口 (序号绑定) -
LicenseActivate
激活授权。激活处理由运行库内部完成, 联网校验有约 3 秒超时。roundSDKSAN2 返回值: 0=成功, 非 0=失败 (具体语义由运行库内部定义), -1=异常。 失败原因文本经 errBuf 返回。
- 参数:
activationCode- 激活码 (UTF-8 字节)errBuf- 错误消息缓冲区 (UTF-8)errBufLen- 缓冲区大小
-
D_1737
int D_1737()roundSDKSAN2 内部入口。返回内部状态码: 0=未校验, 1=校验中, 2=已授权(唯一有效), 3=失败, 4=已过期, 5=机器不匹配, 6=时间回拨。 -
Initialize
short Initialize()初始化主站, 返回主站编号 -
InitializeSpecificMaster
short InitializeSpecificMaster(short masterIndex) 初始化指定编号的主站, 返回主站编号 (uint16).注意: 返回 short 是 JNA 习惯, 实际为 uint16. 失败时 native 层返回 sentinel 0xFFFF, 在 Java 中表现为 -1 (符号位扩展). 调用方必须用
(result & 0xFFFF)转换为无符号比较, 或显式判result == (short)0xFFFF, 不要直接result < 0. -
Dispose
void Dispose(short masterIndex) 释放指定主站资源 -
GetMaxMasterInstances
int GetMaxMasterInstances()获取最大主站实例数 -
FreeMemory
void FreeMemory(com.sun.jna.Pointer ptr) 释放 DLL 分配的内存 -
DumpSlaveStructOffsets
void DumpSlaveStructOffsets()输出从站结构体偏移量 (调试用) -
GetDllVersionInfo
com.sun.jna.Pointer GetDllVersionInfo()获取 DLL 版本信息 (返回指针, 需用 DllVersionInfo 解析) -
SetNetwork
设置网络适配器- 参数:
masterIndex- 主站编号adapter- 主网卡名称 (pcap 设备名)redundant- 冗余网卡名称, 空串表示无冗余- 返回:
- 从站数量, 负数表示错误
-
GetNetworkInfo
int GetNetworkInfo(boolean isRedundant, boolean needSlavesNum) 获取网络信息 (网卡列表数量) -
GetNetworksPointer
com.sun.jna.Pointer GetNetworksPointer()获取网络列表指针 -
QuickSlaveCount
快速检测网卡上的从站数量 -
QuickFindRedundantPairBatch
int QuickFindRedundantPairBatch(String[] adapterNames, int adapterCount, com.sun.jna.ptr.IntByReference primaryIdx, com.sun.jna.ptr.IntByReference secondaryIdx, com.sun.jna.ptr.IntByReference ringCount, com.sun.jna.ptr.IntByReference totalCount) 快速批量查找冗余网卡对 -
ScanSlaveInfo
完整扫描从站信息 (单端口/冗余通用, 与 SetNetwork/Build 完全相同的扫描逻辑).[审计修复] 替代已删除的 ScanSlaveCount/ScanSlaveCountRedundant. 对齐 C# DLL.ScanSlaveInfo.
- 参数:
primary- 主网卡名称secondary- 冗余网卡名称, null=单端口模式- 返回:
- 扫描到的从站数量, <=0 表示无从站
-
ReadSlaveInfo
读取从站详细信息 -
GetScannedSlaveCount
int GetScannedSlaveCount()获取已扫描从站数量 -
GetScannedSlaveInfo
boolean GetScannedSlaveInfo(int index, com.sun.jna.ptr.IntByReference vendorId, com.sun.jna.ptr.IntByReference productCode, com.sun.jna.ptr.IntByReference revision, com.sun.jna.ptr.IntByReference serial, byte[] name, int nameSize, com.sun.jna.ptr.ShortByReference configAddr, com.sun.jna.ptr.ShortByReference aliasAddr, com.sun.jna.ptr.ShortByReference parent, com.sun.jna.ptr.ByteByReference topology, com.sun.jna.ptr.ByteByReference activePorts, com.sun.jna.ptr.ByteByReference entryPort, com.sun.jna.ptr.ByteByReference parentPort, com.sun.jna.ptr.ByteByReference ptype) 获取已扫描从站信息 -
GetRingSlaveCount
int GetRingSlaveCount()获取环形拓扑从站数量 -
SetState
boolean SetState(short masterIndex, int state) 设置主站状态 (不带启动参数) -
SetStateWithTimeout
boolean SetStateWithTimeout(short masterIndex, int state, int timeoutMs) 带超时的状态转换 -
SetSlaveStateWithTimeout
boolean SetSlaveStateWithTimeout(short masterIndex, short slaveIndex, int state, int timeoutMs) 单个从站状态转换 (带超时) -
SetStateSequence
boolean SetStateSequence(short masterIndex, int targetState, int timeoutMs) 一步到位状态转换: 自动链式 (Init->PreOp->SafeOp->OP) -
SetStateWithStartup
boolean SetStateWithStartup(short masterIndex, int targetState, int timeoutMs) 单步状态转换 + 自动执行 Before/After 启动参数 -
GetMasterState
com.sun.jna.Pointer GetMasterState(short masterIndex) 获取主站状态指针 -
GetMasterStateCache
com.sun.jna.Pointer GetMasterStateCache(short masterIndex) 获取线程安全状态缓存指针 -
GetLinkStatus
byte GetLinkStatus(short masterIndex) 获取链路状态 -
GetSlaveState
byte GetSlaveState(short masterIndex, short slaveIndex) 获取从站状态 -
GetSlaveALStatusCode
short GetSlaveALStatusCode(short masterIndex, short slaveIndex) 获取从站 ALStatusCode -
GetSlaveStateLive
byte GetSlaveStateLive(short masterIndex, short slaveIndex) 获取从站状态 (强制实时读, 绕过缓存; 对应 GetSlaveStateLive) -
GetSlaveALStatusCodeLive
short GetSlaveALStatusCodeLive(short masterIndex, short slaveIndex) 获取从站 ALStatusCode (强制实时读, 绕过缓存; 对应 GetSlaveALStatusCodeLive). unsigned, 上层& 0xFFFF. -
GetSlaveWcState
byte GetSlaveWcState(short masterIndex, short slaveIndex) 从站本周期是否贡献应有 WKC: 1=贡献(在线), 0=没贡献(疑似掉站), 0xFF(=-1)=未知(契约未就绪). Java byte 有符号, 0xFF 读作 -1, 上层用& 0xFF还原. -
GetSlaveAlStatusMirror
short GetSlaveAlStatusMirror(short masterIndex, short slaveIndex) 从站 AL 状态镜像 (16bit raw): 低字节 AL State (bit4=Error), 有 Error 时高字节为 AL Status Code. Java short 有符号, 上层用& 0xFFFF按 unsigned 解析. 0 = 未知. -
GetWcDeficit
short GetWcDeficit(short masterIndex) WKC 缺口 (= WkcExpectedMirror - WkcActualMirror, 内核如实算永不下调 expected). >0 = 有从站掉 (缺口数); 0 = 全在线或未知. unsigned, 上层& 0xFFFF. -
GetWcStateSeq
long GetWcStateSeq(short masterIndex) per-slave 诊断序列号 (内核每 PDO 周期 +1). SDK 据此判缓存新鲜度 (停增=内核未跑). 0=未知. Java long 可容纳 uint64 (内核计数远不会溢出符号位). -
GetMappedSlaveCount
short GetMappedSlaveCount(short masterIndex) DLL 已向内核下发映射的 slave 数 (契约就绪度). >0 = WcState 可信; 0 = 不可信(应显"未知"). unsigned, 上层& 0xFFFF. -
GetWkcActualMirror
short GetWkcActualMirror(short masterIndex) 聚合 LRW WKC 实测镜像 (= 本周期响应 slave 总数). 如实反映硬件现实, 永不篡改. unsigned, 上层& 0xFFFF. 0 = 未知. -
GetWkcExpectedMirror
short GetWkcExpectedMirror(short masterIndex) 期望 WKC 镜像 (配置期/进 OP 确定的固定真值, 拓扑固定即固定, 绝不篡改迁就劣化总线). unsigned, 上层& 0xFFFF. 0 = 未知. -
GetSlaveFreeRunDemoted
byte GetSlaveFreeRunDemoted(short masterIndex, short slaveIndex) 从站是否被降级为 free-run (邮箱半失效自动降级): 1=已降级, 0=正常, 0xFF=未知. Java byte 有符号, 上层& 0xFF还原 unsigned. -
GetSlaveMailboxHealth
byte GetSlaveMailboxHealth(short masterIndex, short slaveIndex) 从站邮箱健康度: 1=健康, 0=半失效, 0xFF=未知. Java byte 有符号, 上层& 0xFF. -
GetSlaveHealthDegradedCount
int GetSlaveHealthDegradedCount(short masterIndex, short slaveIndex) 从站健康降级累计次数 (诊断计数, 单调递增). unsigned uint32, 上层& 0xFFFFFFFFL. -
RecoverSlaveMailboxHealth
boolean RecoverSlaveMailboxHealth(short masterIndex, short slaveIndex) 主动修复从站残留 A 邮箱半失效状态. @return true=修复尝试已触发. -
GetPrimaryWKCEx
short GetPrimaryWKCEx(short masterIndex) 主发帧实测 WKC. unsigned, 上层& 0xFFFF. -
GetSecondaryWKCEx
short GetSecondaryWKCEx(short masterIndex) 副发帧实测 WKC. unsigned, 上层& 0xFFFF. -
GetTopoPriIntact
short GetTopoPriIntact(short masterIndex) 主拓扑环路完好性 (内核每周期实测). unsigned, 上层& 0xFFFF. -
GetTopoSecIntact
short GetTopoSecIntact(short masterIndex) 冗余拓扑环路完好性 (内核每周期实测). unsigned, 上层& 0xFFFF. -
HotSwapRebuild
int HotSwapRebuild(short masterIndex) [roundHOTSWAP1 2026-06-08] 运行中一次性热插拔重建拓扑 (重扫从站+重建拓扑图+恢复 OP, 不停总线). 返回错误码: 0=成功, 负值=失败 (-20 BUSY / -21 RESCAN_0 / -22 SDO_ABORT / -23 NO_OP / -24 TIMEOUT / -25 IDX_FULL). -
GetRtPreemptCount
long GetRtPreemptCount(short mi) RT 线程被抢占累计次数 (uint64). 上层视为无符号. -
GetRtPreemptPeakNs
int GetRtPreemptPeakNs(short mi) RT 线程被抢占峰值时长 ns (uint32). 上层& 0xFFFFFFFFL. -
GetBigGapUnknownCount
long GetBigGapUnknownCount(short mi) 大间隙未知原因计数 (uint64). 上层视为无符号. -
GetSmiMsrAvailable
int GetSmiMsrAvailable(short mi) SMI MSR 是否可用 (uint32, 1=可用). -
GetWdkRtCpuIndex
int GetWdkRtCpuIndex(short mi) WDK RT 线程绑定 CPU 序号 (int, -1=未绑). -
GetWdkRxCpuIndex
int GetWdkRxCpuIndex(short mi) WDK RX 线程绑定 CPU 序号 (int, -1=未绑). -
GetWdkJitterInstrumentVer
int GetWdkJitterInstrumentVer(short mi) WDK 抖动仪表版本号 (uint32). 上层& 0xFFFFFFFFL. -
GetWdkJitterHistBin
int GetWdkJitterHistBin(short mi, int binIndex) WDK 抖动直方图指定 bin 计数 (uint32). @param binIndex bin 索引 (uint32). -
GetWdkJitterTotalSamples
long GetWdkJitterTotalSamples(short mi) WDK 抖动样本总数 (uint64). 上层视为无符号. -
GetWdkJitterMinNs
int GetWdkJitterMinNs(short mi) WDK 抖动最小值 ns (uint32). 上层& 0xFFFFFFFFL. -
GetWdkJitterLastWakeDeltaNs
int GetWdkJitterLastWakeDeltaNs(short mi) WDK 上次唤醒偏差 ns (int, 可正可负). -
GetWdkPathCountFast
int GetWdkPathCountFast(short mi) WDK 快路径处理计数 (uint32). 上层& 0xFFFFFFFFL. -
GetWdkPathCountMed
int GetWdkPathCountMed(short mi) WDK 中路径处理计数 (uint32). 上层& 0xFFFFFFFFL. -
GetWdkPathCountSlow
int GetWdkPathCountSlow(short mi) WDK 慢路径处理计数 (uint32). 上层& 0xFFFFFFFFL. -
GetWdkKtimerWakeNormalCnt
int GetWdkKtimerWakeNormalCnt(short mi) WDK KTIMER 正常唤醒计数 (uint32). 上层& 0xFFFFFFFFL. -
GetWdkKtimerWakeOverrunCnt
int GetWdkKtimerWakeOverrunCnt(short mi) WDK KTIMER 超时唤醒计数 (uint32). 上层& 0xFFFFFFFFL. -
GetWdkDispatchCycleMaxJitterNs
int GetWdkDispatchCycleMaxJitterNs(short mi) WDK 调度周期最大抖动 ns (uint32). 上层& 0xFFFFFFFFL. -
GetWdkDrainCycleMaxJitterNs
int GetWdkDrainCycleMaxJitterNs(short mi) WDK 排空周期最大抖动 ns (uint32). 上层& 0xFFFFFFFFL. -
GetWdkDiagCounter
int GetWdkDiagCounter(short mi, int counterId) WDK 通用诊断计数器 (uint32). @param counterId 计数器 ID (uint32). -
GetCycleEventHandle
com.sun.jna.Pointer GetCycleEventHandle(short masterIndex) 获取周期事件内核句柄 (用户态可 WaitForSingleObject 等待 PDO 周期边界). -
GetCycleEventName
com.sun.jna.Pointer GetCycleEventName(short masterIndex) 获取周期事件命名 (跨进程打开同一 named event 用). @return C 字符串指针. -
WaitForCycleEvent
int WaitForCycleEvent(short masterIndex, int timeoutMs) 等待下一个 PDO 周期事件. @return 0=收到事件, 非 0=超时/错误. -
GetCycleCount
long GetCycleCount(short masterIndex) 获取已完成 PDO 周期总计数 (一致性读取判帧新鲜度用). unsigned uint64, Java long 容纳. -
Start
void Start(short masterIndex) 启动 PDO 循环线程和状态监控线程 (OP 状态后调用) -
Stop
void Stop(short masterIndex) 停止 PDO 循环线程和状态监控线程 -
GetIO
byte GetIO(short masterIndex, short slave, com.sun.jna.ptr.IntByReference outByteSize, com.sun.jna.ptr.PointerByReference outByte, com.sun.jna.ptr.IntByReference inByteSize, com.sun.jna.ptr.PointerByReference inByte) 获取从站 IO 数据指针 -
LockIOmap
void LockIOmap(short masterIndex) 锁定 IOmap (PDO 数据读写前调用) -
UnlockIOmap
void UnlockIOmap(short masterIndex) 解锁 IOmap -
WriteSlaveOutput
void WriteSlaveOutput(short masterIndex, short slaveIndex, byte[] data, int size) 无锁输出写入 -
WriteSlaveOutputByte
void WriteSlaveOutputByte(short masterIndex, short slaveIndex, int offset, byte value) 无锁输出字节写入 -
SetMutexProtection
void SetMutexProtection(short masterIndex, boolean enable) 设置 Mutex 保护 -
GetMutexProtection
boolean GetMutexProtection(short masterIndex) 获取 Mutex 保护状态 -
SDOwrite
boolean SDOwrite(short masterIndex, short slave, short index, byte subindex, boolean CA, com.sun.jna.Pointer data, int length) SDO 写入 -
SDOread
com.sun.jna.Pointer SDOread(short masterIndex, short slaveIndex, short index, byte subindex, boolean CA, com.sun.jna.ptr.IntByReference outByteSize) SDO 读取 -
GetSlaveSDOList
com.sun.jna.Pointer GetSlaveSDOList(short masterIndex, short slaveIndex) 获取从站 SDO 对象字典列表指针 -
GetSlaveSDOListBasic
com.sun.jna.Pointer GetSlaveSDOListBasic(short masterIndex, short slaveIndex) 获取从站 SDO 对象字典基本列表指针 -
GetMultiSlaveSDOList
int GetMultiSlaveSDOList(short masterIndex, short[] slaveIndices, int count, com.sun.jna.Pointer[] results) 批量读取多个从站的 SDO 对象字典 (流水线并行) -
FreeMultiSlaveSDOList
void FreeMultiSlaveSDOList(com.sun.jna.Pointer[] results, int count) 释放批量 SDO 列表分配的内存 -
GetSlavePointer_SDO
com.sun.jna.Pointer GetSlavePointer_SDO(short masterIndex, short slaveIndex, short oeIndex) 获取从站 SDO 对象字典条目指针 -
GetSlavePointer_SDO_WithODList
com.sun.jna.Pointer GetSlavePointer_SDO_WithODList(short masterIndex, short slaveIndex, short oeIndex, com.sun.jna.Pointer odlist) 优化版 SDO 读取 (使用已有的 ODList) -
GetSlavePointer_SDO_Value
com.sun.jna.Pointer GetSlavePointer_SDO_Value(short masterIndex, short slaveIndex, short odIndex, byte oeIndex, com.sun.jna.ptr.IntByReference outByteSize) SDO 值读取 (按 OD 索引 + 子索引偏移) -
GetSlavePointer_SDO_IndexValue
com.sun.jna.Pointer GetSlavePointer_SDO_IndexValue(short masterIndex, short slaveIndex, short index, byte subidx, com.sun.jna.ptr.IntByReference outByteSize) SDO 值读取 (按 OD 索引 + 子索引) -
GetSlave
com.sun.jna.Pointer GetSlave(short masterIndex, short slaveIndex) 获取从站结构体指针 -
GetSlaveDetailedInfo
com.sun.jna.Pointer GetSlaveDetailedInfo(short masterIndex, short slaveIndex) 获取从站详细信息 (JSON 指针) -
GetSlaveIdentity
获取从站身份信息 -
VerifySlaveIdentity
boolean VerifySlaveIdentity(short masterIndex, short slaveIndex, DarraCore.SlaveIdentity expected, boolean checkRev, boolean checkSerial) 验证从站身份 -
SetSlaveOptional
boolean SetSlaveOptional(short masterIndex, short slaveIndex, boolean isOptional) 设置从站为可选 -
GetSlaveOptional
boolean GetSlaveOptional(short masterIndex, short slaveIndex) 获取从站可选标志 -
SetSlaveSupportsFrameRepeat
boolean SetSlaveSupportsFrameRepeat(short masterIndex, short slaveIndex, boolean supports) 设置从站帧重发支持标志 -
GetSlaveSupportsFrameRepeat
boolean GetSlaveSupportsFrameRepeat(short masterIndex, short slaveIndex) 获取从站帧重发支持标志 -
AddStartupParameter
添加一个启动参数 -
AddStartupParameterBatch
int AddStartupParameterBatch(short masterIndex, short slaveIndex, DarraCore.StartupParam[] paramArray, int count) 批量添加启动参数 -
ClearStartupParameters
int ClearStartupParameters(short masterIndex, short slaveIndex) 清除启动参数 (slaveIndex=0 清除所有从站) -
GetStartupParameterCount
int GetStartupParameterCount(short masterIndex, short slaveIndex) 获取启动参数数量 -
ApplyStartupParameters
int ApplyStartupParameters(short masterIndex, short slaveIndex, byte transition, byte timing) 执行指定从站的启动参数 -
ApplyStartupParametersAll
int ApplyStartupParametersAll(short masterIndex, byte transition, byte timing) 对所有从站执行启动参数 -
EcInit
一步初始化: JSON -> Initialize + SetNetwork + LoadConfig + SetStateSequence + Start -
EcInitFromFile
一步初始化: 从 JSON 文件路径 -
EcClose
void EcClose(short masterIndex) 一步关闭: ClearStartupParams + Stop + Dispose -
DarraCoreInvoke
int DarraCoreInvoke(short masterIndex, int command, int arg0, int arg1, int arg2) -
DarraCoreInvokeText
-
LoadConfigJson
从 JSON 加载配置 -
AutoConfigureSM
int AutoConfigureSM(short masterIndex, short slaveIndex) 自动配置 SM (slaveIndex=0 处理所有从站) -
SetMasterDCCycleTime
void SetMasterDCCycleTime(short masterIndex, int timeNs) 设置主站 DC 循环时间 (纳秒) -
SetSyncBySlaveIndex
void SetSyncBySlaveIndex(short masterIndex, short slaveIndex, int sync0Ns, int sync1Ns, int shiftNs) 设置从站 DC 同步参数 -
ConfigureDCAll
int ConfigureDCAll(short masterIndex, int sync0Ns, int sync1Ns) 为所有 DC 从站配置 DC 同步 -
AutoCalculateDCShift
int AutoCalculateDCShift(short masterIndex) 自动计算 DC 偏移 -
UpdatePropagationDelays
int UpdatePropagationDelays(short masterIndex) 更新传播延迟 -
EnableContinuousMeasurement
void EnableContinuousMeasurement(short masterIndex, boolean enable, int intervalSec) 启用/禁用持续传播延迟测量 -
EnableDriftCompensation
void EnableDriftCompensation(short masterIndex, boolean enable, int thresholdNs, int gain) 启用/禁用漂移补偿 -
SetDCAutoShiftEnabled
void SetDCAutoShiftEnabled(short masterIndex, boolean enable) 设置 DC 自动偏移启用 -
GetDCAutoShiftEnabled
boolean GetDCAutoShiftEnabled(short masterIndex) 获取 DC 自动偏移状态 -
GetSlavePropagationDelay
int GetSlavePropagationDelay(short masterIndex, short slaveIndex) 获取从站传播延迟 (纳秒) -
GetMaxPropagationDelay
int GetMaxPropagationDelay(short masterIndex) 获取最大传播延迟 (纳秒) -
GetSlaveSyncWindowStatus
boolean GetSlaveSyncWindowStatus(short masterIndex, short slaveIndex, com.sun.jna.ptr.IntByReference diffNs, com.sun.jna.ptr.IntByReference maxDiffNs, com.sun.jna.ptr.IntByReference minDiffNs, com.sun.jna.ptr.IntByReference inSync, com.sun.jna.ptr.IntByReference outOfSyncCount) 获取从站同步窗口状态 -
SetSyncWindowThreshold
void SetSyncWindowThreshold(short masterIndex, int thresholdNs) 设置同步窗口阈值 (纳秒) -
GetSyncWindowThreshold
int GetSyncWindowThreshold(short masterIndex) 获取同步窗口阈值 -
ResetSlaveSyncWindowStats
void ResetSlaveSyncWindowStats(short masterIndex, short slaveIndex) 重置从站同步窗口统计 -
GetMaxSyncDifference
int GetMaxSyncDifference(short masterIndex) 获取最大同步偏差 (纳秒) -
IsAllSlavesInSync
boolean IsAllSlavesInSync(short masterIndex) 检查所有从站是否同步 -
GetMasterDCTime
long GetMasterDCTime(short masterIndex) 主站最近一次 PDO 周期取回的 64-bit DC 系统时间 (纳秒, ETG 2000-01-01 纪元).
Last 64-bit DC system time (ns, ETG 2000-01-01 epoch) read back via FRMW.- 返回:
- DC 时间 (纳秒); 0=DC 未激活.
-
GetReferenceClockSlaveIndex
short GetReferenceClockSlaveIndex(short masterIndex) 当前参考时钟从站索引 (1-based).
Reference clock slave index (1-based). 0 = no DC-capable slave on the bus. -
SoERead
boolean SoERead(short masterIndex, short slave, byte driveNo, byte elementFlags, short idn, com.sun.jna.ptr.PointerByReference data, com.sun.jna.ptr.IntByReference dataSize, int timeout) SoE 读取 -
SoEWrite
boolean SoEWrite(short masterIndex, short slave, byte driveNo, byte elementFlags, short idn, byte[] data, int dataSize, int timeout) SoE 写入 -
SoEReadAttributes
boolean SoEReadAttributes(short masterIndex, short slave, byte driveNo, short idn, com.sun.jna.ptr.IntByReference attributes, int timeout) SoE 读取属性 -
SoEReadName
boolean SoEReadName(short masterIndex, short slave, byte driveNo, short idn, com.sun.jna.ptr.PointerByReference name, com.sun.jna.ptr.IntByReference nameLength, int timeout) SoE 读取名称 -
SoEReadIDNList
boolean SoEReadIDNList(short masterIndex, short slave, byte driveNo, com.sun.jna.ptr.PointerByReference idnList, com.sun.jna.ptr.IntByReference listCount, int timeout) SoE 读取 IDN 列表 -
SoEReadUnit
boolean SoEReadUnit(short masterIndex, short slave, byte driveNo, short idn, com.sun.jna.ptr.PointerByReference unit, com.sun.jna.ptr.IntByReference unitLength, int timeout) SoE 读取单位 -
SoEReadMinMax
boolean SoEReadMinMax(short masterIndex, short slave, byte driveNo, short idn, com.sun.jna.ptr.PointerByReference minValue, com.sun.jna.ptr.IntByReference minSize, com.sun.jna.ptr.PointerByReference maxValue, com.sun.jna.ptr.IntByReference maxSize, int timeout) SoE 读取最小值/最大值 -
RegisterSoENotificationCallback
注册 SoE Notification 回调 / register SoE Notification callback. -
RegisterSoEEmergencyCallback
注册 SoE Emergency 回调 / register SoE Emergency callback. -
UnregisterSoENotificationCallback
注销 SoE Notification 回调 (与注册成对; 对齐 C# DLL.SoE.cs). -
UnregisterSoEEmergencyCallback
注销 SoE Emergency 回调 (与注册成对; 对齐 C# DLL.SoE.cs). -
FOERead
boolean FOERead(short masterIndex, short slave, String filename, int password, com.sun.jna.ptr.PointerByReference fileData, com.sun.jna.ptr.IntByReference fileSize, int timeout) FoE 读取文件 -
FOEWrite
boolean FOEWrite(short masterIndex, short slave, String filename, int password, com.sun.jna.Pointer fileData, int fileSize, int timeout) FoE 写入文件 -
FOEReadEx
boolean FOEReadEx(short masterIndex, short slave, String filename, int password, com.sun.jna.ptr.PointerByReference fileData, com.sun.jna.ptr.IntByReference fileSize, int timeout, DarraCore.FoEOptions options) FoE 扩展读取 (含选项) -
FOEWriteEx
boolean FOEWriteEx(short masterIndex, short slave, String filename, int password, com.sun.jna.Pointer fileData, int fileSize, int timeout, DarraCore.FoEOptions options) FoE 扩展写入 (含选项) -
FOESetProgressHook
设置 FoE 进度回调 -
FOEClearProgressHook
boolean FOEClearProgressHook(short masterIndex) 清除 FoE 进度回调 -
FOESetBusyHook
设置 FoE BUSY 回调 / set FoE BUSY hook. -
FOERequestCancel
boolean FOERequestCancel(short masterIndex, short slave) 请求取消 FoE 传输 / request cancel of an ongoing FoE transfer. -
FOEClearCancel
boolean FOEClearCancel(short masterIndex, short slave) 清除 FoE 取消标志 / clear the FoE cancel flag. -
EOESetIP
boolean EOESetIP(short masterIndex, short slave, byte port, int ipAddress, int subnetMask, int defaultGateway, int timeout) EoE 设置 IP -
EOEGetIP
boolean EOEGetIP(short masterIndex, short slave, byte port, com.sun.jna.ptr.IntByReference ipAddress, com.sun.jna.ptr.IntByReference subnetMask, com.sun.jna.ptr.IntByReference defaultGateway, int timeout) EoE 获取 IP -
EOESendFrame
boolean EOESendFrame(short masterIndex, short slave, byte port, byte[] frameData, int frameSize, int timeout) EoE 发送帧 -
EOEReceiveFrame
boolean EOEReceiveFrame(short masterIndex, short slave, byte port, com.sun.jna.ptr.PointerByReference data, com.sun.jna.ptr.IntByReference size, int timeout) EoE 接收帧 -
EOESetMAC
boolean EOESetMAC(short masterIndex, short slave, byte port, byte[] mac, int timeout) EoE 设置 MAC 地址 -
EOEGetMAC
boolean EOEGetMAC(short masterIndex, short slave, byte port, byte[] mac, int timeout) EoE 获取 MAC 地址 -
EOESetDNS
boolean EOESetDNS(short masterIndex, short slave, byte port, int dnsIp, String dnsName, int timeout) EoE 设置 DNS -
EOEGetDNS
boolean EOEGetDNS(short masterIndex, short slave, byte port, com.sun.jna.ptr.IntByReference dnsIp, byte[] dnsName, int timeout) EoE 获取 DNS -
EOEGetFullParam
boolean EOEGetFullParam(short masterIndex, short slave, byte port, com.sun.jna.ptr.IntByReference ipAddress, com.sun.jna.ptr.IntByReference subnetMask, com.sun.jna.ptr.IntByReference defaultGateway, byte[] macAddress, com.sun.jna.ptr.IntByReference dnsIp, byte[] dnsName, int timeout) EoE 获取全部参数 -
EOESetFullParam
boolean EOESetFullParam(short masterIndex, short slave, byte port, int ipAddress, int subnetMask, int defaultGateway, byte[] macAddress, int dnsIp, String dnsName, int timeout) EoE 设置全部参数 -
EOESetAddressFilter
boolean EOESetAddressFilter(short masterIndex, short slave, byte port, byte filterCount, byte[] macFilters, int timeout) EoE 设置地址过滤 -
EOEGetAddressFilter
boolean EOEGetAddressFilter(short masterIndex, short slave, byte port, com.sun.jna.ptr.ByteByReference filterCount, byte[] macFilters, int maxFilters, int timeout) EoE 获取地址过滤 -
AOESendCommand
boolean AOESendCommand(short masterIndex, short slave, short targetPort, short commandId, byte[] commandData, int commandSize, com.sun.jna.ptr.PointerByReference responseData, com.sun.jna.ptr.IntByReference responseSize, int timeout) AoE 发送命令 -
AOEReadWrite
boolean AOEReadWrite(short masterIndex, short slave, int indexGroup, int indexOffset, int readLength, int writeLength, byte[] writeData, com.sun.jna.ptr.PointerByReference readData, com.sun.jna.ptr.IntByReference bytesRead, int timeout) AoE 读写 -
AOEReadDeviceInfo
boolean AOEReadDeviceInfo(short masterIndex, short slave, com.sun.jna.ptr.ByteByReference majorVer, com.sun.jna.ptr.ByteByReference minorVer, com.sun.jna.ptr.ShortByReference build, byte[] deviceName, int nameSize, int timeout) AoE 读取设备信息 -
AOEReadState
boolean AOEReadState(short masterIndex, short slave, com.sun.jna.ptr.ShortByReference adsState, com.sun.jna.ptr.ShortByReference deviceState, int timeout) AoE 读取状态 -
AOEWriteControl
boolean AOEWriteControl(short masterIndex, short slave, short adsState, short deviceState, byte[] data, int dataSize, int timeout) AoE 写入控制 -
AOEAddNotification
boolean AOEAddNotification(short masterIndex, short slave, int indexGroup, int indexOffset, int length, int transMode, int maxDelay, int cycleTime, com.sun.jna.ptr.IntByReference handle, int timeout) AoE 添加通知 -
AOEDelNotification
boolean AOEDelNotification(short masterIndex, short slave, int handle, int timeout) AoE 删除通知 -
AOESetConfig
boolean AOESetConfig(short masterIndex, short slave, byte[] targetNetId, short targetPort, byte[] sourceNetId, short sourcePort) AoE 设置配置 -
AOEGetConfig
boolean AOEGetConfig(short masterIndex, short slave, byte[] targetNetId, com.sun.jna.ptr.ShortByReference targetPort, byte[] sourceNetId, com.sun.jna.ptr.ShortByReference sourcePort) AoE 获取配置 -
AOEStartNotificationListener
boolean AOEStartNotificationListener(short masterIndex) 启动 AoE 通知监听线程 -
AOEStopNotificationListener
boolean AOEStopNotificationListener()停止 AoE 通知监听线程 -
AOEIsNotificationListening
boolean AOEIsNotificationListening()检查 AoE 通知监听线程是否运行 -
AOERegisterNotification
int AOERegisterNotification(short slave, int handle, int indexGroup, int indexOffset, int dataLength, DarraCore.AOENotificationCallback callback, com.sun.jna.Pointer userData) 注册 AoE 通知回调 -
AOEUnregisterNotification
boolean AOEUnregisterNotification(int subscriptionIndex) 注销 AoE 通知回调 -
VOESend
boolean VOESend(short masterIndex, short slave, int vendorId, short vendorType, byte[] data, int dataSize, int timeout) VoE 发送数据 -
VOEReceive
boolean VOEReceive(short masterIndex, short slave, com.sun.jna.ptr.IntByReference vendorId, com.sun.jna.ptr.ShortByReference vendorType, com.sun.jna.ptr.PointerByReference data, com.sun.jna.ptr.IntByReference dataSize, int timeout) VoE 接收数据 -
VOEIsSupported
boolean VOEIsSupported(short masterIndex, short slave) VoE 是否支持 -
VOESendRaw
boolean VOESendRaw(short masterIndex, short slave, byte[] frameData, int frameSize, int timeout) VoE 发送原始帧 -
VOEReceiveRaw
boolean VOEReceiveRaw(short masterIndex, short slave, com.sun.jna.ptr.PointerByReference frameData, com.sun.jna.ptr.IntByReference frameSize, int timeout) VoE 接收原始帧 -
SetLogCallback
设置日志回调 -
SetCrashCallback
设置崩溃通知回调 -
RegisterProcessDataCyclicCallbackSync
注册 PDO 周期同步回调 -
RegisterProcessDataCyclicCallbackAsync
注册 PDO 周期异步回调。 [2026-05-21 架构清理] 原生导出已转 dormant — PDO 数据通路改为纯 GlobalIO 指针轮询, SDK 事件层不再调用此方法。声明保留以与原生导出表序号一致。 -
RegisterSlaveStateChangeCallbackSync
注册从站状态变化同步回调 -
RegisterSlaveStateChangeCallbackAsync
注册从站状态变化异步回调 -
RegisterEmergencyEventCallback
注册紧急事件回调 -
RegisterSlaveDiscoveryCallbackSync
注册从站发现同步回调 -
RegisterSlaveDiscoveryCallbackAsync
注册从站发现异步回调 -
RegisterInputDataChangedCallback
注册输入数据变化回调。 [2026-05-21 架构清理] 原生导出已转 dormant — PDO 数据通路改为纯 GlobalIO 指针轮询, SDK 事件层不再调用此方法。声明保留以与原生导出表序号一致。 -
RegisterRedundancyModeChangedCallback
注册冗余模式变化回调 -
RegisterPDOFrameLossCallback
注册 PDO 丢帧回调 -
RegisterSlavePreOpReconfigCallback
注册从站 PreOP 重配置回调 -
SetDCSyncLostCallback
设置 DC 同步丢失回调 -
RegisterSlaveIdentityMismatchCallback
注册从站身份不符回调 (v2 热插拔自修复) -
RegisterSlavePortLinkChangedCallback
注册从站端口链路变化回调 (断线检测) -
UnregisterProcessDataCyclicCallbackSync
注销 PDO 周期同步回调 -
UnregisterProcessDataCyclicCallbackAsync
注销 PDO 周期异步回调 -
UnregisterSlaveStateChangeCallbackSync
注销从站状态变化同步回调 -
UnregisterSlaveStateChangeCallbackAsync
注销从站状态变化异步回调 -
UnregisterEmergencyEventCallback
注销紧急事件回调 -
UnregisterSlaveDiscoveryCallbackSync
注销从站发现同步回调 -
UnregisterSlaveDiscoveryCallbackAsync
注销从站发现异步回调 -
UnregisterPDOFrameLossCallback
注销 PDO 丢帧回调 -
UnregisterRedundancyModeChangedCallback
注销冗余模式变化回调 -
UnregisterSlavePreOpReconfigCallback
注销从站 PreOP 重配置回调 -
UnregisterSlaveIdentityMismatchCallback
注销从站身份不符回调 -
UnregisterInputDataChangedCallback
注销输入数据变化回调 -
UnregisterSlavePortLinkChangedCallback
注销从站端口链路变化回调 -
UnsetLogCallback
取消日志回调 (与 SetLogCallback 成对) -
UnsetCrashCallback
取消崩溃通知回调 (与 SetCrashCallback 成对) -
AcknowledgeSlaveReplacement
boolean AcknowledgeSlaveReplacement(short masterIndex, short slaveIndex) 用户确认从站替换: 将从站 ident FSM 从 IDENT_REJECTED 复位到 SCAN_ADDR, 下一个 recovery_due tick 重新走一遍完整状态机 若身份已纠正 (换回正确设备) -> 自动恢复并触发 SlaveOnline 若仍不匹配 -> 再次触发 SlaveIdentityMismatch, 回到 IDENT_REJECTED- 返回:
- true=已接受确认; false=参数无效或从站未处于 IDENT_REJECTED 状态
-
WriteSlaveDLPORT
boolean WriteSlaveDLPORT(short masterIndex, short slaveIndex, byte dlportValue) 写入从站 DL Port 控制寄存器 (0x0101). @return true=写成功 -
ReadSlaveDLPORT
boolean ReadSlaveDLPORT(short masterIndex, short slaveIndex, com.sun.jna.ptr.ByteByReference dlportValue) 读取从站 DL Port 控制寄存器 (0x0101), 读出值回填 dlportValue. @return true=读成功 -
SetSlaveGroup
boolean SetSlaveGroup(short masterIndex, short slaveIndex, byte group) 设置从站所属组 -
GetSlaveGroup
byte GetSlaveGroup(short masterIndex, short slaveIndex) 获取从站所属组 -
SetGroupCycleDivider
boolean SetGroupCycleDivider(short masterIndex, byte group, byte divider) 设置组周期分频 -
GetGroupCycleDivider
byte GetGroupCycleDivider(short masterIndex, byte group) 获取组周期分频 -
SetGroupEnabled
boolean SetGroupEnabled(short masterIndex, byte group, boolean enabled) 设置组启用/禁用 -
GetGroupEnabled
boolean GetGroupEnabled(short masterIndex, byte group) 获取组是否启用 -
GetGroupExpectedWKC
short GetGroupExpectedWKC(short masterIndex, byte group) 获取组预期 WKC -
GetActiveGroupCount
byte GetActiveGroupCount(short masterIndex) 获取活动组数量 -
GetGroupSlaveCount
short GetGroupSlaveCount(short masterIndex, byte group) 获取组内从站数量 -
WriteSlaveRegister
boolean WriteSlaveRegister(short masterIndex, short slaveIndex, short registerAddr, byte[] data, int dataLength) 写入从站寄存器 (FPWR) -
ReadSlaveRegister
boolean ReadSlaveRegister(short masterIndex, short slaveIndex, short registerAddr, byte[] data, int dataLength) 读取从站寄存器 (FPRD) -
SIIReadWord
int SIIReadWord(short masterIndex, short slaveIndex, short wordAddr, com.sun.jna.ptr.ShortByReference outValue) 读取 SII EEPROM 单字 (返回 1=成功, 0=失败) -
SIIWriteWord
int SIIWriteWord(short masterIndex, short slaveIndex, short wordAddr, short value) 写入 SII EEPROM 单字 (返回 1=成功, 0=失败) -
ConfigureSyncManager
boolean ConfigureSyncManager(short masterIndex, short slaveIndex, byte smIndex, short startAddr, short length, byte control, boolean enable) 配置 SyncManager -
ConfigureFMMU
boolean ConfigureFMMU(short masterIndex, short slaveIndex, byte fmmuIndex, int logicalAddr, short length, byte logicalStartBit, byte logicalEndBit, short physicalAddr, byte physicalStartBit, byte fmmuType, boolean enable) 配置 FMMU -
EnableOutputSyncManager
boolean EnableOutputSyncManager(short masterIndex, short slaveIndex) 启用输出 SyncManager -
DisableOutputSyncManager
boolean DisableOutputSyncManager(short masterIndex, short slaveIndex) 禁用输出 SyncManager -
SetSlaveWatchdog
boolean SetSlaveWatchdog(short masterIndex, short slaveIndex, int timeoutMs) 设置从站看门狗超时 (毫秒) -
SetSlavePdiWatchdog
boolean SetSlavePdiWatchdog(short masterIndex, short slaveIndex, int timeoutMs) 设置从站 PDI 看门狗超时 (毫秒) -
GetSlaveWatchdogConfig
boolean GetSlaveWatchdogConfig(short masterIndex, short slaveIndex, DarraCore.WatchdogConfig config) 获取从站看门狗配置 -
GetSlaveWatchdogStatus
boolean GetSlaveWatchdogStatus(short masterIndex, short slaveIndex, DarraCore.WatchdogStatus status) 获取从站看门狗状态 -
SetAllSlaveWatchdog
int SetAllSlaveWatchdog(short masterIndex, int timeoutMs) 为所有从站设置统一看门狗超时 -
SetAllSlavePdiWatchdog
int SetAllSlavePdiWatchdog(short masterIndex, int timeoutMs) 为所有从站设置统一PDI看门狗超时 -
GetSlaveEsmTimeouts
获取从站 ESM 超时配置 -
SetSlaveEsmTimeouts
设置从站 ESM 超时配置 -
GetSlaveOpOnlyFlag
boolean GetSlaveOpOnlyFlag(short masterIndex, short slaveIndex) 获取从站 OpOnly 标志 -
SetSlaveErrorAck
boolean SetSlaveErrorAck(short masterIndex, short slaveIndex, boolean setAck) 设置从站错误确认 -
GetSlaveDeviceEmulationFlag
boolean GetSlaveDeviceEmulationFlag(short masterIndex, short slaveIndex) 获取从站设备仿真标志 -
GetSlaveNeedsStartupReconfig
boolean GetSlaveNeedsStartupReconfig(short masterIndex, short slaveIndex) 获取从站是否需要启动重配置 -
ClearSlaveNeedsStartupReconfig
void ClearSlaveNeedsStartupReconfig(short masterIndex, short slaveIndex) 清除从站启动重配置标志 -
GetCommunicationStats
com.sun.jna.Pointer GetCommunicationStats(short masterIndex) 获取通信统计信息指针 -
ResetCommunicationStats
void ResetCommunicationStats(short masterIndex) 重置通信统计 -
GetDetailedDiagnostics
com.sun.jna.Pointer GetDetailedDiagnostics(short masterIndex) 获取详细诊断信息指针 -
ResetDiagnostics
void ResetDiagnostics(short masterIndex) 重置诊断信息 -
GetExpectedWKC
short GetExpectedWKC(short masterIndex) 获取期望的工作计数器 -
SetExpectedWKC
void SetExpectedWKC(short masterIndex, short expectedWkc) 设置期望的工作计数器 -
GetPacketLossRate
float GetPacketLossRate(short masterIndex) [2026-04-27] 丢包率 (0.0~1.0) — TX vs RX, 5 秒滑窗 -
GetLateFrameRate
float GetLateFrameRate(short masterIndex) [2026-04-27] 过慢帧率 (0.0~1.0) — idx 出 8 帧窗 stale, 不计入丢包 -
GetSlaveLinkQuality
short GetSlaveLinkQuality(short masterIndex, short slaveIndex) 获取从站链路质量 -
RecordPDOCycleStart
void RecordPDOCycleStart(short masterIndex) 记录 PDO 周期开始 -
RecordWKC
void RecordWKC(short masterIndex, short wkc) 记录工作计数器 -
UpdateDiagnosticsSnapshot
void UpdateDiagnosticsSnapshot(short masterIndex) 更新诊断快照 -
ResetSlavePortErrorCounters
boolean ResetSlavePortErrorCounters(short masterIndex, short slaveIndex) 重置从站端口错误计数器 -
GetDiagnosticsPointer
com.sun.jna.Pointer GetDiagnosticsPointer(short masterIndex) 获取诊断指针 (零拷贝) -
GetSummaryPointer
com.sun.jna.Pointer GetSummaryPointer(short masterIndex) 获取摘要指针 (零拷贝) -
SetDiagnosticsEnabled
void SetDiagnosticsEnabled(short masterIndex, boolean enable) 启用/禁用诊断功能 -
GetDiagnosticsEnabled
boolean GetDiagnosticsEnabled(short masterIndex) 获取诊断功能启用状态 -
GetPDOFrameLossStats
void GetPDOFrameLossStats(short masterIndex, byte group, com.sun.jna.ptr.IntByReference totalLost, com.sun.jna.ptr.IntByReference consecutiveLost, com.sun.jna.ptr.IntByReference maxConsecutiveLost) 获取 PDO 丢帧统计 -
ResetPDOFrameLossStats
void ResetPDOFrameLossStats(short masterIndex, byte group) 重置 PDO 丢帧统计 -
GetBreakPoints
int GetBreakPoints(short masterIndex, short[] outSlaves, byte[] outPorts, byte[] outTypes, short maxResults) 获取断点信息 -
ReadSlavePortErrorCounters
boolean ReadSlavePortErrorCounters(short masterIndex, short slaveIndex, byte[] rxError, byte[] invalidFrame, byte[] lostLink) 读取从站端口错误计数器 -
ReadAllSlavePortErrorCounters
int ReadAllSlavePortErrorCounters(short masterIndex) 读取所有从站端口错误计数器 -
GetSlavePortErrorStats
com.sun.jna.Pointer GetSlavePortErrorStats(short masterIndex, short slaveIndex) 获取从站端口错误统计指针 -
UpdateDiagnosticsWithESCErrors
void UpdateDiagnosticsWithESCErrors(short masterIndex) 使用 ESC 错误更新诊断 -
SetPDOLogging
void SetPDOLogging(boolean enable) 启用/禁用 PDO 日志 -
SetMailboxLogging
void SetMailboxLogging(boolean enable) 启用/禁用邮箱日志 -
DarraValidateTimerAccuracy
int DarraValidateTimerAccuracy(int expectedUsec, int toleranceUsec) 验证定时器精度 -
SetDebugLogging
void SetDebugLogging(boolean enable) 启用/禁用调试日志 -
PDOReadDirect
byte PDOReadDirect(short masterIndex, short slaveIndex, short pdoIndex, com.sun.jna.Pointer dataBuffer, int bufferSize, com.sun.jna.ptr.IntByReference bytesRead) PDO 直接读取. C 返回 boolean(uint8); Java 用 byte, 上层!= 0判真. -
PDOWriteDirect
byte PDOWriteDirect(short masterIndex, short slaveIndex, short pdoIndex, com.sun.jna.Pointer dataBuffer, int dataSize) PDO 直接写入. C 返回 boolean(uint8); Java 用 byte, 上层!= 0判真. -
PDOBatchRead
int PDOBatchRead(short masterIndex, short[] slaveIndices, int slaveCount, com.sun.jna.Pointer[] dataBuffers, int[] bufferSizes, int[] bytesRead) PDO 批量读取. C 返回 uint32 (成功操作的从站数). -
PDOBatchWrite
int PDOBatchWrite(short masterIndex, short[] slaveIndices, int slaveCount, com.sun.jna.Pointer[] dataBuffers, int[] dataSizes) PDO 批量写入. C 返回 uint32 (成功操作的从站数). -
GetPDOStats
com.sun.jna.Pointer GetPDOStats(short masterIndex, short slaveIndex) 获取 PDO 统计信息指针 (指向 native pdo_stats_t, 用解析).引用无效
Structures.PDOStats -
ResetPDOStats
void ResetPDOStats(short masterIndex, short slaveIndex) 重置 PDO 统计 -
EnablePDOMonitoring
void EnablePDOMonitoring(byte enable) 启用/禁用 PDO 监控. C 形参为 boolean(uint8); Java 用 byte (1=启用, 0=禁用). -
IsPDOMonitoringEnabled
byte IsPDOMonitoringEnabled()获取 PDO 监控启用状态. C 返回 boolean(uint8); Java 用 byte, 上层!= 0判真. -
GetPDOMapping
byte GetPDOMapping(short masterIndex, short slaveIndex, short pdoType, com.sun.jna.Pointer mappingBuffer, int bufferSize, com.sun.jna.ptr.IntByReference mappingCount) 获取 PDO 映射. C 返回 boolean(uint8); Java 用 byte, 上层!= 0判真. -
SetRedProcessdata
void SetRedProcessdata(int mode) 设置冗余处理模式 -
GetRedProcessdata
int GetRedProcessdata()获取冗余处理模式 -
EnableRedundancy
boolean EnableRedundancy(short masterIndex, boolean enable) 启用/禁用冗余 -
GetRedundancyStatus
com.sun.jna.Pointer GetRedundancyStatus(short masterIndex) 获取冗余状态指针 -
ForceRedundancyFailover
boolean ForceRedundancyFailover(short masterIndex) 强制冗余故障切换 -
CheckRedundancyHealth
boolean CheckRedundancyHealth(short masterIndex) 检查冗余健康状态 -
GetRingMode
int GetRingMode(short masterIndex) 获取环拓扑冗余模式 (0=Inactive, 1=Dual, 2=Degraded) -
GetSecondaryLinkStatus
boolean GetSecondaryLinkStatus(short masterIndex) 获取冗余链路状态 -
ApplyRealtimeOptimizations
boolean ApplyRealtimeOptimizations()应用实时优化 -
RemoveRealtimeOptimizations
boolean RemoveRealtimeOptimizations()移除实时优化 -
GetRealtimeOptimizationsStatus
boolean GetRealtimeOptimizationsStatus()获取实时优化状态 -
AbortScan
void AbortScan()中止网络扫描 -
ResetScanAbort
void ResetScanAbort()重置扫描中止标志 -
AbortNetwork
void AbortNetwork()中止网络操作 -
ResetAbortNetwork
void ResetAbortNetwork()重置网络中止标志 -
EmergencyCloseNics
void EmergencyCloseNics()紧急关闭所有网卡句柄 -
SetMasterLoopCycleTime
void SetMasterLoopCycleTime(short masterIndex, int timeNs) 设置主站 PDO 循环时间 (纳秒) -
GetTimingMode
int GetTimingMode(short masterIndex) 获取定时模式 -
GetAvailableCpuCores
int GetAvailableCpuCores()获取可用 CPU 核心数 -
SetMasterCpuAffinity
boolean SetMasterCpuAffinity(short masterIndex, int cpuCore) 设置主站 CPU 亲和性 -
SetProcessCpuAffinity
boolean SetProcessCpuAffinity(int cpuCore) 设置进程 CPU 亲和性 -
SetPDOThreadCpuAffinity
boolean SetPDOThreadCpuAffinity(short masterIndex, int cpuCore) 设置 PDO 线程 CPU 亲和性 -
GetPDOThreadCpuAffinity
int GetPDOThreadCpuAffinity(short masterIndex) 获取 PDO 线程 CPU 亲和性 -
SetUdpMode
boolean SetUdpMode(short masterIndex, boolean enable) 设置 UDP 模式 -
GetUdpMode
boolean GetUdpMode(short masterIndex) 获取 UDP 模式 -
IsUdpAvailable
boolean IsUdpAvailable(short masterIndex) 检查 UDP 是否可用 -
IsWdkAvailable
boolean IsWdkAvailable(short masterIndex) 检查 WDK 是否可用 -
SetWdkMode
boolean SetWdkMode(short masterIndex, boolean enable) 设置 WDK 模式 -
GetWdkMode
boolean GetWdkMode(short masterIndex) 获取 WDK 模式 -
StartWdkRT
boolean StartWdkRT(short masterIndex, int cycleUs, int cpuIndex) 启动 WDK 实时线程 -
StopWdkRT
boolean StopWdkRT(short masterIndex) 停止 WDK 实时线程 -
CiA402_ParseState
int CiA402_ParseState(short statusword) 解析状态字, 返回 CiA 402 状态值 -
CiA402_GetEnableCommand
short CiA402_GetEnableCommand(short statusword) 根据当前状态字计算使能控制字 -
CiA402_SetMode
boolean CiA402_SetMode(short master, short slave, byte mode) 设置运行模式 (0x6060) -
CiA402_GetMode
byte CiA402_GetMode(short master, short slave) 获取当前运行模式 (0x6061) -
CiA402_ReadStatusWord
short CiA402_ReadStatusWord(short master, short slave) 读取状态字 (0x6041) -
CiA402_WriteControlWord
boolean CiA402_WriteControlWord(short master, short slave, short cw) 写入控制字 (0x6040) -
CiA402_Enable
boolean CiA402_Enable(short master, short slave, int maxRetries) 自动使能驱动器 (状态机链式推进) -
CiA402_FaultReset
boolean CiA402_FaultReset(short master, short slave) 故障复位 -
EmcyGetHistory
获取 EMCY 历史记录 -
EmcyClearHistory
void EmcyClearHistory(short master, short slave) 清除 EMCY 历史记录 -
EmcyGetCount
int EmcyGetCount(short master, short slave) 获取 EMCY 记录数量 -
PDOReadInputU8
byte PDOReadInputU8(short mi, short si, int off) 读取输入 PDO: 无符号 8 位 -
PDOReadInputI16
short PDOReadInputI16(short mi, short si, int off) 读取输入 PDO: 有符号 16 位 -
PDOReadInputU16
short PDOReadInputU16(short mi, short si, int off) 读取输入 PDO: 无符号 16 位 -
PDOReadInputI32
int PDOReadInputI32(short mi, short si, int off) 读取输入 PDO: 有符号 32 位 -
PDOReadInputU32
int PDOReadInputU32(short mi, short si, int off) 读取输入 PDO: 无符号 32 位 -
PDOReadInputF32
float PDOReadInputF32(short mi, short si, int off) 读取输入 PDO: 32 位浮点 -
PDOWriteOutputU8
boolean PDOWriteOutputU8(short mi, short si, int off, byte val) 写入输出 PDO: 无符号 8 位 -
PDOWriteOutputI16
boolean PDOWriteOutputI16(short mi, short si, int off, short val) 写入输出 PDO: 有符号 16 位 -
PDOWriteOutputU16
boolean PDOWriteOutputU16(short mi, short si, int off, short val) 写入输出 PDO: 无符号 16 位 -
PDOWriteOutputI32
boolean PDOWriteOutputI32(short mi, short si, int off, int val) 写入输出 PDO: 有符号 32 位 -
PDOWriteOutputU32
boolean PDOWriteOutputU32(short mi, short si, int off, int val) 写入输出 PDO: 无符号 32 位 -
PDOWriteOutputF32
boolean PDOWriteOutputF32(short mi, short si, int off, float val) 写入输出 PDO: 32 位浮点 -
PdoReadInt8
byte PdoReadInt8(short master, short slave, int offset) 类型化读取 PDO: 有符号 8 位 (int8_t). @return 读取值 (有符号字节) -
PdoReadInt16
short PdoReadInt16(short master, short slave, int offset) 类型化读取 PDO: 有符号 16 位 (int16_t). @return 读取值 -
PdoReadInt32
int PdoReadInt32(short master, short slave, int offset) 类型化读取 PDO: 有符号 32 位 (int32_t). @return 读取值 -
PdoReadUint8
byte PdoReadUint8(short master, short slave, int offset) 类型化读取 PDO: 无符号 8 位 (uint8_t). Java byte 有符号, 上层& 0xFF. -
PdoReadUint16
short PdoReadUint16(short master, short slave, int offset) 类型化读取 PDO: 无符号 16 位 (uint16_t). Java short 有符号, 上层& 0xFFFF. -
PdoReadUint32
int PdoReadUint32(short master, short slave, int offset) 类型化读取 PDO: 无符号 32 位 (uint32_t). Java int 有符号, 上层& 0xFFFFFFFFL. -
PdoWriteInt8
void PdoWriteInt8(short master, short slave, int offset, byte value) 类型化写入 PDO: 有符号 8 位 (int8_t). C 端返回 void. -
PdoWriteInt16
void PdoWriteInt16(short master, short slave, int offset, short value) 类型化写入 PDO: 有符号 16 位 (int16_t). C 端返回 void. -
PdoWriteInt32
void PdoWriteInt32(short master, short slave, int offset, int value) 类型化写入 PDO: 有符号 32 位 (int32_t). C 端返回 void. -
PdoWriteUint8
void PdoWriteUint8(short master, short slave, int offset, byte value) 类型化写入 PDO: 无符号 8 位 (uint8_t). C 端返回 void. -
PdoWriteUint16
void PdoWriteUint16(short master, short slave, int offset, short value) 类型化写入 PDO: 无符号 16 位 (uint16_t). C 端返回 void. -
PdoWriteUint32
void PdoWriteUint32(short master, short slave, int offset, int value) 类型化写入 PDO: 无符号 32 位 (uint32_t). C 端返回 void. -
GetTopology
int GetTopology(short master_index, com.sun.jna.Pointer out_nodes, int max_nodes) 获取拓扑信息, 返回从站数量 -
TopologyBuild
构建网络拓扑 -
TopologyGetChildren
int TopologyGetChildren(short master, short parent, short[] out, int max) 获取指定从站的子节点列表 -
TopologyGetRoots
int TopologyGetRoots(short master, short[] out, int max) 获取拓扑根节点列表 -
GetSlaveDCReceiveTimeA
int GetSlaveDCReceiveTimeA(short masterIndex, short slaveIndex) 获取从站端口 A 接收时间 (纳秒) -
GetSlaveDCReceiveTimeB
int GetSlaveDCReceiveTimeB(short masterIndex, short slaveIndex) 获取从站端口 B 接收时间 (纳秒) -
GetSlaveDCReceiveTimeC
int GetSlaveDCReceiveTimeC(short masterIndex, short slaveIndex) 获取从站端口 C 接收时间 (纳秒) -
GetSlaveDCReceiveTimeD
int GetSlaveDCReceiveTimeD(short masterIndex, short slaveIndex) 获取从站端口 D 接收时间 (纳秒) -
GetSlaveRedundancyActivated
boolean GetSlaveRedundancyActivated(short masterIndex, short slaveIndex) 获取从站冗余是否已激活 -
GetSlavePrimaryLinkBroken
boolean GetSlavePrimaryLinkBroken(short masterIndex, short slaveIndex) 获取从站主线路是否断路 -
GetSlaveSecondaryLinkBroken
boolean GetSlaveSecondaryLinkBroken(short masterIndex, short slaveIndex) 获取从站冗余线路是否断路 -
GetSlaveHasEsi
boolean GetSlaveHasEsi(short masterIndex, short slaveIndex) 获取从站是否已加载 ESI -
GetSlaveEsiVersion
boolean GetSlaveEsiVersion(short masterIndex, short slaveIndex, byte[] buf, int bufSize) 获取从站 ESI 版本 (写入缓冲区, 返回是否成功) -
GetSlaveHasMDP
boolean GetSlaveHasMDP(short masterIndex, short slaveIndex) 获取从站是否支持 MDP -
SetSlaveEsiFile
设置从站 ESI 文件路径 -
EcEsi_LoadFile
加载单个 ESI XML 文件到 ESI 库. 返回加载的 device 数量, 无效输入:'<'0 失败. -
EcEsi_LoadDirectory
递归加载目录下所有 .xml 文件到 ESI 库. 返回加载的 device 数量, 无效输入:'<'0 失败. -
EcEsi_Clear
void EcEsi_Clear()清空 ESI 库 (释放所有已加载的设备描述). -
EcEsi_GetLoadedCount
int EcEsi_GetLoadedCount()返回 ESI 库当前已加载的 device 数量. -
EcEsi_BindToSlave
把指定 ESI 文件绑定到指定从站 (按 VID/PID 显式覆盖自动匹配). -
EcEsi_AutoMatchAll
int EcEsi_AutoMatchAll(short masterIndex) 自动给本主站所有从站匹配 ESI (按 VID/PID 在 ESI 库内找最高 Revision). 返回匹配成功数. -
EcEsi_RegisterStartupParameters
int EcEsi_RegisterStartupParameters(short masterIndex, short slaveIndex) 把单个从站的 InitCmd / Mailbox / 启动 SDO 注册到 master 启动序列 (PreOp 前生效). -
EcEsi_ApplyAllSlaves
int EcEsi_ApplyAllSlaves(short masterIndex) 对所有已匹配 ESI 的从站批量注册启动参数. 返回注册成功的从站数. -
GetSlaveVendorName
int GetSlaveVendorName(short masterIndex, short slaveIndex, com.sun.jna.Pointer buf, int bufLen) 获取从站厂商名称 (写入缓冲区, 返回实际长度) -
GetSlaveActivePorts
byte GetSlaveActivePorts(short masterIndex, short slaveIndex) 获取从站活动端口 -
GetSlaveParent
short GetSlaveParent(short masterIndex, short slaveIndex) 获取从站父节点索引 (uint16).注意: 返回 short 是 JNA 习惯, 实际为 uint16. 无父节点 (拓扑根) 时 native 层返回 sentinel 0xFFFF, 在 Java 中表现为 -1 (符号位扩展). 调用方必须用
(result & 0xFFFF)转换为无 符号比较, 或显式判result == (short)0xFFFF, 不要直接result < 0. -
VerifyAllSlaveIdentities
boolean VerifyAllSlaveIdentities(short masterIndex, DarraCore.SlaveIdentity[] expectedIdentities, int slaveCount, boolean checkRevision, boolean checkSerial, long[] mismatchMask) 批量验证所有从站身份 -
GetMasterIdentity
获取主站身份信息 (ETG.1510 对象 0x1018) -
GetMasterDiagData
获取主站诊断数据 (ETG.1510 对象 0xF120) -
ec_validate_config
int ec_validate_config(short masterIndex) 验证主站配置 -
ec_perf_export_csv
导出性能统计到 CSV 文件 -
FSoEInitConnection
初始化从站的 FSoE 连接 -
FSoECloseConnection
boolean FSoECloseConnection(short masterIndex, short slaveIndex) 关闭 FSoE 连接 -
FSoEGetStatus
获取 FSoE 连接状态 -
FSoERequestState
boolean FSoERequestState(short masterIndex, short slaveIndex, int targetState) 请求 FSoE 状态转换 -
FSoEGetState
int FSoEGetState(short masterIndex, short slaveIndex) 获取当前 FSoE 状态 -
FSoEReset
boolean FSoEReset(short masterIndex, short slaveIndex) 重置 FSoE 连接到初始状态 -
FSoEWriteSafeOutput
boolean FSoEWriteSafeOutput(short masterIndex, short slaveIndex, byte[] data, int size) 写入安全输出数据 -
FSoEReadSafeInput
boolean FSoEReadSafeInput(short masterIndex, short slaveIndex, byte[] data, com.sun.jna.ptr.IntByReference size) 读取安全输入数据 -
FSoEDownloadParameters
boolean FSoEDownloadParameters(short masterIndex, short slaveIndex, byte[] paramData, int paramSize, com.sun.jna.ptr.IntByReference sraCrc) 下载安全参数 (在 PARAMETER 状态) -
FSoESetFailsafeOutput
boolean FSoESetFailsafeOutput(short masterIndex, short slaveIndex, byte[] data, int size) 设置失效安全输出值 -
FSoECheckWatchdog
boolean FSoECheckWatchdog(short masterIndex, short slaveIndex) 检查看门狗状态 -
FSoEGetLastError
int FSoEGetLastError(short masterIndex, short slaveIndex) 获取最后的 FSoE 错误 -
FSoEClearError
void FSoEClearError(short masterIndex, short slaveIndex) 清除 FSoE 错误 -
FSoEIsSlaveCapable
boolean FSoEIsSlaveCapable(short masterIndex, short slaveIndex) 检查从站是否支持 FSoE -
FSoEGetConnectionCount
short FSoEGetConnectionCount(short masterIndex) 获取主站的 FSoE 连接数 -
FSoEProcessCycle
void FSoEProcessCycle(short masterIndex) 处理 FSoE 帧 (由 PDO 循环调用) -
DxSafeMdpInitConnection
boolean DxSafeMdpInitConnection(short masterIndex, short slaveIndex, short connectionIndex, DarraCore.SafeMdpConfig config) 初始化 MDP 从站的指定连接 -
DxSafeMdpCloseConnection
boolean DxSafeMdpCloseConnection(short masterIndex, short slaveIndex, short connectionIndex) 关闭 MDP 从站的指定连接 -
DxSafeMdpGetStatus
boolean DxSafeMdpGetStatus(short masterIndex, short slaveIndex, short connectionIndex, DarraCore.FSoEStatus status) 获取指定连接的状态 -
DxSafeMdpRequestState
boolean DxSafeMdpRequestState(short masterIndex, short slaveIndex, short connectionIndex, int targetState) 请求指定连接的状态转换 -
DxSafeMdpGetState
int DxSafeMdpGetState(short masterIndex, short slaveIndex, short connectionIndex) 获取指定连接的当前状态 -
DxSafeMdpReset
boolean DxSafeMdpReset(short masterIndex, short slaveIndex, short connectionIndex) 重置指定连接 -
DxSafeMdpWriteSafeOutput
boolean DxSafeMdpWriteSafeOutput(short masterIndex, short slaveIndex, short connectionIndex, byte[] data, int size) 写入指定连接的安全输出数据 -
DxSafeMdpReadSafeInput
boolean DxSafeMdpReadSafeInput(short masterIndex, short slaveIndex, short connectionIndex, byte[] data, com.sun.jna.ptr.IntByReference size) 读取指定连接的安全输入数据 -
DxSafeMdpDownloadParameters
boolean DxSafeMdpDownloadParameters(short masterIndex, short slaveIndex, short connectionIndex, byte[] paramData, int paramSize, com.sun.jna.ptr.IntByReference sraCrc) 下载指定连接的安全参数 -
DxSafeMdpSetFailsafeOutput
boolean DxSafeMdpSetFailsafeOutput(short masterIndex, short slaveIndex, short connectionIndex, byte[] data, int size) 设置指定连接的失效安全输出值 -
DxSafeMdpCheckWatchdog
boolean DxSafeMdpCheckWatchdog(short masterIndex, short slaveIndex, short connectionIndex) 检查指定连接的看门狗状态 -
DxSafeMdpGetLastError
int DxSafeMdpGetLastError(short masterIndex, short slaveIndex, short connectionIndex) 获取指定连接的最后错误 -
DxSafeMdpClearError
void DxSafeMdpClearError(short masterIndex, short slaveIndex, short connectionIndex) 清除指定连接的错误 -
DxSafeMdpGetSlaveConnectionCount
short DxSafeMdpGetSlaveConnectionCount(short masterIndex, short slaveIndex) 获取从站的 FSoE 连接数量 -
DxSafeMdpDetectConnections
short DxSafeMdpDetectConnections(short masterIndex, short slaveIndex) 检测从站是否为 MDP 设备并返回支持的 FSoE 连接数 -
DxSafeMdpGetDeviceAddress
boolean DxSafeMdpGetDeviceAddress(short masterIndex, short slaveIndex, com.sun.jna.ptr.ShortByReference safetyAddress) 读取从站的设备级 FSoE 安全地址 (0xF980:01) -
DxSafeMdpGetModuleCommParam
boolean DxSafeMdpGetModuleCommParam(short masterIndex, short slaveIndex, short moduleNumber, byte[] paramData, com.sun.jna.ptr.IntByReference paramSize) 读取指定模块的 FSoE 通信参数 (0x9nn1) -
DxSafeMdpGetModuleDiagnosis
boolean DxSafeMdpGetModuleDiagnosis(short masterIndex, short slaveIndex, short moduleNumber, com.sun.jna.ptr.ShortByReference connectionState, com.sun.jna.ptr.ShortByReference connectionDiagnosis) 读取指定模块的 FSoE 诊断数据 (0xAnn0) -
GetSlaveAliasAddr
short GetSlaveAliasAddr(short masterIndex, short slaveIndex) 获取从站别名地址 -
GetSlaveName
int GetSlaveName(short masterIndex, short slaveIndex, byte[] buf, int bufSize) 获取从站名称 (EEPROM).C 原型:
int GetSlaveName(uint16_t master, uint16_t slave, char* buf, int buf_size)— 调用方提供缓冲区, 返回写入字节数 (<=0 表示失败). 之前误声明为String GetSlaveName(short, short), 缺失 buf/buf_size 两个实参, 导致 C 端从 R8/R9 寄存器读取垃圾指针/长度并写入 → 原生栈/内存破坏 → STATUS_STACK_OVERFLOW (0xC00000FD). 修正为 C# 基准一致的缓冲区签名. -
GetSlaveDeviceName
int GetSlaveDeviceName(short masterIndex, short slaveIndex, byte[] buf, int bufSize) 获取从站设备名称 (SDO 0x1008).C 原型:
int GetSlaveDeviceName(uint16_t master, uint16_t slave, char* buf, int buf_size). 见GetSlaveName(short, short, byte[], int)修复说明. -
GetSlaveVendorId
int GetSlaveVendorId(short masterIndex, short slaveIndex) 获取从站厂商 ID -
GetSlaveProductCode
int GetSlaveProductCode(short masterIndex, short slaveIndex) 获取从站产品代码 -
GetSlaveRevision
int GetSlaveRevision(short masterIndex, short slaveIndex) 获取从站修订版本号 -
GetSlaveSerialNumber
int GetSlaveSerialNumber(short masterIndex, short slaveIndex) 获取从站序列号 -
GetSlaveConfigAddr
short GetSlaveConfigAddr(short masterIndex, short slaveIndex) 获取从站配置地址 -
GetSlaveIsLost
boolean GetSlaveIsLost(short masterIndex, short slaveIndex) 获取从站是否丢失 -
GetSlaveHasDC
boolean GetSlaveHasDC(short masterIndex, short slaveIndex) 获取从站是否支持 DC -
GetSlaveInputBits
short GetSlaveInputBits(short masterIndex, short slaveIndex) 获取从站输入位数 -
GetSlaveInputBytes
int GetSlaveInputBytes(short masterIndex, short slaveIndex) 获取从站输入字节数 -
GetSlaveInputOffset
int GetSlaveInputOffset(short masterIndex, short slaveIndex) 获取从站输入偏移 -
GetSlaveInputStartBit
byte GetSlaveInputStartBit(short masterIndex, short slaveIndex) 获取从站输入起始位 -
GetSlaveOutputBits
short GetSlaveOutputBits(short masterIndex, short slaveIndex) 获取从站输出位数 -
GetSlaveOutputBytes
int GetSlaveOutputBytes(short masterIndex, short slaveIndex) 获取从站输出字节数 -
GetSlaveOutputOffset
int GetSlaveOutputOffset(short masterIndex, short slaveIndex) 获取从站输出偏移 -
GetSlaveOutputStartBit
byte GetSlaveOutputStartBit(short masterIndex, short slaveIndex) 获取从站输出起始位 -
GetSlaveBlockLRW
boolean GetSlaveBlockLRW(short masterIndex, short slaveIndex) 获取从站 BlockLRW 标志 -
GetSlaveEbusCurrent
short GetSlaveEbusCurrent(short masterIndex, short slaveIndex) 获取从站 E-bus 电流 (mA) -
GetSlaveEep8Byte
boolean GetSlaveEep8Byte(short masterIndex, short slaveIndex) 获取从站 EEPROM 8字节寻址 -
GetSlaveEepPDI
byte GetSlaveEepPDI(short masterIndex, short slaveIndex) 获取从站 PDI 类型 -
GetSlaveCoEDetails
byte GetSlaveCoEDetails(short masterIndex, short slaveIndex) 获取从站 CoE 详情 -
GetSlaveFoEDetails
byte GetSlaveFoEDetails(short masterIndex, short slaveIndex) 获取从站 FoE 详情 -
GetSlaveEoEDetails
byte GetSlaveEoEDetails(short masterIndex, short slaveIndex) 获取从站 EoE 详情 -
GetSlaveSoEDetails
byte GetSlaveSoEDetails(short masterIndex, short slaveIndex) 获取从站 SoE 详情 -
GetSlaveMailboxProto
short GetSlaveMailboxProto(short masterIndex, short slaveIndex) 获取从站邮箱协议类型 -
GetSlaveMailboxWriteLength
short GetSlaveMailboxWriteLength(short masterIndex, short slaveIndex) 获取从站邮箱写入长度 -
GetSlaveMailboxReadLength
short GetSlaveMailboxReadLength(short masterIndex, short slaveIndex) 获取从站邮箱读取长度 -
GetSlaveMailboxReadOffset
short GetSlaveMailboxReadOffset(short masterIndex, short slaveIndex) 获取从站邮箱读取偏移 -
GetSlaveMailboxWriteOffset
short GetSlaveMailboxWriteOffset(short masterIndex, short slaveIndex) 获取从站邮箱写入偏移 -
GetSlaveMbxCount
byte GetSlaveMbxCount(short masterIndex, short slaveIndex) 获取从站邮箱计数器 -
GetSlaveSMLength
short GetSlaveSMLength(short masterIndex, short slaveIndex, byte smIdx) 查询从站 SyncManager 长度 (字节, 主机字节序). 与 C# GetSlaveSMLength 对齐.PDO 能力检测: SM2 (Output PDO) / SM3 (Input PDO) 长度为 0 表示未配置 PDO 映射.
- 参数:
smIdx- SyncManager 索引 (0..7)- 返回:
- SM 长度 (字节), unsigned 上层
& 0xFFFF; 0=未配置/参数错
-
EcxMbxGetStats
int EcxMbxGetStats(short masterIndex, short slave, byte protocolType, DarraCore.MbxStatsNative stats) 查询 per-slave / per-protocol 邮箱统计.- 参数:
protocolType- MBX 协议类型 (CoE=0x03, FoE=0x04, SoE=0x05, AoE=0x01, EoE=0x02, VoE=0x0F, FSoE=0x08; 0=全部累加)stats- 输出: 统计快照- 返回:
- 1=成功 (MBX_STATUS_SUCCESS), 其他=错误
-
EcxMbxResetStats
void EcxMbxResetStats(short masterIndex, short slave, byte protocolType) 重置 per-slave / per-protocol 邮箱统计.- 参数:
protocolType- 协议类型; 0=清空所有协议
-
EcxMbxSubmitAsync
int EcxMbxSubmitAsync(short masterIndex, DarraCore.MbxTransactionNative.ByReference txn, com.sun.jna.ptr.IntByReference outTicket) 异步投递邮箱事务. 立即返回, 凭 ticket 等待/取消.- 参数:
txn- 事务对象 (调用者填 slave/protocol_type/request_frame 等)outTicket- 输出: 票据- 返回:
- 1=成功, 其他=错误
-
EcxMbxWait
int EcxMbxWait(short masterIndex, int ticket, int timeoutMs) 等待异步邮箱事务完成.- 参数:
ticket- submit 返回的票据timeoutMs- 超时 (毫秒), 负值=无限等待- 返回:
- 1=成功, 其他=错误
-
EcxMbxCancel
int EcxMbxCancel(short masterIndex, int ticket) 取消异步邮箱事务.- 参数:
ticket- submit 返回的票据- 返回:
- 1=成功, 其他=错误
-
EcxMbxGetResult
查询异步邮箱事务的完整结果. 必须在 wait 返回后调用; ticket 仍 PENDING/RUNNING 时返回 INVALID_ARG.- 参数:
ticket- submit 返回的票据txn- 输出: 完整事务快照- 返回:
- 1=成功, 其他=错误
-
GetSlaveFMMU0Function
byte GetSlaveFMMU0Function(short masterIndex, short slaveIndex) 获取从站 FMMU0 功能 -
GetSlaveFMMU1Function
byte GetSlaveFMMU1Function(short masterIndex, short slaveIndex) 获取从站 FMMU1 功能 -
GetSlaveFMMU2Function
byte GetSlaveFMMU2Function(short masterIndex, short slaveIndex) 获取从站 FMMU2 功能 -
GetSlaveFMMU3Function
byte GetSlaveFMMU3Function(short masterIndex, short slaveIndex) 获取从站 FMMU3 功能 -
GetSlaveDCActive
short GetSlaveDCActive(short masterIndex, short slaveIndex) 获取从站 DC AssignActivate 值 -
GetSlaveDCCycle0
int GetSlaveDCCycle0(short masterIndex, short slaveIndex) 获取从站 SYNC0 周期 (纳秒) -
GetSlaveDCCycle1
int GetSlaveDCCycle1(short masterIndex, short slaveIndex) 获取从站 SYNC1 周期 (纳秒) -
GetSlaveDCShift
int GetSlaveDCShift(short masterIndex, short slaveIndex) 获取从站 DC 偏移 (纳秒) -
GetSlaveDCNext
short GetSlaveDCNext(short masterIndex, short slaveIndex) 获取从站 DC 下一个索引 -
GetSlaveDCPrevious
short GetSlaveDCPrevious(short masterIndex, short slaveIndex) 获取从站 DC 上一个索引 -
GetSlavePDelay
int GetSlavePDelay(short masterIndex, short slaveIndex) 获取从站传播延迟 -
GetSlaveEntryPort
byte GetSlaveEntryPort(short masterIndex, short slaveIndex) 获取从站入口端口 -
GetSlaveParentPort
byte GetSlaveParentPort(short masterIndex, short slaveIndex) 获取从站父端口 -
GetSlaveParentStation
short GetSlaveParentStation(short masterIndex, short slaveIndex) 获取从站父站地址 -
GetSlavePhysicalType
byte GetSlavePhysicalType(short masterIndex, short slaveIndex) 获取从站物理类型 -
GetSlaveTopologyType
byte GetSlaveTopologyType(short masterIndex, short slaveIndex) 获取从站拓扑类型 -
GetSlaveConsumedPorts
byte GetSlaveConsumedPorts(short masterIndex, short slaveIndex) 获取从站已使用端口 -
FSoEValidateConnId
boolean FSoEValidateConnId(short connId) 校验 FSoE Connection ID 是否可用 / validate FSoE Connection ID availability.- 参数:
connId- 候选 Connection ID (1..65535) / candidate Connection ID.- 返回:
- true=可用 (未占用且非 0) / true when the ID is free and non-zero.
-
coe_diag_poll_new_available
int coe_diag_poll_new_available(short masterIndex, short slaveIndex, com.sun.jna.ptr.IntByReference outAbortCode) 轮询 0x10F3:04 "NewAvailable" 标志 / poll 0x10F3:04 "NewAvailable".- 返回:
- 1=有新消息 / new msg available, 0=无, -1=通信失败.
-
coe_diag_read_meta
int coe_diag_read_meta(short masterIndex, short slaveIndex, com.sun.jna.ptr.ByteByReference maxMsgs, com.sun.jna.ptr.ByteByReference newest, com.sun.jna.ptr.ByteByReference acknowledged, com.sun.jna.ptr.ShortByReference flags16, com.sun.jna.ptr.IntByReference outAbortCode) 读 0x10F3 元数据 / read 0x10F3:01..05 meta (MaxMessages / Newest / Acked / Flags).- 返回:
- 1=OK, 其他=失败.
-
coe_diag_read_message
int coe_diag_read_message(short masterIndex, short slaveIndex, byte msgSubidx, byte[] outBuf, int bufCap, com.sun.jna.ptr.IntByReference outLen, com.sun.jna.ptr.IntByReference outAbortCode) 读 0x10F3:msg_subidx (6..255) 指定诊断消息 / read the specified diagnosis message.- 返回:
- 1=OK, 其他=失败.
-
coe_diag_acknowledge
int coe_diag_acknowledge(short masterIndex, short slaveIndex, byte ackSubidx, com.sun.jna.ptr.IntByReference outAbortCode) 确认已处理消息 / acknowledge the newest-processed sub-index.- 返回:
- 1=OK, 其他=失败.
-
coe_get_od_list
com.sun.jna.Pointer coe_get_od_list(short masterIndex, short slaveIndex) 读对象索引清单. 返回 ec_ODlistt*, coe_free_odlist 释放. NULL=失败. -
coe_get_object_desc
com.sun.jna.Pointer coe_get_object_desc(short masterIndex, short slaveIndex, short index) 读单个对象 Description (DataType/MaxSub/Name). NULL=失败. -
coe_get_entry_desc
com.sun.jna.Pointer coe_get_entry_desc(short masterIndex, short slaveIndex, short index, byte subindex) 读单个 Entry Description (DataType/BitLength/ObjAccess/Name). NULL=失败. -
coe_free_odlist
void coe_free_odlist(com.sun.jna.Pointer p) 释放 coe_get_od_list / coe_get_object_desc 返回的指针. -
coe_free_oelist
void coe_free_oelist(com.sun.jna.Pointer p) 释放 coe_get_entry_desc 返回的指针. -
AL_StatusCode_GetDescription
com.sun.jna.Pointer AL_StatusCode_GetDescription(short code) -
AL_StatusCode_GetSeverity
int AL_StatusCode_GetSeverity(short code) -
AL_StatusCode_GetRecoveryHint
com.sun.jna.Pointer AL_StatusCode_GetRecoveryHint(short code) -
AL_StatusCode_IsVendorSpecific
int AL_StatusCode_IsVendorSpecific(short code) -
SDOAbort_GetDescription
com.sun.jna.Pointer SDOAbort_GetDescription(int abortCode) -
SDOAbort_GetCategory
int SDOAbort_GetCategory(int abortCode) -
SDOAbort_IsRetryable
int SDOAbort_IsRetryable(int abortCode) -
SDOAbort_GetHint
com.sun.jna.Pointer SDOAbort_GetHint(int abortCode) -
EmcyCode_GetDescription
com.sun.jna.Pointer EmcyCode_GetDescription(short errorCode) -
EmcyCode_GetClass
int EmcyCode_GetClass(short errorCode) -
EmcyCode_GetClassName
com.sun.jna.Pointer EmcyCode_GetClassName(int classCode) -
EmcyCode_FormatErrorRegister
void EmcyCode_FormatErrorRegister(byte errorRegister, byte[] buf, int bufSize) -
EmcyCode_IsRecovery
int EmcyCode_IsRecovery(short errorCode) -
EcState_IsValidTransition
int EcState_IsValidTransition(short from, short to) -
EcState_GetTransitionType
int EcState_GetTransitionType(short from, short to) -
EcState_GetTransitionPath
int EcState_GetTransitionPath(short from, short to, short[] path, int pathCapacity) -
EcState_IsBootstrapRequired
int EcState_IsBootstrapRequired(short state) -
EcState_GetName
com.sun.jna.Pointer EcState_GetName(short state) -
EcState_GetNameEn
com.sun.jna.Pointer EcState_GetNameEn(short state) -
EcState_HasErrorAck
int EcState_HasErrorAck(short state) -
EcState_StripErrorAck
short EcState_StripErrorAck(short state) -
EcPdoCodec_DataTypeBitSize
int EcPdoCodec_DataTypeBitSize(int dt) -
EcPdoCodec_DataTypeName
com.sun.jna.Pointer EcPdoCodec_DataTypeName(int dt) -
EcPdoCodec_ExtractU64
int EcPdoCodec_ExtractU64(byte[] src, int srcSize, int bitOffset, int bitLength, com.sun.jna.ptr.LongByReference value) -
EcPdoCodec_ExtractI64
int EcPdoCodec_ExtractI64(byte[] src, int srcSize, int bitOffset, int bitLength, com.sun.jna.ptr.LongByReference value) -
EcPdoCodec_InsertU64
int EcPdoCodec_InsertU64(byte[] dst, int dstSize, int bitOffset, int bitLength, long value) -
EcPdoCodec_InsertI64
int EcPdoCodec_InsertI64(byte[] dst, int dstSize, int bitOffset, int bitLength, long value) -
EcPdoCodec_ExtractReal32
int EcPdoCodec_ExtractReal32(byte[] src, int srcSize, int bitOffset, com.sun.jna.ptr.FloatByReference value) -
EcPdoCodec_ExtractReal64
int EcPdoCodec_ExtractReal64(byte[] src, int srcSize, int bitOffset, com.sun.jna.ptr.DoubleByReference value) -
EcPdoCodec_InsertReal32
int EcPdoCodec_InsertReal32(byte[] dst, int dstSize, int bitOffset, float value) -
EcPdoCodec_InsertReal64
int EcPdoCodec_InsertReal64(byte[] dst, int dstSize, int bitOffset, double value) -
EcPdoCodec_CountActivePorts
int EcPdoCodec_CountActivePorts(byte activePorts) -
EcPdoCodec_GetTopology
int EcPdoCodec_GetTopology(byte activePorts) -
EcPdoCodec_GetTopologyName
com.sun.jna.Pointer EcPdoCodec_GetTopologyName(int topo) -
EcPdoCodec_GetTopologyNameEn
com.sun.jna.Pointer EcPdoCodec_GetTopologyNameEn(int topo) -
EcPdoCodec_IsPortActive
int EcPdoCodec_IsPortActive(byte activePorts, int port) -
CiA402Modes_ModeToSupportedBit
int CiA402Modes_ModeToSupportedBit(byte mode) -
CiA402Modes_IsModeSupportedInMask
int CiA402Modes_IsModeSupportedInMask(int mask, byte mode) -
CiA402Modes_ExpandSupportedMask
int CiA402Modes_ExpandSupportedMask(int mask, byte[] modes, int capacity) -
CiA402Modes_GetModeName
com.sun.jna.Pointer CiA402Modes_GetModeName(byte mode) -
CiA402Modes_GetModeNameEn
com.sun.jna.Pointer CiA402Modes_GetModeNameEn(byte mode) -
CiA402Modes_GetModeDescription
com.sun.jna.Pointer CiA402Modes_GetModeDescription(byte mode) -
CiA402Modes_IsCyclicSyncMode
int CiA402Modes_IsCyclicSyncMode(byte mode) -
CiA402Modes_RequiresDC
int CiA402Modes_RequiresDC(byte mode) -
CiA402Modes_IsStandardHomingMethod
int CiA402Modes_IsStandardHomingMethod(byte method) -
CiA402Modes_GetHomingMethodName
com.sun.jna.Pointer CiA402Modes_GetHomingMethodName(byte method) -
CiA402Modes_GetHomingTrigger
int CiA402Modes_GetHomingTrigger(byte method) -
CiA402Modes_GetHomingDirection
int CiA402Modes_GetHomingDirection(byte method) -
CiA402Modes_ListStandardHomingMethods
int CiA402Modes_ListStandardHomingMethods(byte[] array, int capacity) -
EcMailbox_GetTypeName
com.sun.jna.Pointer EcMailbox_GetTypeName(short type) -
EcMailbox_GetTypeNameEn
com.sun.jna.Pointer EcMailbox_GetTypeNameEn(short type) -
EcMailbox_GetErrorDescription
com.sun.jna.Pointer EcMailbox_GetErrorDescription(short mbxErrorCode) -
EcMailbox_NextCounter
byte EcMailbox_NextCounter(byte current) -
EcSoE_GetErrorDescription
com.sun.jna.Pointer EcSoE_GetErrorDescription(short soeError) -
EcSii_FindCategory
int EcSii_FindCategory(byte[] siiData, int siiSize, short catType, com.sun.jna.ptr.IntByReference outSizeBytes) -
EcSii_EnumerateCategories
int EcSii_EnumerateCategories(byte[] siiData, int siiSize, short[] catTypes, int capacity) -
EcSii_GetStringByIndex
int EcSii_GetStringByIndex(byte[] catData, int catSize, int idx, byte[] outBuf, int bufSize) -
EcSii_GetStringCount
int EcSii_GetStringCount(byte[] catData, int catSize) -
EcSii_GetVendorId
int EcSii_GetVendorId(byte[] siiData, int siiSize) -
EcSii_GetProductCode
int EcSii_GetProductCode(byte[] siiData, int siiSize) -
EcSii_GetRevision
int EcSii_GetRevision(byte[] siiData, int siiSize) -
EcSii_GetSerialNumber
int EcSii_GetSerialNumber(byte[] siiData, int siiSize) -
EcSii_GetConfiguredAlias
short EcSii_GetConfiguredAlias(byte[] siiData, int siiSize) -
EcSii_CoeEnabled
int EcSii_CoeEnabled(byte coeDetails) -
EcSii_CoeSdoInfo
int EcSii_CoeSdoInfo(byte coeDetails) -
EcSii_CoePdoAssign
int EcSii_CoePdoAssign(byte coeDetails) -
EcSii_CoePdoConfig
int EcSii_CoePdoConfig(byte coeDetails) -
EcSii_CoeUploadAtStartup
int EcSii_CoeUploadAtStartup(byte coeDetails) -
EcSii_CoeCompleteAccess
int EcSii_CoeCompleteAccess(byte coeDetails) -
EcSii_FoeEnabled
int EcSii_FoeEnabled(byte foeDetails) -
EcSii_EoeEnabled
int EcSii_EoeEnabled(byte eoeDetails) -
EcCouplerId_DetectDeviceType
int EcCouplerId_DetectDeviceType(int vendorId, int productCode) -
EcCouplerId_IsCoupler
int EcCouplerId_IsCoupler(int vendorId, int productCode) -
EcCouplerId_IsTerminal
int EcCouplerId_IsTerminal(int vendorId, int productCode) -
EcCouplerId_GetVendorName
com.sun.jna.Pointer EcCouplerId_GetVendorName(int vendorId) -
EcCouplerId_GetVendorNameEn
com.sun.jna.Pointer EcCouplerId_GetVendorNameEn(int vendorId) -
EcCouplerId_GetDeviceTypeName
com.sun.jna.Pointer EcCouplerId_GetDeviceTypeName(int type) -
EcDiagStrings_TopologyDescription
com.sun.jna.Pointer EcDiagStrings_TopologyDescription(byte topo) -
EcDiagStrings_TimingMode
com.sun.jna.Pointer EcDiagStrings_TimingMode(int mode) -
EcDiagStrings_BreakpointType
com.sun.jna.Pointer EcDiagStrings_BreakpointType(byte bp) -
EcDiagStrings_FormatBreakpoint
void EcDiagStrings_FormatBreakpoint(short slaveIdx, byte port, byte bp, byte[] buf, int bufSize) -
GetPrimaryWKC
short GetPrimaryWKC()全局 primary 工作计数器 (无 master 参数, kernel 全局共享) -
GetSecondaryWKC
short GetSecondaryWKC()全局 secondary 工作计数器 -
GetWdkPrimaryFrameTx
int GetWdkPrimaryFrameTx(short masterIndex) 主网卡 TX 帧累计 (kernel WDK 直读) -
GetWdkPrimaryFrameRx
int GetWdkPrimaryFrameRx(short masterIndex) 主网卡 RX 帧累计 -
GetWdkSecondaryFrameTx
int GetWdkSecondaryFrameTx(short masterIndex) 副网卡 TX 帧累计 -
GetWdkSecondaryFrameRx
int GetWdkSecondaryFrameRx(short masterIndex) 副网卡 RX 帧累计 -
GetGroupActualWKC
short GetGroupActualWKC(short masterIndex, byte group) 组实际 WKC (与 GetGroupExpectedWKC 配对) -
GetGroupDiag
void GetGroupDiag(short masterIndex, byte group, com.sun.jna.ptr.ShortByReference miss, com.sun.jna.ptr.IntByReference total, com.sun.jna.ptr.IntByReference mismatch) 组诊断: miss/total/mismatch (与 C# GetGroupDiag 签名对齐) -
HotConnectAddGroup
int HotConnectAddGroup(short masterIndex, short groupId, short alias, int vendorId, int productCode) 注册 Hot-Connect 组. 返回 1=OK, 0=失败. -
HotConnectRemoveGroup
int HotConnectRemoveGroup(short masterIndex, short groupId) 移除 Hot-Connect 组. 返回 1=OK, 0=失败. -
HotConnectGetGroupStatus
int HotConnectGetGroupStatus(short masterIndex, short groupId) 查询组状态. 返回 1=Present, 0=Absent, -1=未知. -
HotConnectEnumerate
int HotConnectEnumerate(short masterIndex, com.sun.jna.Pointer outBuf, int max) 枚举所有 Hot-Connect 组 (out_buf 必须是连续 hotconnect_group_t[max] 缓冲). 返回写入条数. -
HotConnectClearAll
void HotConnectClearAll(short masterIndex) 清空所有 Hot-Connect 组. -
HotConnectGetGroupCount
int HotConnectGetGroupCount(short masterIndex) 当前已注册组数. -
EOESendFrameEx
boolean EOESendFrameEx(short masterIndex, short slave, byte port, byte[] frameData, int frameSize, byte timeAppended, int timestamp, int timeoutUs) EoE 扩展发送 (ETG.1000.6 §5.7): 在第一片 frameinfo1 置 TIME_APPEND 并将 4B 时间戳追加到末尾. timeAppended=1 时启用 TIME_APPEND, 否则等价 EOESendFrame. -
EOESetReceiveHook
注册 EoE 异步接收 Hook (callback=null 等价 Clear). -
EOEClearReceiveHook
boolean EOEClearReceiveHook(short masterIndex) 清除 EoE 异步接收 Hook. -
VOEStartNotificationListener
boolean VOEStartNotificationListener(short masterIndex) 启动 VoE 监听线程 (重入安全). -
VOEStopNotificationListener
boolean VOEStopNotificationListener()停止 VoE 监听线程 (全局, 非按 master). -
VOEIsNotificationListening
boolean VOEIsNotificationListening()查询 VoE 监听线程是否运行. -
VOERegisterNotification
int VOERegisterNotification(short slave, int vendorId, short vendorType, DarraCore.VoENotificationCallback callback, com.sun.jna.Pointer userData) 注册 VoE 通知回调. slave=0 / vendorId=0 / vendorType=0 表示通配.- 返回:
- 订阅索引 (>=0) 用于注销, 失败 -1.
-
VOEUnregisterNotification
boolean VOEUnregisterNotification(int subscriptionIndex) 注销 VoE 通知回调. -
EnumerateDefaultPdo
int EnumerateDefaultPdo(short masterIndex, short slaveIndex, int direction, short[] outIndices, int maxCount) 枚举从站默认 PDO Assignment (协议下沉到 native)
SDK 公开层不再循环 SDORead 0x1C12/0x1C13; 由 native 处理协议细节.- 参数:
masterIndex- master 索引 (0..EC_MAX_MASTERNUM-1)slaveIndex- slave 索引 (1..slavecount)direction- 0=RxPDO (0x1C12), 1=TxPDO (0x1C13)outIndices- 调用者提供数组, 写入找到的 PDO 索引 (e.g. 0x1600..)maxCount- 数组容量- 返回:
- 实际写入的 PDO 索引数 (>=0); 失败返回 -1
-
SetDcSyncMode
boolean SetDcSyncMode(short masterIndex, short slaveIndex, byte syncType) 配置从站 SyncManager 同步类型 (协议算法下沉到 native 层). 内部完成 SDO 0x1C32:01 / 0x1C33:01 的禁用 + 写入序列 (ETG.1020 §23.1.2).- 参数:
masterIndex- 主站索引slaveIndex- 从站索引syncType- 0=FreeRun, 1=SmSynchron, 2=DcSynchron, 3=DcSynchron01- 返回:
- true 派发成功, false 入参非法或主站未初始化
-
GetDcSyncMode
byte GetDcSyncMode(short masterIndex, short slaveIndex) 读取从站当前 SyncManager 同步类型 (内部读 0x1C32:01 / 0x1C33:01).- 参数:
masterIndex- 主站索引slaveIndex- 从站索引- 返回:
- 0=FreeRun, 1=SmSynchron, 2=DcSynchron, 3=DcSynchron01; 读失败 / 不支持也返回 0 (FreeRun)
-
EcEsi_GetDevicePdoIndices
int EcEsi_GetDevicePdoIndices(short masterIndex, short slaveIndex, int direction, short[] outIndices, int maxCount) 列出 Device 的 PDO Index 列表 (从已绑定 ESI Device 派生).- 参数:
direction- 0=RxPDO, 1=TxPDO- 返回:
- 写入数 (>=0); -1 = Slave 未绑定 ESI 或参数非法
-
EcEsi_GetDevicePdoSizeBits
int EcEsi_GetDevicePdoSizeBits(short masterIndex, short slaveIndex, short pdoIndex) 获取指定 PDO 的总位长 (含 Padding). 未找到返回 -1 -
EcEsi_GetDeviceSmInfo
int EcEsi_GetDeviceSmInfo(short masterIndex, short slaveIndex, byte smIdx, com.sun.jna.ptr.ShortByReference startAddr, com.sun.jna.ptr.ShortByReference defaultLen, com.sun.jna.ptr.ByteByReference controlByte) 获取 Device 的 SyncManager 信息 (sm_idx 0..3).- 返回:
- 0=成功, 非 0=失败
-
EcEsi_GetDeviceDcSyncMode
int EcEsi_GetDeviceDcSyncMode(short masterIndex, short slaveIndex) 获取 Device DC Sync 模式 (与 ec_dc_sync_mode_t 对齐) -
EcEsi_GetDeviceMailboxTimeout
int EcEsi_GetDeviceMailboxTimeout(short masterIndex, short slaveIndex, com.sun.jna.ptr.IntByReference requestMs, com.sun.jna.ptr.IntByReference responseMs) 获取邮箱 Request/Response 超时 (毫秒).- 返回:
- 0=成功, 非 0=失败
-
EcEsi_GetDeviceIdentity
int EcEsi_GetDeviceIdentity(short masterIndex, short slaveIndex, com.sun.jna.ptr.IntByReference vendorId, com.sun.jna.ptr.IntByReference productCode, com.sun.jna.ptr.IntByReference revisionNo, byte[] nameBuf, int nameBufSize) 获取 Vendor/Product/Revision/Name (UTF-8 写入 nameBuf).- 返回:
- 0=成功, 非 0=失败
-
DarraEcat_KernelProbe
int DarraEcat_KernelProbe()探测内核驱动 (DarraRT_Eth.sys) 当前可用性.- 返回:
- DarraKernelStatus 枚举原始码: 0=Ok, 1=NotInstalled, 2=Stopped, 3=AccessDenied, 4=SignatureFail, 5=Blocked, 6=DeviceMissing, 7=Disabled, 99=UnknownError
-
DarraEcat_KernelStatusMessage
com.sun.jna.Pointer DarraEcat_KernelStatusMessage(int status) 获取状态码对应的中文可读消息 (UTF-8, DLL 内部静态字符串). 调用方用 ptr.getString(0, "UTF-8") 解码, 不需要 FreeMemory. -
DarraEcat_KernelInstallerUrl
com.sun.jna.Pointer DarraEcat_KernelInstallerUrl()获取驱动安装包下载链接 (默认 https://www.darrart.com/downloads/drivers, 可通过环境变量 DARRA_INSTALLER_URL 覆盖). 调用方用 ptr.getString(0, "UTF-8") 解码, 不需要 FreeMemory.
-