001package edu.wpi.first.wpilibj.hal; 002 003import java.nio.IntBuffer; 004import java.nio.ByteBuffer; 005 006import edu.wpi.first.wpilibj.SensorBase; 007 008 009public class PWMJNI extends DIOJNI { 010 public static native boolean allocatePWMChannel(ByteBuffer digital_port_pointer, IntBuffer status); 011 public static native void freePWMChannel(ByteBuffer digital_port_pointer, IntBuffer status); 012 public static native void setPWM(ByteBuffer digital_port_pointer, short value, IntBuffer status); 013 public static native short getPWM(ByteBuffer digital_port_pointer, IntBuffer status); 014 public static native void latchPWMZero(ByteBuffer digital_port_pointer, IntBuffer status); 015 public static native void setPWMPeriodScale(ByteBuffer digital_port_pointer, int squelchMask, IntBuffer status); 016 public static native ByteBuffer allocatePWM(IntBuffer status); 017 public static native void freePWM(ByteBuffer pwmGenerator, IntBuffer status); 018 public static native void setPWMRate(double rate, IntBuffer status); 019 public static native void setPWMDutyCycle(ByteBuffer pwmGenerator, double dutyCycle, IntBuffer status); 020 public static native void setPWMOutputChannel(ByteBuffer pwmGenerator, int pin, IntBuffer status); 021}