mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-04-22 20:39:17 +08:00
317 lines
15 KiB
TypeScript
317 lines
15 KiB
TypeScript
// Type definitions for wiring-pi 2.2.0
|
|
// Project: https://github.com/eugeneware/wiring-pi
|
|
// Definitions by: Ivo Stratev <https://github.com/NoHomey>
|
|
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
|
|
|
/// <reference types="node" />
|
|
|
|
declare module 'wiring-pi' {
|
|
// Setup
|
|
export function wiringPiSetup(): number;
|
|
export function wiringPiSetupGpio(): number;
|
|
export function wiringPiSetupPhys(): number;
|
|
export function wiringPiSetupSys(): number;
|
|
export function setup(mode: string): number;
|
|
// Core functions
|
|
export function pinModeAlt(pin: number, mode: number): void;
|
|
export function pinMode(pin: number, mode: number): void;
|
|
export function pullUpDnControl(pin: number, pud: number): void;
|
|
export function digitalRead(pin: number): number;
|
|
export function digitalWrite(pin: number, state: number): void;
|
|
export function pwmWrite(pin: number, value: number): void;
|
|
export function analogRead(pin: number): number;
|
|
export function analogWrite(pin: number, value: number): void;
|
|
export function pulseIn(pin: number, state: number): number;
|
|
export function delay(ms: number): void;
|
|
export function delayMicroseconds(us: number): void;
|
|
export function millis(): number;
|
|
export function micros(): number;
|
|
// Interrupts
|
|
export function wiringPiISR(pin: number, edgeType: number, callback: (delta: number) => void): void;
|
|
export function wiringPiISRCancel(pin: number): void;
|
|
export const INT_EDGE_FALLING: number;
|
|
export const INT_EDGE_RISING: number;
|
|
export const INT_EDGE_BOTH: number;
|
|
export const INT_EDGE_SETUP: number;
|
|
// Raspberry Pi hardware specific functions
|
|
export function piBoardRev(): number;
|
|
|
|
export interface PiBoardId {
|
|
model: number;
|
|
rev: number;
|
|
mem: number;
|
|
maker: number;
|
|
overvolted: number;
|
|
}
|
|
|
|
export function piBoardId(): PiBoardId;
|
|
export function wpiPinToGpio(pin: number): number;
|
|
export function physPinToGpio(pin: number): number;
|
|
export function setPadDrive(group: number, value: number): void;
|
|
export function getAlt(pin: number): number;
|
|
export function digitalWriteByte(byte: number): void;
|
|
export function pwmSetMode(mode: number): void;
|
|
export function pwmSetRange(range: number): void;
|
|
export function pwmSetClock(divisor: number): void;
|
|
export function pwmToneWrite(pin: number, frequency: number): void;
|
|
export function gpioClockSet(pin: number, frequency: number): void;
|
|
// Constants
|
|
// WPI_MODEs
|
|
export const WPI_MODE_PINS: number;
|
|
export const WPI_MODE_PHYS: number;
|
|
export const WPI_MODE_GPIO: number;
|
|
export const WPI_MODE_GPIO_SYS: number;
|
|
export const WPI_MODE_PIFACE: number;
|
|
export const WPI_MODE_UNINITIALISED: number;
|
|
// pinMode
|
|
export const INPUT: number;
|
|
export const OUTPUT: number;
|
|
export const PWM_OUTPUT: number;
|
|
export const GPIO_CLOCK: number;
|
|
export const SOFT_PWM_OUTPUT: number;
|
|
export const SOFT_TONE_OUTPUT: number;
|
|
// pullUpDnControl
|
|
export const PUD_OFF: number;
|
|
export const PUD_DOWN: number;
|
|
export const PUD_UP: number;
|
|
// digitalRead/Write
|
|
export const HIGH: number;
|
|
export const LOW: number;
|
|
// pwmSetMode
|
|
export const PWM_MODE_BAL: number;
|
|
export const PWM_MODE_MS: number;
|
|
// PiBoardId.model
|
|
export const PI_MODEL_UNKNOWN: number;
|
|
export const PI_MODEL_A: number;
|
|
export const PI_MODEL_B: number;
|
|
export const PI_MODEL_BP: number;
|
|
export const PI_MODEL_CM: number;
|
|
export const PI_MODEL_AP: number;
|
|
export const PI_MODEL_2: number;
|
|
// PiBoardId.rev
|
|
export const PI_VERSION_UNKNOWN: number;
|
|
export const PI_VERSION_1: number;
|
|
export const PI_VERSION_1_1: number;
|
|
export const PI_VERSION_1_2: number;
|
|
export const PI_VERSION_2: number;
|
|
// PiBoardId,marker
|
|
export const PI_MAKER_UNKNOWN: number;
|
|
export const PI_MAKER_EGOMAN: number;
|
|
export const PI_MAKER_SONY: number;
|
|
export const PI_MAKER_QISDA: number;
|
|
export const PI_MAKER_MBEST: number;
|
|
// arrays
|
|
export const PI_MODEL_NAMES: string[];
|
|
export const PI_REVISION_NAMES: string[];
|
|
export const PI_MAKER_NAMES: string[];
|
|
// pinModeAlt
|
|
export const FSEL_INPT: number;
|
|
export const FSEL_OUTP: number;
|
|
export const FSEL_ALT0: number;
|
|
export const FSEL_ALT1: number;
|
|
export const FSEL_ALT2: number;
|
|
export const FSEL_ALT3: number;
|
|
export const FSEL_ALT4: number;
|
|
export const FSEL_ALT5: number;
|
|
// I2C
|
|
export function wiringPiI2CSetup(devId: number): number;
|
|
export function wiringPiI2CSetupInterface(device: string, devId: number): number;
|
|
export function wiringPiI2CClose(fd: number): void;
|
|
export function wiringPiI2CRead(fd: number): number;
|
|
export function wiringPiI2CReadReg8(fd: number, reg: number): number;
|
|
export function wiringPiI2CReadReg16(fd: number, reg: number): number;
|
|
export function wiringPiI2CWrite(fd: number, data: number): number;
|
|
export function wiringPiI2CWriteReg8(fd: number, reg: number, data: number): number;
|
|
export function wiringPiI2CWriteReg16(fd: number, reg: number, data: number): number;
|
|
// SPI
|
|
export function wiringPiSPIGetFd(channel: number): number;
|
|
export function wiringPiSPIDataRW(channel: number, data: Buffer): number;
|
|
export function wiringPiSPISetup(channel: number, speed: number): number;
|
|
export function wiringPiSPISetupMode(channel: number, speed: number, mode: number): number;
|
|
export function wiringPiSPIClose(fd: number): void;
|
|
// Serial
|
|
export function serialOpen(device: string, baudrate: number): number;
|
|
export function serialClose(fd: number): void;
|
|
export function serialFlush(fd: number): void;
|
|
export function serialPutChar(fd: number, character: number): void;
|
|
export function serialPuts(fd: number, data: string): void;
|
|
export function serialPrintf(fd: number, data: string): void;
|
|
export function serialDataAvail(fd: number): number;
|
|
export function serialGetchar(fd: number): number;
|
|
// Shift
|
|
export function shiftIn(dPin: number, cPin: number, order: number): number;
|
|
export function shiftOut(dPin: number, cPin: number, order: number, value: number): void;
|
|
export const LSBFIRST: number;
|
|
export const MSBFIRST: number;
|
|
// Soft PWM
|
|
export function softPwmCreate(pin: number, value: number, range: number): number;
|
|
export function softPwmWrite(pin: number, value: number): void;
|
|
export function softPwmStop(pin: number): void;
|
|
// Soft Servo
|
|
export function softServoWrite(pin: number, value: number): void;
|
|
export function softServoSetup(p0: number, p1: number, p2: number, p3: number, p4: number, p5: number, p6: number, p7: number): number;
|
|
// Soft Tone
|
|
export function softToneCreate(pin: number): number;
|
|
export function softToneWrite(pin: number, frequency: number): void;
|
|
export function softToneStop(pin: number): void;
|
|
// Extentions
|
|
// dac7678
|
|
export function dac7678Setup(pinBase: number, i2cAddress: number, vrefMode: number): number;
|
|
export const DAC7678_VREF_MODE_STATIC_ON: number;
|
|
export const DAC7678_VREF_MODE_STATIC_OFF: number;
|
|
export const DAC7678_VREF_MODE_FLEXIBLE_ON: number;
|
|
export const DAC7678_VREF_MODE_FLEXIBLE_ALWAYS_ON: number;
|
|
export const DAC7678_VREF_MODE_FLEXIBLE_ALWAYS_OFF: number;
|
|
// drcSerial
|
|
export function drcSerialSetup(pinBase: number, numPins: number, device: string, baudrate: number): number;
|
|
// max31855
|
|
export function max31855Setup(pinBase: number, spiChannel: number): number;
|
|
// max5322
|
|
export function max5322Setup(pinBase: number, spiChannel: number): number;
|
|
// mcp23008
|
|
export function mcp23008Setup(pinBase: number, i2cAddress: number): number;
|
|
// mpc23016
|
|
export function mpc23016Setup(pinBase: number, i2cAddress: number): number;
|
|
// mpc23017
|
|
export function mpc23017Setup(pinBase: number, i2cAddress: number): number;
|
|
// mcp23s08
|
|
export function mcp23s08Setup(pinBase: number, spiChannel: number, devId: number): number;
|
|
// mcp23s17
|
|
export function mcp23s17Setup(pinBase: number, spiChannel: number, devId: number): number;
|
|
// mcp3002
|
|
export function mcp3002Setup(pinBase: number, spiChannel: number): number;
|
|
// mcp3004/8
|
|
export function mcp3004Setup(pinBase: number, spiChannel: number): number;
|
|
// mcp3422
|
|
export function mcp3422Setup(pinBase: number, i2cAddress: number, sampleRate: number, gain: number): number;
|
|
export const MCP3422_SR_3_75: number;
|
|
export const MCP3422_SR_15: number;
|
|
export const MCP3422_SR_60: number;
|
|
export const MCP3422_SR_240: number;
|
|
export const MCP3422_GAIN_1: number;
|
|
export const MCP3422_GAIN_2: number;
|
|
export const MCP3422_GAIN_4: number;
|
|
export const MCP3422_GAIN_8: number;
|
|
// mcp4802
|
|
export function mcp4802Setup(pinBase: number, spiChannel: number): number;
|
|
// pca9685
|
|
export function pca9685Setuo(pinBase: number, i2cAddress: number, frequency: number): number;
|
|
// pcf8574
|
|
export function pcf8574Setup(pinBase: number, i2cAddress: number): number;
|
|
// pcf8591
|
|
export function pcf8591Setup(pinBase: number, i2cAddress: number): number;
|
|
// sn3218
|
|
export function sn3218Setup(pinBase: number): number;
|
|
// sr595
|
|
export function sr595Setup(pinBase: number, numPins: number, dataPin: number, clockPin: number, latchPin: number): number;
|
|
// DevLib
|
|
// ds1302
|
|
export function ds1302setup(clockPin: number, dataPin: number, csPin: number): void;
|
|
export function ds1302rtcRead(reg: number): number;
|
|
export function ds1302rtcWrite(reg: number, data: number): void;
|
|
export function ds1302ramRead(address: number): number;
|
|
export function ds1302ramWrite(address: number, data: number): void;
|
|
export function ds1302clockRead(): number[];
|
|
export function ds1302clockWrite(clcokData: number[]): void;
|
|
export function ds1302trickleCharge(diodes: number, resistors: number): void;
|
|
// GertBoard
|
|
export function gertboardAnalogSetup(pinBase: number): number;
|
|
// LCD
|
|
export function lcdInit(rows: number, cols: number, bits: number, rs: number, strb: number, d0: number, d1: number, d2: number, d3: number, d4: number, d5: number, d6: number, d7: number): number;
|
|
export function lcdHome(fd: number): void;
|
|
export function lcdClear(fd: number): void;
|
|
export function lcdDisplay(fd: number, state: number): void;
|
|
export function lcdCursor(fd: number, state: number): void;
|
|
export function lcdCursorBlink(fd: number, state: number): void;
|
|
export function lcdSendCommand(fd: number, command: number): void;
|
|
export function lcdPosition(fd: number, x: number, y: number): void;
|
|
export function lcdCharDef(fd: number, index: number, data: number[]): void;
|
|
export function lcdPutchar(fd: number, data: number): void;
|
|
export function lcdPuts(fd: number, data: string): void;
|
|
export function lcdPrintf(fd: number, data: string): void;
|
|
export const MAX_LCDS: number;
|
|
// LCD 128x64
|
|
export function lcd128x64setup(): number;
|
|
export function lcd128x64setOrigin(x: number, y: number): void;
|
|
export function lcd128x64setOrientation(orientation: number): void;
|
|
export function lcd128x64orientCoordinates(): number[];
|
|
export function lcd128x64getScreenSize(): number[];
|
|
export function lcd128x64point(x: number, y: number, color: number): void;
|
|
export function lcd128x64line(x0: number, y0: number, x1: number, y1: number, color: number): void;
|
|
export function lcd128x64lineTo(x: number, y: number, color: number): void;
|
|
export function lcd128x64rectangle(x1: number, y1: number, x2: number, y2: number, color: number, filled: number): void;
|
|
export function lcd128x64circle(x: number, y: number, r: number, color: number, filled: number): void;
|
|
export function lcd128x64ellipse(cx: number, cy: number, xRadius: number, yRadius: number, color: number, filled: number): void;
|
|
export function lcd128x64putchar(x: number, y: number, c: number, bgColor: number, fgColor: number): void;
|
|
export function lcd128x64puts(x: number, y: number, data: string, bgColor: number, fgColor: number): void;
|
|
export function lcd128x64update(): void;
|
|
export function lcd128x64clear(color: number): void;
|
|
// cd128x64clear
|
|
export function maxDetectRead(pin: number): number[];
|
|
export function readRHT03(pin: number): number[];
|
|
// piFace
|
|
export function piFaceSetup(pinBase: number): number;
|
|
// piGlow
|
|
export function piGlowSetup(clear: number): void;
|
|
export function piGlow1(leg: number, ring: number, intensity: number): void;
|
|
export function piGlowLeg(leg: number, intensity: number): void;
|
|
export function piGlowRing(ring: number, intensity: number): void;
|
|
export const PIGLOW_RED: number;
|
|
export const PIGLOW_YELLOW: number;
|
|
export const PIGLOW_ORANGE: number;
|
|
export const PIGLOW_GREEN: number;
|
|
export const PIGLOW_BLUE: number;
|
|
export const PIGLOW_WHITE: number;
|
|
|
|
// pinNes
|
|
export function setupNesJoystick(dPin: number, cPin: number, lPin: number): number;
|
|
export function readNesJoystick(joystick: number): number;
|
|
export const MAX_NES_JOYSTICKS: number;
|
|
export const NES_RIGHT: number;
|
|
export const NES_LEFT: number;
|
|
export const NES_DOWN: number;
|
|
export const NES_UP: number;
|
|
export const NES_START: number;
|
|
export const NES_SELECT: number;
|
|
export const NES_A: number;
|
|
export const NES_B: number;
|
|
// tcs34725
|
|
export function tcs34725Setup(i2cAddress: number, integrationTime: number, gain: number): number;
|
|
|
|
export interface tcs34725RGBC {
|
|
r: number;
|
|
g: number;
|
|
b: number;
|
|
c: number;
|
|
}
|
|
|
|
export function tcs34725ReadRGBC(id: number): tcs34725RGBC;
|
|
|
|
export interface tcs34725HSV {
|
|
h: number;
|
|
s: number;
|
|
v: number;
|
|
}
|
|
|
|
export function tcs34725ReadHSV(id: number): tcs34725HSV;
|
|
export function tcs34725GetCorrelatedColorTemperature(r: number, g: number, b: number): void;
|
|
export function tcs34725GetIlluminance(r: number, g: number, b: number): void;
|
|
export function tcs34725SetInterrupt(id: number, aien: number): void;
|
|
export function tcs34725ClearInterrupt(id: number): void;
|
|
export function tcs34725SetInterruptLimits(id: number, low: number, high: number): void;
|
|
export function tcs34725Enable(id: number): void;
|
|
export function tcs34725Disable(id: number): void;
|
|
export const TCS34725_ATIME_2_4MS: number;
|
|
export const TCS34725_ATIME_24MS: number;
|
|
export const TCS34725_ATIME_50MS: number;
|
|
export const TCS34725_ATIME_101MS: number;
|
|
export const TCS34725_ATIME_154MS: number;
|
|
export const TCS34725_ATIME_700MS: number;
|
|
export const TCS34725_GAIN_1: number;
|
|
export const TCS34725_GAIN_4: number;
|
|
export const TCS34725_GAIN_16: number;
|
|
export const TCS34725_GAIN_60: number;
|
|
export const TCS34725_MAX_TCS34725: number;
|
|
export const VERSION: string;
|
|
}
|