单片机课程设计方案步进电机控制.docx
- 文档编号:30511003
- 上传时间:2023-08-16
- 格式:DOCX
- 页数:18
- 大小:140.09KB
单片机课程设计方案步进电机控制.docx
《单片机课程设计方案步进电机控制.docx》由会员分享,可在线阅读,更多相关《单片机课程设计方案步进电机控制.docx(18页珍藏版)》请在冰豆网上搜索。
单片机课程设计方案步进电机控制
学院:
姓名:
班级:
学号:
一、实验任务
1.从键盘上输入正、反转命令,转速参数(16级)和转动步数显示在LED显示器上。
显示器上显示:
第一位为0表示正转,为1表示反转;
第二位0~F为转速等级;
第三到第六位设定步数。
2.单片机显示器上显示的正、反转命令,转速级数和转动步数进行相应动作,转动步数减为零时停止转动。
二、基本原理
1.步进电机基本原理
如图,当有一相绕组被通电激励时,磁通从正相齿,经过软铁芯的转子,并以最短路径流向负相齿,为使磁通路径最短,在磁场力的作用下,转子被迫移动,使最近的一对齿与被激励的一相对准。
那么,通过对它每相线圈中电流的顺序切换可使电机作步进式旋转。
相数:
产生不同对极N、S磁场的激磁线圈对数。
拍数:
指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB或A-B-C-D-A,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A.
步距角:
对应一个脉冲信号电机转子转过的角位移。
步距角=360/(转子齿数*拍数)
系统中使用20BY-0型号步进电机,它使用+5V直流电源,步距角为18度,电机线圈由A、B、C、D四相组成。
步进电机驱动原理是通过对它每相线圈中的电流的顺序切换来使电机作步进式旋转,驱动电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速。
BA、BB、BC、BD即为脉冲信号输入插孔,驱动器输出A、B、C、D接步进电机。
步进电机原理接线图如图所示:
步进电机模块插头接实验系统J3插座,(顺接)
把P1.0~P1.3分别接到BA~BD插孔。
2.数码管显示和键盘
(1)数码管显示字形
LED显示器是由发光二极管构成的字段组成的显示器。
显示程序任务:
●设置显示缓冲区(7EH-79H),存放待显示数据和字符(位置码)。
●显示译码:
程序存储器中建立字形码常数表,查表得出对应数据和字符的字形码。
●输出显示:
输出字形码到显示端口。
(2)字位口表(从高位起)
(3)键盘显示原理图
三、内存使用分配表
0FFDCH
字形口
0FFDDH
字位口/键扫口
0FFDEH
键入口
ACC(A)、R0~R7
存放中间值
79H~7EH
显示缓冲单元,存放显示器的显示数据
四、设计说明及流程
1.显示子程序模块
●采用动态显示方式,即一位一位地轮流点亮(扫描)6位显示器。
●在8032RAM存储器中设置六个显示缓冲区单元7EH-79H,分别存放6位显示器的显示数据(从高到低)。
2.键盘输入模块
●实验系统有4×8的键盘结构(见键扫显示原理图)。
●键盘的行线通过电阻接+5V,当键盘上没有键闭合时所有的行线和列线都断开,行线都为高电平。
当键盘上某一键闭合时,则该键所对应的行线和列线都短路。
●CPU逐行逐列地检查键盘的状态,可判断键盘上有无键闭合。
CPU对键盘上闭合键的键号确定,可根据行线和列线的状态计算求得,也可以根据行线和列线的状态查表求得。
3.步进电机控制模块
●四相四拍运行方式即AB-BC-CD-DA-AB或A-B-C-D-A
●激励一相即对该相置“1”
●控制每一拍的间隔时间用延时子程序实现
判断步数是否减为0的流程图
5、?
?
?
?
ORG0000H
LJMPMAIN
ORG100H
MAIN:
MOV79H,#00H;?
?
?
?
?
MOV7AH,#00H
MOV7BH,#00H
MOV7CH,#00H
MOV7DH,#00H
MOV7EH,#00H
MOVR0,#7EH;?
?
?
?
?
?
?
?
?
?
?
?
MAIN1:
ACALLKEY1;?
?
?
?
?
?
MOV@R0,A;?
?
?
?
?
?
?
7EH?
CJNER0,#78H,KS;?
?
?
78H,?
?
?
KS
CJNEA,#16H,AGAIN;?
?
?
?
EXEC?
?
?
?
?
?
?
RUN
LJMPRUN;?
?
?
?
?
?
?
?
?
?
?
AGAIN:
LJMPMAIN1
KS:
DECR0
LJMPMAIN1
RUN:
MOVA,7EH;?
(7EH)?
?
?
?
JZZHENG;?
?
?
?
?
JNZFAN;?
?
?
?
?
ZHENG:
MOVP1,#03H;?
AB?
?
?
?
ACALLDELAY;?
?
?
?
?
?
?
MOVP1,#06H;?
BC?
?
?
?
ACALLDELAY;?
?
?
?
?
?
?
MOVP1,#0CH;?
CD?
?
?
?
ACALLDELAY;?
?
?
?
?
?
?
MOVP1,#09H;?
DA?
?
?
?
ACALLDELAY;?
?
?
?
?
?
?
ANL79H,#0FH;?
7EH?
?
?
ANL7AH,#0FH;?
7DH?
?
?
ANL7BH,#0FH;?
7CH?
?
?
ANL7CH,#0FH;?
7BH?
?
?
LCALLDIS;?
?
?
?
?
?
?
MOVR0,79H;?
?
?
?
?
?
?
?
0?
?
CJNER0,#0,Z1
DEC79H
MOVR0,7AH
CJNER0,#0,Z2
DEC7AH
MOVR0,7BH
CJNER0,#0,Z3
DEC7BH
MOVR0,7CH
CJNER0,#0,Z4
LJMPMAIN
Z1:
DEC79H
LJMPZHENG
Z2:
DEC7AH
LJMPZHENG
Z3:
DEC7BH
LJMPZHENG
Z4:
DEC7CH
LJMPZHENG
FAN:
MOVP1,#09H;?
AD?
?
?
ACALLDELAY;?
?
?
?
?
?
?
MOVP1,#0CH;?
DC?
?
?
ACALLDELAY;?
?
?
?
?
?
?
MOVP1,#06H;?
CB?
?
?
ACALLDELAY;?
?
?
?
?
?
?
MOVP1,#03H;?
BA?
?
?
ACALLDELAY;?
?
?
?
?
?
?
ANL79H,#0FH;?
7EH?
?
?
ANL7AH,#0FH;?
7DH?
?
?
ANL7BH,#0FH;?
7CH?
?
?
ANL7CH,#0FH;?
7BH?
?
?
LCALLDIS
MOVR0,79H;?
?
?
?
?
?
CJNER0,#0,F1
DEC79H
MOVR0,7AH
CJNER0,#0,F2
DEC7AH
MOVR0,7BH
CJNER0,#0,F3
DEC7BH
MOVR0,7CH
CJNER0,#0,F4
LJMPMAIN
F1:
DEC79H
LJMPFAN
F2:
DEC7AH
LJMPFAN
F3:
DEC7BH
LJMPFAN
F4:
DEC7CH
LJMPFAN
DELAY:
MOVR1,7DH;?
?
?
?
?
?
DELAY1:
ACALLDIS
MOVR1,DELAY1
RET
HERE:
ACALLDIS
SJMPHERE
KEY1:
ACALLKS1;?
?
?
?
?
?
?
?
?
?
?
?
JNZLK1;?
?
?
?
?
?
?
?
?
ACALLDIS;?
?
?
?
?
?
?
?
?
?
?
AJMPKEY1;?
?
KEY1,?
?
?
?
LK1:
ACALLDIS;?
?
?
?
?
?
?
ACALLT12;?
?
12ms?
?
?
?
?
ACALLKS1;?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
JNZLK2;?
?
?
?
?
?
?
?
?
?
?
?
AJMPKEY1;?
?
?
?
KEY1,?
?
?
?
LK2:
MOVR2,#0FEH;?
?
?
?
?
?
R2
MOVR4,#0H;?
?
?
?
R4
LK4:
MOVDPTR,#0FFDDH;?
?
?
?
?
?
?
?
?
MOVA,R2;?
?
?
?
?
?
MOVX@DPTR,A;?
?
0?
?
?
0
MOVDPTR,#0FFDEH;?
?
?
?
?
MOVXA,@DPTR;?
?
?
?
?
?
?
?
JBACC.0,LONE;?
0?
?
?
?
?
?
?
?
1?
MOVA,#00H;?
0?
?
?
?
?
?
?
?
?
?
#00H?
A
AJMPLKP;?
?
?
?
LONE:
JBACC.1,LTWO;?
1?
?
?
?
?
?
?
?
2?
MOVA,#08H;?
1?
?
?
?
?
?
?
?
?
?
#08H?
A
AJMPLKP
LTWO:
JBACC.2,LTHR;?
2?
?
?
?
?
?
?
?
3?
MOVA,#10H;?
2?
?
?
?
?
?
?
?
?
?
#10H?
A
AJMPLKP
LTHR:
JBACC.3,NEXT;?
3?
?
?
?
?
?
?
?
?
?
MOVA,#18H;?
3?
?
?
?
?
?
?
?
?
?
#18H?
A
LKP:
ADDA,R4;?
?
?
?
?
?
?
?
=?
?
?
?
+?
?
MOVDPTR,#TAB1;?
?
TAB1,?
?
?
?
?
?
?
A
MOVCA,@A+DPTR
PUSHACC;?
?
?
?
?
?
?
LK3:
ACALLDIS;?
?
?
?
?
?
?
ACALLKS1;?
?
?
?
?
JNZLK3;?
?
?
?
?
POPACC;?
?
?
?
?
?
A
RET;?
?
?
?
?
?
?
?
?
(A)=?
?
?
?
NEXT:
INCR4;?
?
?
?
?
?
?
?
1
MOVA,R2;?
?
8?
?
?
?
?
?
JNBACC.7,KND;8?
?
?
?
?
?
RLA;?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
MOVR2,A;?
?
?
?
R2
AJMPLK4;?
?
?
?
?
?
KND:
AJMPKEY1
KS1:
MOVDPTR,#0FFDDH;?
?
?
?
?
MOVA,#00H;?
?
?
?
#0H
MOVX@DPTR,A;?
?
?
?
?
?
?
?
MOVDPTR,#0FFDEH;?
?
?
?
?
MOVXA,@DPTR;?
?
?
?
?
?
?
CPLA;?
?
?
?
?
?
?
?
?
?
?
?
?
?
ANLA,#0FH;?
?
?
4?
RET;?
?
?
?
(A)=1?
?
?
?
?
T12:
MOVR7,#18H;?
?
12ms?
?
?
TM:
MOVR6,#0FFH
TM6:
DJNZR6,TM6
DJNZR7,TM
RET
DIS:
MOVR0,#079H;?
?
?
?
?
?
?
?
?
R0
MOVR3,#01H;?
?
?
?
?
?
?
?
?
MOVA,R3
LD0:
MOVDPTR,#0FFDDH;?
?
?
?
?
?
?
?
MOVX@DPTR,A
MOVA,@R0;?
?
?
?
?
MOVDPTR,#TAB;?
?
?
?
MOVCA,@A+DPTR;?
?
?
MOVDPTR,#0FFDCH;?
?
?
?
?
MOVX@DPTR,A;?
?
?
?
ACALLDL1;?
?
INCR0;?
?
?
?
?
?
1
MOVA,R3
JBACC.5,LD1;?
?
?
?
?
?
?
?
?
?
?
?
?
RLA;?
?
?
?
?
?
?
?
MOVR3,A
AJMPLD0
LD1:
RET
DL1:
MOVR7,#02H;?
?
?
?
?
DL:
MOVR6,#0FH
DLA:
DJNZR6,DLA
DJNZR7,DL
RET
ORG700H
TAB:
DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH;?
?
?
?
?
DB6FH,77H,7CH,39H,5EH,79H,71H,00H,40H,0FFH
TAB1:
DB7H,4H,8H,5H,9H,6H,0AH,0BH,1H,0H,2H;?
?
DB0FH,3H,0EH,0CH,0DH,00H,00H,00H,00H
DB00H,00H,16H
7、?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
(16?
)?
?
?
?
?
?
?
?
LED?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
;?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 方案 步进 电机 控制