IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> L298N双路驱动直流电机方案(支持PWM+正反转) -> 正文阅读

[嵌入式]L298N双路驱动直流电机方案(支持PWM+正反转)

目录

写在前面(吐槽吐槽)?

正文

最后


写在前面(吐槽吐槽)?

我想要驱动两个直流电机.

直流电机,说白了,就是那种小马达,小时候玩四驱车时那种没有正负极的马达,转速快,力矩小。

比如

?

我用它带一个扇叶,就能实现正反转以及通过PWM进行调速,问题在于,这样的一个马达驱动电流竟然达到了400ma,我是主控板(stm32F103ZET6正点原子精英版),在外接12v 1A的电源适配器后,提供的5v,3.3v的电源提供的负载的最大电流也只有1.2A,排除板子本身需要200ma以上,最大提供给负载也只有1A,为这电源我折腾了不少,什么dc电压扩展板,面包电源板等等,它们驱动一个电机还好,两个电机就不行了。

最后我找了我电信的同学,成功找到答案,用可充电锂电池组提供持久的放电,才真正意义上解决电源源头的问题。。

正文

本次用的是ST的L298N,就是淘宝是能找到的那种,双路直流电机驱动板

?

怎么用呢?它有个12v Power端口的电源输入口,实际上输入7-12v都可以,如果是在这一端输入电压,同时如果你想有一个让这个L298N提供5V电源以向外输出, 则把上图的5Venable 短接。

基于网上对这资料很杂且乱,我只能实践记录操作以验证真理。

在不拔使能A的调线帽时,测试s正转 2s截止? 2s反转,为了简单测试,我用arduino来测试。


void setup(){

Serial.begin(115200);
pinMode(12,OUTPUT);
  pinMode(14,OUTPUT);
}


void loop(){

digitalWrite(12,HIGH);
  digitalWrite(14,LOW);  //正转
 delay(2000);
 digitalWrite(12,LOW);   //制动
  digitalWrite(14,LOW);
   delay(2000);
    digitalWrite(12,LOW);
  digitalWrite(14,HIGH);  //反转
     delay(2000);
   
  
  
 

}

?现象正确。

在不拔控制端? 也就是上图中的A ENABLE的跳线帽的情况下实现PWM去控制。

测试一个方向上转速不断增大


int A=12;
int B=14;
void setup(){

Serial.begin(115200);
pinMode(A,OUTPUT);
  pinMode(B,OUTPUT);
}


void loop(){

 
 PWM_Run_x(A,50);
  PWM_Run_x(B,0);
  delay(2000);
  
     PWM_Run_x(A,75);
    PWM_Run_x(B,0);
   delay(2000);

    PWM_Run_x(A,95);
    PWM_Run_x(B,0);
   delay(2000);


       PWM_Run_x(A,125);
    PWM_Run_x(B,0);
   delay(2000);

        PWM_Run_x(A,165);
    PWM_Run_x(B,0);
   delay(2000);

     PWM_Run_x(A,205);
    PWM_Run_x(B,0);
   delay(2000);
   
   PWM_Run_x(A,0);
   PWM_Run_x(B,0);
   delay(2000);
   
  
  
 

}

void PWM_Run_x(int pin,int val){

  analogWrite(pin, val);
}

现象正确

然后拔了A ENABLE ,则直接就不转了。这与网上的资料是有出入。

比如以下查到的资料。

?

?

最后

今天是中秋节,各位中秋快乐。。。。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-09-13 11:33:13  更:2022-09-13 11:37:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 22:54:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码