查看: 195|回复: 12

[未解决] 求助,用l298n模块控制电机转速,老是无缘无故的转动怎么...

[复制链接]

该用户从未签到

发表于 2020-6-30 01:01 | 显示全部楼层 |阅读模式
代码如下:int state1=0;
int state2=0;
void setup()
{
pinMode(9,OUTPUT);
pinMode(8,OUTPUT);
pinMode(7,OUTPUT);
pinMode(3,INPUT);
pinMode(2,INPUT);//设定9pwm输出口,87为高低电平输出口,23为输入口
}
void loop()
{state1=digitalRead(2);
state2=digitalRead(3);
digitalWrite(7,LOW);
digitalWrite(8,HIGH);
if(state1==HIGH&&state2==HIGH)//假设23输入都为高电平,则78分别输出低电平和高电平,9输出255pwm波。
analogWrite(9,255);
else if(state1==LOW&&state2==HIGH)//假设2输入为低电平,3输入为高电平,则78分别输出低电平和高电平,9输出168pwm波。
analogWrite(9,168);
else if(state1==LOW&&state2==LOW)//假设2输入为低电平,3输入都为高电平,则78分别输出低电平和高电平,9输出0pwm波。
analogWrite(9,0);
else if(state1==HIGH&&state2==LOW)//假设2输入为高电平,3输入都为低电平,则78分别输出低电平和高电平,9输出0pwm波。
analogWrite(9,0);
}
微信图片_20200629121545.png

该用户从未签到

发表于 2020-6-30 02:12 | 显示全部楼层
如果实物的接线和图片完全一样,那么2、3引脚就是悬空的。悬空的引脚,输入电压是不稳定的,会受到环境的影响,有可能是HIGH,也有可能是LOW,然后你的手摸一下引脚,有可能又变成HIGH。

该用户从未签到

 楼主| 发表于 2020-6-30 01:01 | 显示全部楼层
求求各位大神,帮我看下,谢谢大家了
  • TA的每日心情
    擦汗
    2019-11-1 21:03
  • 签到天数: 101 天

    [LV.6]常住居民II

    发表于 2020-6-30 08:41 | 显示全部楼层
    pinMode(3,INPUT_PULLUP);   输入引脚上拉功能(不知道写的对不对)
    就稳定了。
  • TA的每日心情
    无聊
    2018-10-30 14:51
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2020-6-30 09:15 | 显示全部楼层
    应该是按键抖动的问题,要么硬件上使用电阻上拉,要么像楼上说的用软件设置上拉pinMode(2,INPUT_PULLUP);pinMode(3,INPUT_PULLUP);

    该用户从未签到

     楼主| 发表于 2020-6-30 11:36 | 显示全部楼层
    wwwusr 发表于 2020-6-30 08:41
    pinMode(3,INPUT_PULLUP);   输入引脚上拉功能(不知道写的对不对)
    就稳定了。 ...

    谢谢。还有就是我上传的时候会出现一直不成功。我也改了端口,也把ide更新到最新,一直显示avrdude是怎么回事,板子坏掉了吗

    该用户从未签到

     楼主| 发表于 2020-6-30 11:40 | 显示全部楼层
    烂先生 发表于 2020-6-30 09:15
    应该是按键抖动的问题,要么硬件上使用电阻上拉,要么像楼上说的用软件设置上拉pinMode(2,INPUT_PULLUP);pi ...

    谢谢,还想问个问题是我把电池换成了12v,9a的电源适配器,用l298n给arduino板子供电烧坏了一个板子,然后还有个板子也上传不上去,需要给arduino再专门买个适配器吗?

    该用户从未签到

     楼主| 发表于 2020-6-30 11:42 | 显示全部楼层
    开在边缘 发表于 2020-6-30 02:12
    如果实物的接线和图片完全一样,那么2、3引脚就是悬空的。悬空的引脚,输入电压是不稳定的,会受到环境的影 ...

    悬空不代表是低电平是吗?我一直以为悬空是输入低电平的意思,谢谢大神们,我刚接触不久,谢谢
  • TA的每日心情
    无聊
    2018-10-30 14:51
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2020-6-30 14:08 | 显示全部楼层
    1527565324 发表于 2020-6-30 11:40
    谢谢,还想问个问题是我把电池换成了12v,9a的电源适配器,用l298n给arduino板子供电烧坏了一个板子,然后 ...

    arduino开发板只需要5V的工作电压,如果你用的是12V那必须通过开发板上的DC插座(黑色那个)或者左边排座的VIN口给开发板供电,不过为了方便,你这里其实可以直接把L298N上面的“+5V”端接到开发板的5V
  • TA的每日心情
    无聊
    2018-10-30 14:51
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2020-6-30 14:12 | 显示全部楼层
    1527565324 发表于 2020-6-30 11:40
    谢谢,还想问个问题是我把电池换成了12v,9a的电源适配器,用l298n给arduino板子供电烧坏了一个板子,然后 ...

    如果想验证板子是否烧坏,你可以直接去掉所有外界电路,只用一个开发板,给它随便烧录一个示例程序,比如“Blink”,在端口没问题的情况下,八成是板子坏了,当然上传失败的原因有很多,得一个个排查
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    热门推荐

    5分钟带你快速了解新一代开发板:M5STACK
    5分钟带你快速了解新一代
    一、什么是M5Stack M5Stack是一种模块化、可堆叠扩展的开发板,每个模块
    创客火首发无人机编队套装,开启不一样的人工智能教育
    创客火首发无人机编队套装
    2017年国务院发布《新一代人工智能发展规划》,提出要广泛开展人工智能科普活动,在中
    Arduino如何输出ASCii 的控制字符串ENQ为05H
    Arduino如何输出ASCii 的
    程序段 void loop() { Serial.print("ENQ1234"); } Arduino会转换成ASCii码发送
    点阵时钟 验证报错 求大神帮个忙
    点阵时钟 验证报错 求大神
    智慧食堂,让吃饭有着不一样的体验!
    智慧食堂,让吃饭有着不一
    以后凭脸吃饭啦!不在乎颜值、不管是谁,小编告诉你:只要“脸”就可以! “吃饭5分
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
    快速回复 返回顶部 返回列表