• 基于51单片机步进电机节拍步数正反转LCD1602显示( proteus仿真+程序+原理图+设计报告+讲解视频)



    基于51单片机步进电机节拍步数正反转LCD1602显示( proteus仿真+程序+原理图+设计报告+讲解视频)

    仿真图proteus7.8及以上

    程序编译器:keil 4/keil 5

    编程语言:C语言

    设计编号:S0063

    📑1. 主要功能:

    基于51单片机AT89C51/52(与AT89S51/52、AT89C51/52、STC89C51/52等51内核单片机通用)

    基于单片机的步进电机控制系统设计

    1、用单片机来控制步进电机的运行,要求有启动控制、换向控制、电机停止。

    2、正转和反转状态均由不同颜色指示灯来指示。

    3、电机的节拍方式可以通过按键进行切换。

    4、电机的步数可通过按键设定来确定,电机转动过程要显示剩余步数。

    5、用LCD1602液晶显示,步数,步进节拍和方向。

    需注意仿真中51单片机芯片是兼容的,AT89C51,AT89C52是51单片机的具体型号,内核是一样的。相同的原理图里,无论stc还是at都一样,引脚功能都是一样的,程序是兼容的,芯片可以替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。

    资料下载链接:

    【腾讯文档】S0063 网盘链接

    https://docs.qq.com/doc/DS0FKU3had0RLUG9N

    以下为本设计资料展示图:

    📑2. 讲解视频:

    仿真讲解+代码讲解

    📑3. 仿真

    打开仿真工程,双击proteus中的单片机,选择hex文件路径,然后开始仿真。开始仿真后,LCD1602显示step:0100,pai:8 right。分别表示步数,节拍为8拍和转动方向。

    img

    可以通过按键调整步数,节拍和转动方向。

    img

    📑4. 程序代码

    使用keil4或者keil5编译,代码有注释,可以结合报告理解代码含义。

    img

    主函数

    //主函数
    void main()
    {
    	uchar k=0;
    	init_1602();
    	P1=0x01;
    	TMOD|=0X01;
    	TH0=0XD8;
    	TL0=0XF0;	
    	ET0=1;//打开定时器0中断允许
    	EA=1;//打开总中断
    	TR0=1;//打开定时器
    	while(1)
    	{
    		if(fang==0)//方向指示
    			led2=0;
    		else
    			led2=1;
    		if(start)
    			led1=0;
    		else
    			led1=1;
    		if(!k1 &&(k!=1))//启停
    		{
    			k=1;
    			start=!start;
    			if(start==1)
    			{
    				step=step_set;
    			}
    			else
    			{
    				step=0;
    			}
    		}
    		if(!k2 &&(k!=2))//设置
    		{
    			k=2;
    			if(mode<3)
    				mode++;
    			else
    				mode=0;
    		}
    		if(!k3 &&(k!=3))//加
    		{
    			k=3;
    			if(mode==1)//步数
    			{
    				if(step_set<9999)
    				   step_set+=10;
    				step=step_set;
    			}
    			if(mode==2)//通电方式
    			{
    				moshi=1;
    			}
    			if(mode==3)//方向
    			{
    				fang=0;
    			}
    		}
    		if(!k4 &&(k!=4))//减
    		{
    			k=4;
    			if(mode==1)//步数
    			{
    				if(step_set>10)
    				   step_set-=10;
    				step=step_set;
    			}
    			if(mode==2)//通电方式
    			{
    				moshi=0;
    			}
    			if(mode==3)//方向
    			{
    				fang=1;
    			}
    		}
    		if(k1 && k2 && k3 && k4)
    			k=0;
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83

    📑5. 设计报告

    5654字设计报告,内容包括硬件设计、软件设计、软硬件框图、调试、结论等

    img

    📑6. 设计资料内容清单&&下载链接

    资料设计资料包括仿真,程序代码、讲解视频、功能要求、设计报告、软硬件设计框图等。

    0、常见使用问题及解决方法–必读!!!!

    1、仿真图

    2、程序源码

    3、功能要求

    4、原理图

    5、开题报告

    6、元器件清单

    7、设计报告

    8、软硬件流程框图

    9、讲解视频

    Altium Designer 安装破解

    KEIL+proteus 单片机仿真设计教程

    KEIL安装破解

    Proteus元器件查找

    Proteus安装

    Proteus简易使用教程

    单片机学习资料

    相关数据手册

    答辩技巧

    设计报告常用描述

    鼠标双击打开查找嘉盛单片机51 STM32单片机课程毕业设计.url

    img

    📑资料下载链接:

  • 相关阅读:
    定制 or 订阅?未来中国 SaaS 行业发展趋势是什么?
    QT软件开发-基于FFMPEG设计录屏与rtsp、rtmp推流软件(支持桌面与摄像头)(二)
    《style scope》 作用域保护如何修改(组件库)子组件的样式
    C++20 实现字符串类型的转换操作
    windows系统玩游戏找不到d3dx9_35.dll缺失的解决方法
    如何设计神经网络结构图,神经网络设计与实现
    python并发编程之协程
    Golang——从入门到放弃
    革新突破!智能指标平台引领时代,国产大模型与企业级部署的完美结合
    LVS原理——详细介绍
  • 原文地址:https://blog.csdn.net/weixin_52733843/article/details/134469052