本文整理汇总了Java中com.pi4j.wiringpi.SoftPwm类的典型用法代码示例。如果您正苦于以下问题:Java SoftPwm类的具体用法?Java SoftPwm怎么用?Java SoftPwm使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
SoftPwm类属于com.pi4j.wiringpi包,在下文中一共展示了SoftPwm类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: main
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
public static void main(String[] args) throws InterruptedException {
// initialize wiringPi library
com.pi4j.wiringpi.Gpio.wiringPiSetup();
// create soft-pwm pins (min=0 ; max=100)
SoftPwm.softPwmCreate(1, 0, 100);
// continuous loop
while (true) {
// fade LED to fully ON
for (int i = 0; i <= 100; i++) {
SoftPwm.softPwmWrite(1, i);
Thread.sleep(100);
}
// fade LED to fully OFF
for (int i = 100; i >= 0; i--) {
SoftPwm.softPwmWrite(1, i);
Thread.sleep(100);
}
}
// make sure to stop software PWM driver/thread if you done with it.
//SoftPwm.softPwmStop(1);
}
示例2: moveForward
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
@Override
public synchronized void moveForward (int speed){
if (!forward){
SoftPwm.softPwmWrite( backwardPin.getAddress(), 0 );
try {
Thread.sleep(50);
} catch (InterruptedException ex) {
;
}
}
SoftPwm.softPwmWrite( forwardPin.getAddress(), speed );
this.speed = speed;
forward = true;
}
示例3: moveBackward
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
@Override
public synchronized void moveBackward (int speed){
if (forward){
SoftPwm.softPwmWrite( forwardPin.getAddress(), 0 );
try {
Thread.sleep(50);
} catch (InterruptedException ex) {
;
}
}
SoftPwm.softPwmWrite( backwardPin.getAddress(), speed );
this.speed = speed;
forward = false;
}
示例4: main
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
public static void main(String[] args) throws InterruptedException {
// initialize wiringPi library
com.pi4j.wiringpi.Gpio.wiringPiSetup();
// create soft-pwm pins (min=0 ; max=100)
SoftPwm.softPwmCreate(1, 0, 100);
// continuous loop
while (true) {
// fade LED to fully ON
for (int i = 0; i <= 100; i++) {
SoftPwm.softPwmWrite(1, i);
Thread.sleep(100);
}
// fade LED to fully OFF
for (int i = 100; i >= 0; i--) {
SoftPwm.softPwmWrite(1, i);
Thread.sleep(100);
}
}
}
示例5: MotorImpl
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
public MotorImpl(final RobotGPIO pi2goGPIO, final Pin forwardPin, final Pin backwardPin) {
forward = true;
speed = 0;
this.forwardPin = forwardPin;
this.backwardPin = backwardPin;
SoftPwm.softPwmCreate( forwardPin.getAddress(), 0, 100 );
SoftPwm.softPwmCreate( backwardPin.getAddress(), 0, 100 );
}
示例6: stop
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
@Override
public synchronized void stop(){
SoftPwm.softPwmWrite( forwardPin.getAddress(), 0 );
SoftPwm.softPwmWrite( backwardPin.getAddress(), 0 );
this.speed = 0;
try {
Thread.sleep(50);
} catch (InterruptedException ex) {
;
}
}
示例7: WiringPiPwmOutputDevice
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
WiringPiPwmOutputDevice(String key, DeviceFactoryInterface deviceFactory, PwmType pwmType,
int range, int gpio, float initialValue) throws RuntimeIOException {
super(key, deviceFactory);
this.pwmType = pwmType;
this.gpio = gpio;
this.value = initialValue;
this.range = range;
switch (pwmType) {
case HARDWARE:
if (GpioUtil.isExported(gpio)) {
GpioUtil.setDirection(gpio, GpioUtil.DIRECTION_OUT);
} else {
GpioUtil.export(gpio, GpioUtil.DIRECTION_OUT);
}
Gpio.pinMode(gpio, Gpio.PWM_OUTPUT);
// Have to call this after setting the pin mode! Yuck
Gpio.pwmSetMode(Gpio.PWM_MODE_MS);
Gpio.pwmWrite(gpio, Math.round(initialValue * range));
break;
case SOFTWARE:
int status = SoftPwm.softPwmCreate(gpio, Math.round(initialValue * range), range);
if (status != 0) {
throw new RuntimeIOException("Error setting up software controlled PWM GPIO on BCM pin " +
gpio + ", status=" + status);
}
break;
}
}
示例8: closeDevice
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
@Override
protected void closeDevice() throws RuntimeIOException {
Logger.debug("closeDevice()");
switch (pwmType) {
case HARDWARE:
GpioUtil.unexport(gpio);
case SOFTWARE:
SoftPwm.softPwmStop(gpio);
GpioUtil.unexport(gpio);
break;
default:
}
}
示例9: setValue
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
@Override
public void setValue(float value) throws RuntimeIOException {
this.value = value;
int dc = (int) Math.floor(value * range);
switch (pwmType) {
case HARDWARE:
Logger.info("setValue({}), range={}, dc={}", Float.valueOf(value), Integer.valueOf(range), Integer.valueOf(dc));
Gpio.pwmWrite(gpio, dc);
break;
case SOFTWARE:
default:
SoftPwm.softPwmWrite(gpio, dc);
break;
}
}
示例10: Pi4jPwmOutputDevice
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
Pi4jPwmOutputDevice(String key, DeviceFactoryInterface deviceFactory, GpioController gpioController,
PwmType pwmType, int gpio, float initialValue, int range) throws RuntimeIOException {
super(key, deviceFactory);
this.pwmType = pwmType;
this.gpio = gpio;
this.value = initialValue;
this.range = range;
//pin = RaspiBcmPin.getPinByAddress(gpio);
//pin.getSupportedPinModes().contains(PinMode.PWM_OUTPUT);
switch (pwmType) {
case HARDWARE:
//pwmOutputPin = gpioController.provisionPwmOutputPin(pin, "PWM output for BCM GPIO " + gpio,
// Math.round(value * range));
Gpio.pinMode(gpio, Gpio.PWM_OUTPUT);
// Have to call this after setting the pin mode! Yuck
Gpio.pwmSetMode(Gpio.PWM_MODE_MS);
Gpio.pwmWrite(gpio, Math.round(initialValue * range));
break;
case SOFTWARE:
//pwmOutputPin = gpioController.provisionSoftPwmOutputPin(
// pin, "PWM output for BCM GPIO " + gpio, Math.round(initialValue * range));
int status = SoftPwm.softPwmCreate(gpio, Math.round(initialValue * range), range);
if (status != 0) {
throw new RuntimeIOException("Error setting up software controlled PWM GPIO on BCM pin " +
gpio + ", status=" + status);
}
}
}
示例11: closeDevice
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
@Override
protected void closeDevice() {
Logger.debug("closeDevice()");
//GpioFactory.getInstance().unprovisionPin(pwmOutputPin);
switch (pwmType) {
case HARDWARE:
GpioUtil.unexport(gpio);
case SOFTWARE:
SoftPwm.softPwmStop(gpio);
GpioUtil.unexport(gpio);
break;
default:
}
}
示例12: setValue
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
@Override
public void setValue(float value) throws RuntimeIOException {
this.value = value;
switch (pwmType) {
case HARDWARE:
Logger.info("Pi4j Hardware PWM write " + (Math.round(value * range)));
Gpio.pwmWrite(gpio, Math.round(value * range));
break;
case SOFTWARE:
SoftPwm.softPwmWrite(gpio, Math.round(value * range));
break;
}
}
示例13: testPWM
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
public void testPWM() {
try {
// initialize wiringPi library
com.pi4j.wiringpi.Gpio.wiringPiSetup();
// create soft-pwm pins (min=0 ; max=100)
SoftPwm.softPwmCreate(1, 0, 100);
// continuous loop
while (true) {
// fade LED to fully ON
for (int i = 0; i <= 100; i++) {
SoftPwm.softPwmWrite(1, i);
Thread.sleep(100);
}
// fade LED to fully OFF
for (int i = 100; i >= 0; i--) {
SoftPwm.softPwmWrite(1, i);
Thread.sleep(100);
}
}
} catch (Exception e) {
}
}
示例14: penUp
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
public synchronized void penUp(){
if (isPenDown){
SoftPwm.softPwmWrite(properties.getPenPinNumber(), properties.getPenUpPowerLevel());
Gpio.delayMicroseconds(properties.getPenUpPeriodInMilliseconds()*1000);
SoftPwm.softPwmWrite(properties.getPenPinNumber(), properties.getPenUpHoldPowerLevel());
isPenDown=false;
}
}
示例15: penDown
import com.pi4j.wiringpi.SoftPwm; //导入依赖的package包/类
public synchronized void penDown(){
if (!isPenDown){
SoftPwm.softPwmWrite(properties.getPenPinNumber(), 0); // off
Gpio.delayMicroseconds(properties.getPenDownPeriodInMilliseconds()*1000);
isPenDown=true;
}
}