做小车、机械臂、自动窗帘,绕不开电机驱动。相比最常见的L298N,TB6612模块更小、效率更高、发热更少,很多人从它这里入坑直流电机控制。这篇把引脚、接线、驱动逻辑和供电避坑一次讲清楚。

TB6612是什么:一座双路H桥
TB6612FNG是一颗双路H桥电机驱动芯片,一块模块同时能驱动两个直流电机,分别正反转和调速。它核心的引脚就三类:一是电源——VM接电机电源(百度耐搬到4.5到13.5V),VCC接逻辑电源(2.7到5.5V),GND接地;二是每路电机的控制——A路是PWMA、AIN1、AIN2,B路是PWMB、BIN1、BIN2;三是输出AO1/AO2、BO1/BO2接电机,外加一个STBY待机使能脚。

这张引脚图把每路逻辑写得很清楚:PWMA是PWM调速输入,AIN1/AIN2是方向输入,AO1/AO2是接电机的输出端。STBY接高电平才能工作,接到Arduino一个IO上,拉低就整体待机,常用来做紧急刹车。
怎么接线:Arduino一路+电机一路
接线分工明确:VCC接5V(逻辑供电)、VM接电机电源(用独立电池或稳压电源,别和Arduino逻辑挤一路)、GND共地;PWMA接一个带PWM的数字脚(比如D5)、AIN1接D6、AIN2接D7,B路同样接PWMB/BIN1/BIN2到另外三个脚;AO1/AO2接电机A的两根线、BO1/BO2接电机B。STBY接5V或一个IO高电平。判断方向就靠AIN1、AIN2的高低组合:AIN1高AIN2低正转,反过来反转,两个同高或同低就停。
代码思路:先方向后调速
先digitalWrite把AIN1/AIN2设成想要的转向,再用analogWrite往PWMA写PWM值(0到255)调速,越大越快。转方向想调速时,注意PWM要加在对应方向的信号脚上,别方向还没定就把速度塞进去,容易表现成“原地抖”。STBY平时置高,要急停或待机时拉低即可。
供电避坑两个点
一是VM电机电源和逻辑电源共地很关键,不共地电机转不起来或乱转。二是电机启动和堵转瞬间电流大,VM别用纹波太大的电源,必要时在VM和GND之间并一个大电解电容吸掉尖峰,防止Arduino因为干扰反复复位——这是很多人折腾半天才发现的坑。







电机堵转电流很大,VM上并个大电容更稳
STBY一定拉高,不然摸半天模块一直待机不动
PWM加在方向对了的信号脚上,反过来会出现原地抖
VM和VCC别接一起,一个给电机一个给逻辑,挤一路容易复位