原文链接:[Arduino] 从零制作蓝牙小车 - 饮猫的学习日志


1. L298N模块的使用

这是一个L298N电机驱动模块的图片。你可能会觉得接口有一点点多。但其实搞清楚它的控制原理后就能很快完成接线。

输出A输出B两个接口分别与小车的两个电机相连(不用区分正负);12V供电接口与12V锂电池正极相连;GND接口同时与电池负极和Arduino的GND接口相连;5V供电接口与Arduino的Vin接口相连。


对于通道A使能、逻辑输入这几个接口,网络上的文章描述的都较为复杂。此处我会给出一个更简单的理解方式。注:由于通道AB的功能相同,下文只对一个通道进行描述。

图中的两个5V针脚会恒定输出5V电压;两个使能针脚可以理解为开关,当接到5V电压时,对应通道打开;1、2针脚用于控制电机的转动方向,1、2针脚分别为高电平时电机会转动且转动方向相反,其他情况电机不转动。


2. 接线方式

如果我们想利用PWM来对电机进行调速,我们有两种接线方式:

2.1 接线方式一(不推荐)

我们不拔除通道使能5V之间的跳帽。这种情况下,通道会一直保持打开状态。我们分别将1、2两个针脚接到Arduino的两个PWM接口,通过分别控制1、2两个针脚对应的输出来控制电机旋转方向和速度。显然,这种接线方式会占用较多的PWM引脚(对于每个通道需要占用两个PWM引脚),但不需要占用普通引脚。在PWM引脚较少的情况下不推荐使用这种方案。

2.2 接线方式二(推荐)

拔除通道使能5V之间的跳帽,将使能针脚与Arduino的PWM引脚相连、1、2两个针脚与Arduino的两个普通引脚相连。这是,我们可以通过PWM引脚来控制通道的开关,用于调速;控制1、2两个针脚的电平来控制电机的转动方向。对于每个通道,这种接线方式只需要占用一个PWM引脚,但是会占用两个普通引脚。我们需要根据实际的引脚数量在两种接线方式中进行权衡。本文接下来的代码部分以第二种接线方式为例


3. Arduino代码

3.1 电机基础信息配置

#define Motor1_M1_Port 12
#define Motor1_M2_Port 13
#define Motor1_PWM_Port 3#define Motor2_M1_Port A4
#define Motor2_M2_Port A5
#define Motor2_PWM_Port 11

3.2 电机初始化函数

void motorInit() {// 设置引脚模式pinMode(Motor1_M1_Port, OUTPUT);pinMode(Motor1_M2_Port, OUTPUT);pinMode(Motor2_M1_Port, OUTPUT);pinMode(Motor2_M2_Port, OUTPUT);// 将引脚置于低电平digitalWrite(Motor1_M1_Port, LOW);digitalWrite(Motor1_M2_Port, LOW);digitalWrite(Motor2_M1_Port, LOW);digitalWrite(Motor2_M2_Port, LOW);
}

3.3 电机速度设置函数

void motorSetSpeed(int v1, int v2) {// 设置转动方向if (v1 >= 0) {digitalWrite(Motor1_M1_Port, LOW);digitalWrite(Motor1_M2_Port, HIGH);} else {digitalWrite(Motor1_M1_Port, HIGH);digitalWrite(Motor1_M2_Port, LOW);}if (v2 >= 0) {digitalWrite(Motor2_M1_Port, LOW);digitalWrite(Motor2_M2_Port, HIGH);} else {digitalWrite(Motor2_M1_Port, HIGH);digitalWrite(Motor2_M2_Port, LOW);}// 设置速度 通过PWM控制analogWrite(Motor1_PWM_Port, abs(v1)); // Value = 0 ~ 255analogWrite(Motor2_PWM_Port, abs(v2)); // Value = 0 ~ 255
} 

至此,电机的驱动代码全部完成。

【Arduino蓝牙小车】L298N电机驱动模块详解相关推荐

  1. 用寻迹模块L298n电机驱动模块制作Arduino寻迹小车四路(含清单,代码,接线,注意事项)

    本帖是在参考了很多博客之后进行的一次实战加总结,参考连接如下: Arduino智能小车寻迹篇 不适用PWM调速彻底解决L298n电机驱动转速不同的问题 1.工作原理 总体思想:小车通过四路寻迹模块得到 ...

  2. Arduino CNC电机扩展板详解(A4988驱动42步进电机)

    原文地址:http://www.taichi-maker.com/homepage/reference-index/motor-reference-index/arduino-cnc-shield/ ...

  3. Android低功耗蓝牙(BLE)使用详解

    代码地址如下: http://www.demodashi.com/demo/13390.html 与普通蓝牙相比,低功耗蓝牙显著降低了能量消耗,允许Android应用程序与具有更严格电源要求的BLE设 ...

  4. Arduino:数码管显示原理详解和Proteus仿真实验

    Arduino:数码管显示原理详解和Proteus仿真实验 Proteus仿真 数码管介绍 数码管是半导体发光元件,其基本单元是发光二极管.根据段数,数码管分为七段管和八段管. 八段管比七段管还多一个 ...

  5. LE Audio 蓝牙协议规范(3)-EA,PA详解

    LE Audio 蓝牙协议规范 LE Audio 蓝牙协议规范(1)-LE 状态 LE Audio 蓝牙协议规范(2)-物理信道及PDU LE Audio 蓝牙协议规范(3)-EA,PA详解 文章目录 ...

  6. 使用BleLib的轻松搞定Android低功耗蓝牙Ble 4.0开发详解

    转载请注明来源: http://blog.csdn.net/kjunchen/article/details/50909410 使用BleLib的轻松搞定Android低功耗蓝牙Ble 4.0开发详解 ...

  7. 【Arduino学习笔记】使用L298N电机驱动模块驱动直流电机

    L298N是Arduino的电机驱动模块,能驱动步进电机和两路直流电机,驱动步进电机和直流电机的文章网上百度一大堆,这里我想说的是L298N模块外接独立12V电压驱动电机的方法.我使用的L298N模块 ...

  8. Arduino 项目笔记 | 基于 Arduino 单片机的 A4988 和 L298N电机驱动模块实验记录

    目录 1. Arduino Nano 简介 2. 技术规格 3. 输入和输出 1. A4988 简介 2. A4988 引脚定义图及功能说明 (四相步进电机) 3. Arduino使用A4988控制电 ...

  9. 微信小程序连接蓝牙模块发送数据的详解以及封装版

    连接蓝牙 前言 详解 小程序链接蓝牙流程图 需要的数据 api openBluetoothAdapter:打开蓝牙适配器 getBluetoothAdapterState:查看蓝牙适配器状态 star ...

最新文章

  1. selection at the technology management
  2. jsp实现html注册,jsp+servlet实现最基本的注册登陆功能
  3. win10访问win7的共享文件夹
  4. 《Qt Quick 4小时入门》学习笔记4
  5. 在Python中将十六进制字符串转换为int
  6. 将TensorFlow训练的模型移植到Android手机
  7. 编译ROS-Academy-for-Beginners
  8. 黑客之门的魅力:感染与加载
  9. 【强化学习】动态规划
  10. edi系统三要素_EDI的三要素
  11. 最小二乘估计与卡尔曼滤波公式推导
  12. 基于微信小程序的点餐与预约餐桌的管理系统+后台管理
  13. 解决微信H5端用户注册登录
  14. 哈工大 计算机系统 一纸开卷CSAPP
  15. 通过百世单号自动识别快递公司,并查询大量物流情况
  16. 倒置字符串 将一句话的单词进行倒置,标点不倒置。
  17. 物联网无线通讯wifi模块AP和STA模式分别是什么意思?
  18. 「C++控制台生存游戏」暗黑体素 DarkVoxel 控制台版
  19. win10引导安卓x86_GPDwin安装安卓x86折腾记(上)
  20. 关于同步电机的Ldq测量

热门文章

  1. STIPC_编程挑战系列赛第一场(小郭的故事)_A.小郭最爱签到题
  2. MySQL day1
  3. 便携式医疗电子将科幻场景搬进生活
  4. 英语口语测试软件原理,Skype Translator实时语音翻译技术原理
  5. Java的静态方法和实例方法详解
  6. ssh免密登录(使用公钥私钥对登录)
  7. 软件测试面试总结(一)
  8. HTML用于布局网页页面的元素,HTML div布局标签元素
  9. 互联网思维(二)——流量时代,私域为王
  10. 诺基亚n79 java性能_诺基亚N79即将出现,N79与N82对比,综合性能与可买度提升大吗?...