首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Arduino中,直流电机转速与温度输入成比例增加的代码

在Arduino中,直流电机转速与温度输入成比例增加的代码
EN

Stack Overflow用户
提问于 2020-11-23 20:21:15
回答 1查看 182关注 0票数 0

所以我在TinkerCad中有这个电路

这将根据TMP中的温度输入来打开和关闭直流电机。我如何使它不是打开和关闭直流电机,而是随着温度输入的升高而增加转速?到目前为止,我有以下代码:

代码语言:javascript
复制
int sensorPin = 0;
 
void setup()
{
 pinMode(A0,INPUT);
 pinMode(13, OUTPUT);
 pinMode(11, OUTPUT);
 pinMode(10, OUTPUT);
 digitalWrite(13, HIGH);
 Serial.begin(9600);
}
 
void loop()
{
 
 int reading = analogRead(sensorPin);
 float voltage = reading * 5;
 voltage /= 1024.0;
 
 float celsius = (voltage - 0.5) * 100;
 Serial.print(celsius);
 Serial.println(" degrees C");
 if (celsius < 30) {
    digitalWrite(11, LOW);
    digitalWrite(10, LOW);
   
  }
  
  if (celsius > 30)
  {
    digitalWrite(11,LOW);
    digitalWrite(10, HIGH);
    
  }
  
  delay(10); 
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-23 21:50:02

您可以使用analogWrite向L293D发送脉宽调制信号。

代码语言:javascript
复制
analogWrite(outputPin, map(analogRead(inputPin), 0, 1023, 0, 255); //outputPin needs to be a PWM-Pin

参考文献:analogWrite()map()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64968341

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档