基于51单片机的直流电机调速测速正反转控制(仿真+源程序+原理图+PCB) | 您所在的位置:网站首页 › 51单片机步进电机控制系统正反转调速程序流程图 › 基于51单片机的直流电机调速测速正反转控制(仿真+源程序+原理图+PCB) |
资料编号:206 1.本设计采用STC89C51/52(与AT89S51/52、AT89C51/52通用,可任选)51单片机作为主控制器 2.采用霍尔传感器非接触式测电机转速 3.LCD1602液晶显示当前的转速,转速单位为转/分(RPM)。和显示当前的pwm占空比0~100%。 4.电机的速度可以通过按键调整,也可以开始暂停,正转和反转。 注意:磁铁和霍尔元件最近距离在2mm左右,太近可能会在电机转动时碰到霍尔元件,太远霍尔元件可能会检测不到磁铁。 使用说明: 液晶屏第一行显示电机转速,第二行显示占空比,占空比数值越大,电机转速越快。 系统一共有6个按键,单片机附近的独立按键是系统的复位按键,按下单片机会复位。 下面一排是控制按键: 1键:加速键,可以短按,占空比加1,也可长按,占空比连续加; 2键:减速键,可以短按,占空比减1,也可长按,占空比连续减; 3键:反转切换键,按下后电机反转; 4键:正转切换键,按下后电机正转; 5键:开始暂停键,按一下开始,再按一下暂停。 下面是仿真图: ![]() 下面是原理图: ![]() 下面是PCB: ![]() 下面是程序文件,有中文注释,新手容易看懂 void keyscan() //键盘扫描函数 { if(num1==0) { delay(5); //消除抖动 if(num1==0) { if(m if(m>=1) m--; displaym();//设定占空比减一 } } if(num3==0) { delay(5); if(num3==0) { zheng=1; //初始化电机正转动 fan=0; } } if(num4==0) { delay(5); if(num4==0) { zheng=0; //初始化电机正转动 fan=1; } } if(num5==0) { delay(5); if(num5==0) { while(num5==0) ; kai=1-kai; } }
} void display() { write_com(0x82); zhuansu=zhuansu*30; //将两秒内的计数乘以30得到转每分
![]() ![]() 下面是资料分享下载链接: https://pan.baidu.com/s/1L6k0bZirvApsfOFodAalBA?pwd=n119 |
CopyRight 2018-2019 实验室设备网 版权所有 |