@iot9x.com/ipc-utils
Version:
九星云、九星小程序、九星配置工具所共用的库方法
90 lines (89 loc) • 3.04 kB
TypeScript
import { F32Encode, F64Encode, I16Encode, I32Encode, I64Encode } from './constant';
/** 编解码参数 */
interface EncodeOptions {
/** 16位整型编码(有符号+无符号) */
i16?: I16Encode;
/** 32位整型编码(有符号+无符号) */
i32?: I32Encode;
/** 32位浮点型编码(FLOAT) */
f32?: F32Encode;
/** 64位整型编码(有符号+无符号) */
i64?: I64Encode;
/** 64位浮点型编码(Double) */
f64?: F64Encode;
}
/** 初始化参数 */
interface Options extends EncodeOptions {
/** 从机地址,可填写`0-255`,标准规定合法的地址是`0–247` */
slaveId: number;
/**
* 取消结尾的回车换行符(\r\n)
*/
disableLinefeed?: boolean;
}
/** 生成指令额外参数 */
interface GetCMDOptions extends StaticGetCMDOptions {
/** 从机地址,可填写`0-255`,标准规定合法的地址是`0–247` */
slaveId?: number;
}
/** 使用静态方法生成指令额外参数 */
interface StaticGetCMDOptions {
/**
* 指令字符是否小写
* @description 传入`true`,返回示例:`:010300000001fb\r\n`;
* @description 传入`false`或不传,返回示例:`:010300000001FB\r\n`
* @default false
*/
lowerCase?: boolean;
/**
* 取消结尾的回车换行符(\r\n)
*/
disableLinefeed?: boolean;
}
export declare class ModbusASCII {
/** 从机地址 */
private slaveId;
/** 取消结尾的回车换行符(\r\n) */
private disableLinefeed;
/** 16位整型编码(有符号+无符号) */
private i16Encode;
/** 32位整型编码(有符号+无符号) */
private i32Encode;
/** 32位浮点型编码(FLOAT) */
private f32Encode;
/** 64位整型编码(有符号+无符号) */
private i64Encode;
/** 64位浮点型编码(Double) */
private f64Encode;
/**
* 实例化ModbusRTU类
* @param params 初始化参数
*/
constructor(params: Options);
/**
* 读线圈寄存器——01功能码
* @param startAddress 起始地址
* @param count 线圈数量
* @param options 生成指令额外参数
* @returns 读取命令——十六进制字符串
*/
readCoilCMD(startAddress: number, count: number, options?: GetCMDOptions): string;
/**
* 读线圈寄存器——01功能码
* @param slaveId 从机地址
* @param startAddress 起始地址
* @param count 线圈数量
* @param options 生成指令额外参数
* @returns 读取命令——十六进制字符串
*/
static readCoilCMD(slaveId: number, startAddress: number, count: number, options?: StaticGetCMDOptions): string;
/**
* Modbus ASCII 读取指令包裹
* @description 将 `Modbus PDU` 数据打包成 `Modbus ASCII` 数据
* @param pduHex Modbus PDU数据(十六进制字符串格式)
* @param options 生成指令额外操作
* @returns Modbus ASCII指令
*/
private readCMDWrap;
}
export {};