pamoja for TypeScript - v0.2.0
    Preparing search index...

    Variable pca9685Const

    pca9685: {
        channels: number;
        counts: number;
        defaultAddress: number;
        internalOscHz: number;
        mode1: {
            autoIncrement: number;
            extclk: number;
            restart: number;
            sleep: number;
        };
        mode1Reset: number;
        mode2Reset: number;
        oscillatorStartupMicros: number;
        preScaleMin: number;
        preScaleReset: number;
        register: {
            allLedOnL: number;
            led0OnL: number;
            mode1: number;
            mode2: number;
            preScale: number;
        };
        sim: { part(address?: number): hal.I2cPart };
        channelRegister(channel: number): number;
        frequencyForPrescale(prescale: number, oscHz?: number): number;
        prescaleForFrequency(updateRateHz: number, oscHz?: number): number;
    } = ...

    An NXP PCA9685 16-channel PWM controller, for servos, LEDs, and valves.

    Type Declaration

    • channels: number

      How many channels it drives.

    • counts: number

      How many counts each period is divided into.

    • defaultAddress: number

      The address it answers at with its six address pins low.

    • internalOscHz: number

      The part's internal oscillator frequency, in hertz.

    • mode1: { autoIncrement: number; extclk: number; restart: number; sleep: number }

      MODE1's bits.

      • autoIncrement: number

        The register pointer moves on after each byte.

      • extclk: number

        The prescaler divides the EXTCLK pin rather than the oscillator.

      • restart: number

        Set when the part slept with a channel running; cleared by a written 1.

      • sleep: number

        The oscillator is off and PRE_SCALE takes a write.

    • mode1Reset: number

      MODE1 at power-up: asleep, answering the All Call address.

    • mode2Reset: number

      MODE2 at power-up: totem-pole outputs.

    • oscillatorStartupMicros: number

      How long the oscillator takes to run once woken, in microseconds.

    • preScaleMin: number

      The smallest value the part loads into PRE_SCALE.

    • preScaleReset: number

      PRE_SCALE at power-up: 200 Hz on the internal oscillator.

    • register: {
          allLedOnL: number;
          led0OnL: number;
          mode1: number;
          mode2: number;
          preScale: number;
      }

      The registers a driver writes and a program reads back.

      • allLedOnL: number

        The first of the four registers that load every channel at once.

      • led0OnL: number

        The first of channel 0's four registers; channelRegister gives the rest.

      • mode1: number

        Mode register 1: restart, clock, auto-increment, sleep, and the addresses answered.

      • mode2: number

        Mode register 2: how the outputs are wired and when they change.

      • preScale: number

        The prescaler, writable only while the part sleeps.

    • sim: { part(address?: number): hal.I2cPart }

      A PCA9685 that is not there. It holds the part's power-on registers and keeps its datasheet's rules: PRE_SCALE takes a write only while the part sleeps, the register pointer moves on only with auto-increment set, and one write to the ALL_LED registers loads every channel.

      • part: function
        • A simulated PCA9685 as it powers up: asleep at 200 Hz with every output off.

          Parameters

          • address: number = PCA9685_DEFAULT_ADDRESS

            The address it answers to, defaultAddress unless given.

          Returns hal.I2cPart

          A part to put on a simulated bus.

    • channelRegister: function
      • Returns the first of a channel's four consecutive registers.

        Parameters

        • channel: number

          The channel, 0 to 15.

        Returns number

        The register address.

        If the channel is beyond the part.

    • frequencyForPrescale: function
      • Returns the update rate a prescale value produces.

        Parameters

        • prescale: number

          The prescale register value.

        • oscHz: number = PCA9685_INTERNAL_OSC_HZ

          The oscillator frequency, usually internalOscHz.

        Returns number

        The frequency in hertz.

    • prescaleForFrequency: function
      • Returns the prescale value that sets an update rate.

        Parameters

        • updateRateHz: number

          The PWM frequency wanted.

        • oscHz: number = PCA9685_INTERNAL_OSC_HZ

          The oscillator frequency, usually internalOscHz.

        Returns number

        The prescale register value.