subject-two/ohos/so/@ohos.hiserialsdk.d.ts

135 lines
4.4 KiB
TypeScript
Raw Normal View History

2025-02-11 09:26:26 +08:00
/*
* Copyright (c) 2022 Archermind Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import {Callback} from "./basic";
/**
* Provides interfaces to generate system logs.
*
* @namespace HiSerialSDK
* @syscap SystemCapability.HiviewDFX.HiLog
* @crossplatform
* @since 9
*/
declare namespace HiSerialSDK {
/**
*
*/
export interface receiveInfo {
recevedBuf: number[]; // 接收到的数据
recevedLen: number; // 实际接收的数据长度,如果接收出错返回-1
}
/**
*
*
* @param hiSerDevice "/dev/ttyS0"
* @return fd句柄-1
*/
function SerialOpen(hiSerDevice: string): number;
/**
*
*
* @param hiSerDevice "/dev/ttyS0"
* @param callback fd句柄-1
*/
function SerialOpenAsync(hiSerDevice: string, callback: Callback<number>): void;
/**
*
*
* @param fd fd句柄
* @param speed 115200, 57600, 19200, 9600, 4800, 2400, 1200, 300
* @param flow_ctrl
* @param databits
* @param stopbits
* @param parity
*
* @return (0: 成功, -1: 失败)
*/
function SerialSet(fd: number, speed: number, flow_ctrl: number, databits: number, stopbits: number, parity: number): number;
/**
*
*
* @param fd fd句柄
* @param speed 115200, 57600, 19200, 9600, 4800, 2400, 1200, 300
* @param flow_ctrl
* @param databits
* @param stopbits
* @param parity
* @param callback (0: 成功, -1: 失败)
*/
function SerialSetAsync(fd: number, speed: number, flow_ctrl: number, databits: number, stopbits: number, parity: number, callback: Callback<number>): void;
/**
*
*
* @param fd fd句柄
* @param sendBuf
* @return -1
*/
function SerialSend(fd: number, sendBuf: number[]): number;
/**
*
*
* @param fd fd句柄
* @param sendBuf
* @param callback -1
*/
function SerialSendAsync(fd: number, sendBuf: number[], callback: Callback<number>): void;
/**
*
*
* @param fd fd句柄
* @param timeout 01000000 1
* @param recvLen 1024
*
* @return
*/
function SerialRecv(fd: number, timeout: number, recvLen?: number): receiveInfo;
/**
*
*
* @param fd fd句柄
* @param timeout 01000000 1
* @param callback
* @param recvLen 1024
*/
function SerialRecvAsync(fd: number, timeout: number, callback: Callback<receiveInfo>, recvLen?: number): void;
/**
*
*
* @param fd fd句柄
* @return (0: 成功, 其它: 失败)
*/
function SerialClose(fd: number): number;
/**
*
*
* @param fd fd句柄
* @param (0: 成功, 其它: 失败)
*/
function SerialCloseAsync(fd: number, callback: Callback<number>): void;
}
export default HiSerialSDK;