ardunio和L289N连接对直流电机进行PWM调速

博主参加研究生电赛重拾单片机,调试两天调通。因数学功底不足,认为生物电信号处理中机器学习是坑,打算回归老本行学嵌入式操作系统。分享了Arduino和L289N连接对直流电机进行PWM调速的原理、连接方式及核心程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近参加研究生电赛开始拾起来老本行,开始鼓捣单片机。长时间不动这东西都快忘光了,还是有笔记好捡起来。调试了两天终于把做的东西调通。真的是越努力越幸运,研一入学来一直在做脑电信号的特征提取和分类算法,做来做去发现若没有好的数学功底不是大牛,搞机器学习貌似出路不大,也难怪学长学姐发完小论文后,不搞机器学习。确切的说,对于生物电信号处理来说机器学习是个坑。因此发完小论文后还是打算做自己的老本行,坚持自己的初心,开始学习嵌入式操作系统。这可能是我的转折点。分享一下ardunio和L289N连接对直流电机进行PWM调速的原理和程序,以便初学者快速掌握。还是忍不住说一句开源万岁。大道之行,天下为公。

PWM调速:直流电机的PWM调速原理与交流电机调速原理不同,它不是通过调频方式去调节电机的转速,而是通过调节驱动电压脉冲宽度的方式,并与电路中一些相应的储能元件配合,改变了输送到电枢电压的幅值,从而达到改变直流电机转速的目的。它的调制方式是调幅。 这个不需要太理解,你只要知道利用ardunio的 analogWrite函数改变引脚的值即可进行PWM调速就可以。占空比越高直流电机的速度就越高。

如图所示在ardunio和驱动板连接时直流电机即使进行PWM调速ENA也要用跳线帽连接起来,在进行PWM调速时只需要把IN2引脚置低电平,IN1引脚接ardunio的带~引脚即可进行调速。我接的是9引脚。9引脚的值一直变化就可以进行PWM调速。还有一点需要注意的是L289N驱动板要和ardunio单片机共地(gnd接ardunio的gnd)将OUT1和OUT2和直流电机直接连接就可以进行PWM调速了。

下面是直流电极PWM调速的核心程序:

void motor(int val)
{
//  val=attention;
// for(;val<=255;val+=5)
// {
//  digitalWrite(9,HIGH); // 电机前进
//  digitalWrite(10,LOW); 
  analogWrite(9,val);
  analogWrite(10,0);
   delay(50); 
// } 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值