一、软件配置
1.仿真软件:Proteus8.17 SP2
2.编程软件:Keil C51 V961
二、项目简介
在 Proteus 仿真环境下,基于 AT89C51 单片机构建了一套步进电机控制仿真系统。该系统涵盖单片机最小系统模块、显示模块、独立按键模块、状态指示灯模块以及步进电机控制电路。通过独立按键,此系统可实现对步进电机的启动、停止、正转、反转控制,还具备 10 级速度调节功能。无论步进电机处于启动还是停止状态,都能通过按键便捷地进行正反转及速度调节设置。
资料包中含有仿真源文件、程序源文件及软件安装包链接与安装教程链接。
三、硬件说明
1.单片机最小系统
主要由AT89C51单片机及其外围电路组成,外围电路涵盖以下部分:
(1)晶振电路:采用11.0592MHz的频率,为微控制器提供精确的时钟信号;
(2)复位电路:设计包括电源启动复位和手动按键复位两种模式;
(3)P0口上拉电阻:在将51单片机的P0口作为通用输入输出端口使用时,必须外接上拉电阻以确保信号的稳定性。
2.显示模块
通过数码管展示速度等级,鉴于共有10个速度等级,可利用0-9的数字进行显示分区。因此,仅需使用一个共阳极数码管,无需进行位选控制。该数码管的公共端直接连接至电源。在数码管段控制方面,为防止每段电流过大, 我们在每段串联了一个470欧姆的电阻以限制电流。同时,为了防止单片机灌电流过大,我们采用了74HC245芯片来控制数码管的段。74HC245芯片的操作由单片机的P0口负责,确保整个数码管段控制电路的稳定与安全运行,避免因灌电流过大可能引起的电路故障或性能下降。
3.独立按键模块
共设有4个独立按键,分别对应启停、加速、减速、变向功能,它们依次由P24-P27进行控制,分别实现电机的启动与停止、电机加速、电机减速、电机正反转切换四个功能。
4.状态指示灯模块
存在三种状态指示灯:启停指示灯、正转指示灯和反转指示灯,它们分别由P30、P31和P32进行控制。当启停指示灯亮起时,意味着电机正在运行;若指示灯熄灭,则表示电机已停止。至于正转和反转指示灯,它们不会同时亮起;当电机处于正转状态时,正转指示灯会亮起,而电机反转时,则是反转指示灯亮起。
5.步进电机控制电路
采用双相八拍控制策略,每次脉冲旋转45度,通过调节脉冲发送的时间间隔,便能精确控制电机的转速。通过控制脉冲序列发送的顺序即可控制电机的正反转。鉴于电机驱动电流较高,我们选用了具备高耐压和大电流驱动能力的达林顿管阵列芯片LN2003作为驱动器。单片机通过P20至P24端口进行控制。
四、软件说明
如图所示,项目编译过程中未出现任何错误或警告。程序采用了模块化设计,主要分为四个模块:主程序main、按键模块KEY、定时器模块TIMER0以及步进电机模块STEPMOTOR。
主程序承担着协调和控制所有模块的职责,涵盖了按键的扫描与处理、数码管和状态指示灯的设置、以及电机的启动/停止和正反转控制。这一程序确保了电机控制系统的稳定运行。
按键模块专注于管理四个按键的控制逻辑。它通过精确的检测、消抖和查询流程,准确地识别并返回被按下的按键值。此外,该模块还具备防止误操作的重复按键功能,即防死按功能,显著提高了按键操作的可靠性和稳定性。
定时器模块主要为电机速度控制提供时间基准,确保电机速度的可控性。
步进电机模块主要负责电机的停止控制以及电机的正反转控制。
五、项目获取
链接: 百度云
提取码: YIWE