java - 树莓派上的 PWM 频率总是很低
问题描述
我使用 pi4j 库在 java 中编写了一个程序,我尝试将分频器设置得尽可能低,但我得到的输出频率约为 1Hz,我似乎无法再高了。有什么想法吗?
public class PwmController {
GpioController gpio;
Pin pin1;
Pin pin2;
Pin pin3;
Pin pin4;
GpioPinPwmOutput motor1;
GpioPinPwmOutput motor2;
GpioPinPwmOutput motor3;
GpioPinPwmOutput motor4;
public PwmController(GpioController gpio, Pin pin1, Pin pin2, Pin pin3, Pin pin4) {
this.gpio = gpio;
this.pin1 = pin1;
this.pin2 = pin2;
this.pin3 = pin3;
this.pin4 = pin4;
motor1 = gpio.provisionPwmOutputPin(pin1);
motor2 = gpio.provisionPwmOutputPin(pin2);
motor3 = gpio.provisionPwmOutputPin(pin3);
motor4 = gpio.provisionPwmOutputPin(pin4);
com.pi4j.wiringpi.Gpio.pwmSetMode(com.pi4j.wiringpi.Gpio.PWM_MODE_MS);
com.pi4j.wiringpi.Gpio.pwmSetRange(1000);
com.pi4j.wiringpi.Gpio.pwmSetClock(1);
setPwm(500,300,200,100);
}
public void setPwm(int pwm1,int pwm2,int pwm3,int pwm4) {
motor1.setPwm(pwm1);
motor2.setPwm(pwm2);
motor3.setPwm(pwm3);
motor4.setPwm(pwm4);
}
}
解决方案
推荐阅读
- python - 在 pyspark 中调用 UDF 之前无法过滤 Null 值
- angular - 如何为反应式表单控件编写自定义验证器
- python - 使用 Python 进行 Linux 包管理
- javascript - 用函数中的数组替换现有数组
- eclipse - 如何在现有项目的 Eclipse 中从 GitLab 中拉出新分支
- r - 将 brew 安装的 openblas 链接到 /usr/local
- java - 在spring应用程序中使用hibernate自动创建表
- go - Go 模块替换为本地模块的特定版本
- javascript - 将列表从视图上下文传递到模板并将其分配为模板中的数组
- python-3.x - Python - 线程占用过多的 CPU