weixin_73785971 2022-10-06 20:01 采纳率: 50%
浏览 72
已结题

搞不懂怎么用pwm对直流电机调速

搞了一天了,电机可以转,但是我不能通过按键来控制pwm信号从而实现直流电机的调速,帮看看哪里出问题了,走投无路了已经
arduino,以下是我的代码
int ena = 11;
int in1 = 9;
int in2 = 10;
int button1 = 3;
int button2 = 5;
int button3 = 6;
int buttonState1 = 0;
int buttonState2 = 0;
int buttonState3 = 0;

void setup() {
pinMode(button1,INPUT);
pinMode(button2,INPUT);
pinMode(button3,INPUT);
pinMode(in1,OUTPUT);
pinMode(in2,OUTPUT);

}
void loop (){
digitalWrite(in2,HIGH);
digitalWrite(in1,LOW);//电机开始转
analogWrite(ena,151);
buttonState1 = digitalRead(button1);
buttonState2 = digitalRead(button2);
buttonState3 = digitalRead(button3);

if (buttonState1==HIGH){
analogWrite(ena,250);
delay(1000);
}
if(buttonState2 == HIGH){
analogWrite(ena,50);
delay(1000);
}
if(buttonState3 == HIGH){ //
digitalWrite(in1,LOW);
digitalWrite(in2,LOW);
//

  • 写回答

1条回答 默认 最新

  • Absorbed_w 2022-10-09 09:40
    关注

    先断开负载,看看PWM输出引脚有没有按照程序逻辑变化占空比,没有的话就检查代码驱动和逻辑,有的话就检查电机驱动器的好坏

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月17日
  • 已采纳回答 10月9日
  • 创建了问题 10月6日

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?