单片机小白学习之路(十二)---直流电机的控制
2020-03-28 来源:eefocus
目标:直流电机的控制
1.直流电机简介
直流电机是指能将直流电能转换成机械能的旋转电机。
相关参数:
轴长:8mm
轴径:2mm
电压:1-6v
参考电流:0.35-0.4A
3v转速:17000-18000转每分钟
直流电机
2.模块电路
直流电机模块
TC1117芯片构造与TC1508一样,那就来看看TC1508的
引脚
INA, INB与INC,IND是两组输入端OUTA,OUTB与OUTC,OUTD是两组输出端
真值表
INA和INB都输入低电平时,电机是待命状态
INA高,INB低时,电机是前进,顺时针
INA低,INB高时,电机是后退,逆时针
INA和INB都输入高电平时,电机是刹车的状态,就是正在转一下停止
OUT的部分加电容是为了去除杂波(比如按键的杂波),防止影响电机的运转
3.代码
#include typedef unsigned int u16; typedef unsigned char u8; sbit ShuC_a = P1^0; //输入端a sbit ShuC_b = P1^1; //输入端b sbit k1 = P1^4; //独立按键 void delay(u16 i) { while(i--); } void main() { u8 a; u8 mode=0; //用于改变模式 while(1){ if(k1==0){ delay(1000); if(k1==0){ //按键消抖 a++; mode++; if(mode==2)mode=0; }while(a<50&&!k1); //判断是否松开了按键,在k1不是0和a>=50时跳出 } if(mode==1){ //开启 ShuC_a=0; ShuC_b=1; } else if(mode==0){ //停止 ShuC_a=0; ShuC_b=0; } } } //运行状态:按键按一下运行,再按一下就停止