Skip to content

模块导入

javascript
import driversControl from '@ohos.driversControl';

GpioLevel

名称说明
LOWGPIO低电平
HIGHGPIO高电平

GpioType

名称说明
DIDI口,GPIO输入
DODO口,GPIO输出

UartConfig

名称类型说明
baudratenumber波特率
databitsnumber数据位
stopbitsnumber停止位
paritynumber校验位
flowCtrlnumber流控制

constructGpioControlInstance

创建一个GPIO控制对象

javascript
let gpioControl = driversControl.constructGpioControlInstance();

open

初始化并打开指定序号的GPIO引脚。结果通过Promise异步回调方式返回。

open(pin: number, type: GpioType): Promise<void>

参数:

参数名类型必填说明
pinnumberDI/DO引脚序号,DI有效值[1, 8], DO有效值[1, 16]
typeGpioTypeGPIO类型,DI:代表DI口,DO:代表DO口

返回值:

类型说明
Promise<void>

示例:

javascript
gpioControl.open(1, GpioType.DO).then(() => {
   console.log("gpioControl open promise");
});

open

初始化并打开指定序号的GPIO引脚。结果通过callback异步回调方式返回。

open(pin: number, type: GpioType, callback: AsyncCallback<void>): void

参数:

参数名类型必填说明
pinnumberDI/DO引脚序号,DI有效值[1, 8], DO有效值[1, 16]
typeGpioTypeGPIO类型,DI:代表DI口,DO:代表DO口
callbackAsyncCallback<void>Callback回调

示例:

javascript
gpioControl.open(1, GpioType.DO, () => {
   console.log("gpioControl open callback");
});

close

关闭指定序号的GPIO引脚。结果通过Promise异步回调方式返回。

close(pin: number, type: GpioType): Promise<void>

参数:

参数名类型必填说明
pinnumberDI/DO引脚序号,DI有效值[1, 8], DO有效值[1, 16]
typeGpioTypeGPIO类型,DI:代表DI口,DO:代表DO口

返回值:

类型说明
Promise<void>

示例:

javascript
gpioControl.close(1, GpioType.DO).then(() => {
   console.log("gpioControl close promise");
});

close

关闭指定序号的GPIO引脚。结果通过callback异步回调方式返回。

close(pin: number, type: GpioType, callback: AsyncCallback<void>): void

参数:

参数名类型必填说明
pinnumberDI/DO引脚序号,DI有效值[1, 8], DO有效值[1, 16]
typeGpioTypeGPIO类型,DI:代表DI口,DO:代表DO口
callbackAsyncCallback<void>Callback回调

示例:

javascript
gpioControl.close(1, GpioType.DO, () => {
   console.log("gpioControl close callback");
});

write

此接口仅对DO口引脚有效,用于向指定的GPIO引脚序号写入高/低电平。结果通过Promise异步回调方式返回。

write(pin: number, level: GpioLevel): Promise<void>

参数:

参数名类型必填说明
pinnumberDI/DO引脚序号,DI有效值[1, 8], DO有效值[1, 16]
levelGpioLevel高低电平枚举

返回值:

类型说明
Promise<void>

示例:

javascript
gpioControl.write(1, GpioLevel.HIGH).then(() => {
   console.log("gpioControl write promise");
});

write

此接口仅对DO口引脚有效,用于向指定的GPIO引脚序号写入高/低电平。结果通过callback异步回调方式返回。

write(pin: number, level: GpioLevel, callback: AsyncCallback<void>): void

参数:

参数名类型必填说明
pinnumberDI/DO引脚序号,DI有效值[1, 8], DO有效值[1, 16]
levelGpioLevel高低电平枚举
callbackAsyncCallback<void>Callback回调

示例:

javascript
gpioControl.write(1, GpioLevel.HIGH, () => {
   console.log("gpioControl write callback");
});

read

用于读取指定GPIO引脚序号的电平状态。结果通过Promise异步回调方式返回。

read(pin: number, type: GpioType): Promise<GpioLevel>

参数:

参数名类型必填说明
pinnumberDI/DO引脚序号,DI有效值[1, 8], DO有效值[1, 16]
typeGpioTypeGPIO类型,DI:代表DI口,DO:代表DO口

返回值:

类型说明
Promise<GpioLevel>

示例:

javascript
gpioControl.read(1, GpioType.DI).then((gpioLevel: GpioLevel) => {
   console.log("gpioControl read promise status:" + gpioLevel);
});

read

用于读取指定GPIO引脚序号的电平状态。结果通过callback异步回调方式返回。

read(pin: number, type: GpioType, callback: AsyncCallback<GpioLevel>): void

参数:

参数名类型必填说明
pinnumberDI/DO引脚序号,DI有效值[1, 8], DO有效值[1, 16]
typeGpioTypeGPIO类型,DI:代表DI口,DO:代表DO口
callbackAsyncCallback<GpioLevel>Callback回调

示例:

javascript
gpioControl.read(1, GpioType.DI, (gpioLevel: GpioLevel) => {
   console.log("gpioControl read callback status:" + gpioLevel);
});

constructUartControlInstance

constructUartControlInstance(): UartControl

创建一个UART控制对象。

返回值:

类型说明
UartControl

示例:

javascript
let uartControl = driversControl.constructUartControlInstance();

open

根据指定的config配置信息,打开指定端口的串口。结果通过Promise异步回调方式返回。

open(port: number, config: UartConfig): Promise<void>

参数:

参数名类型必填说明
portnumberUART串口端口号,有效值范围[1,12]
configUartConfig串口配置信息

返回值:

类型说明
Promise<void>

示例:

javascript
let config: UartConfig = {
  baudrate: 115200,
  databits: 8,
  stopbits: 1,
  parity: 0,
  flowCtrl: 0
}
uartControl.open(1, config).then(() => {
  console.log("uartControl open promise");
});

open

根据指定的config配置信息,打开指定端口的串口。结果通过callback异步回调方式返回。

open(port: number, config: UartConfig, callback: AsyncCallback<void>): void

参数:

参数名类型必填说明
portnumberUART串口端口号,有效值范围[1,12]
configUartConfig串口配置信息
callbackAsyncCallback<void>Callback回调

示例:

javascript
let config: UartConfig = {
  baudrate: 115200,
  databits: 8,
  stopbits: 1,
  parity: 0,
  flowCtrl: 0
}
uartControl.open(1, config, () => {
  console.log("uartControl open callback");
});

close

关闭指定端口号的串口。结果通过Promise异步回调方式返回。

close(port: number): Promise<void>

参数:

参数名类型必填说明
portnumberUART串口端口号,有效值范围[1,12]

返回值:

类型说明
Promise<void>

示例:

javascript
uartControl.close(1).then(() => {
   console.log("uartControl close promise");
});

close

关闭指定端口号的串口。结果通过callback异步回调方式返回。

close(port: number, callback: AsyncCallback<void>): void

参数:

参数名类型必填说明
portnumberUART串口端口号,有效值范围[1,12]
callbackAsyncCallback<void>Callback回调

示例:

javascript
uartControl.close(1, () => {
   console.log("uartControl close callback");
});

send

向指定端口的串口发送信息。结果通过Promise异步回调方式返回。

send(port: number, message: string): Promise<void>

参数:

参数名类型必填说明
portnumberUART串口端口号,有效值范围[1,12]
messagestring需要发送的字符串信息

返回值:

类型说明
Promise<void>

示例:

javascript
uartControl.send(1, "Hello World!").then(() => {
   console.log("uartControl send promise");
});

send

向指定端口的串口发送信息。结果通过callback异步回调方式返回。

send(port: number, message: string, callback: AsyncCallback<void>): void

参数:

参数名类型必填说明
portnumberUART串口端口号,有效值范围[1,12]
messagestring需要发送的字符串信息
callbackAsyncCallback<void>Callback回调

示例:

javascript
uartControl.send(1, "Hello World!", () => {
   console.log("uartControl send callback");
});

on

订阅指定端口的串口数据。

on(port: number, callback: Callback<ArrayBuffer>): void

参数:

参数名类型必填说明
portnumberUART串口端口号,有效值范围[1,12]
callbackCallback<ArrayBuffer>回调接口,返回串口数据

示例:

javascript
uartControl.on(1, (buf) => {
   console.log("uartControl on buf:" + JSON.stringify(buf));
});

off

取消指定端口的串口数据订阅。

off(port: number, callback?: Callback<ArrayBuffer>): void

参数:

参数名类型必填说明
portnumberUART串口端口号,有效值范围[1,12]
callbackCallback<ArrayBuffer>回调接口,返回串口数据

示例:

javascript
uartControl.off(1, (buf) => {
   console.log("uartControl off buf:" + JSON.stringify(buf));
});