单片机C语言步进电机实训报告,单片机实验报告步进电机.doc

单片机实验报告步进电机

2011301510064 杨闯

【实验目的】

了解步进电机的工作原理,掌握它的转动控制方式和调速方法。IBM PC 机 一台DP-51PROC 单片机综合仿真实验仪 一台1. 编写程序,通过单片机的P1 口控制步进电机的控制端,使其按一定的控制方式进行转动。 2. 分别采用双四拍(ABBC→CD→DA→AB)方式、单四拍(AB→C→D→A)方式和单双八拍(AAB→B→BC→C→CD→D→DA→A)方式编程,控制步进电机的转动方向和转速。 3. 观察不同控制方式下,步进电机转动时的振动情况和步进角的大小,比较这几种控制方式的优缺点。

学会步进电机的工作原理和控制方法,掌握一些简单的控制电路和基本的电机基础知识。

1.安装C10 区JP6 接口上的短路帽,将C10 区BA、BB、BC、BD与A2 区的P10~P13对应相连。 2. 打开程序调试软件,下载运行编写好的软件程序,观察步进电机的转动情况。 3. 修改步进电机的控制程序,再次运行程序,比较它们的不同控制效果。

BA EQU P1.0

BB EQU P1.1

BC EQU P1.2

BD EQU P1.3

ORG 0000H

LJMP MAIN

ORG 0100H

MAIN:

MOV SP,#60H

ACALL DELAY

SMRUN:

MOV P1,#08H

ACALL DELAY

MOV P1,#0CH

ACALL DELAY

MOV P1,#04H

ACALL DELAY

MOV P1,#06H

ACALL DELAY

MOV P1,#02H

ACALL DELAY

MOV P1,#03H

ACALL DELAY

MOV P1,#01H

ACALL DELAY

MOV P1,#09H

ACALL DELAY

SJMP SMRUN

DELAY:

MOV R4,#100

DELAY1:

MOV R5,#100

DJNZ R5,$

DJNZ R4,DELAY1

RET

END

C语言程序:

#include

void delay();

main()

{

while(1)

{

P1=0x08;

delay();

P1=0x0c;

delay();

P1=0x04;

delay();

P1=0x06;

delay();

P1=0x02;

delay();

P1=0x03;

delay();

P1=0x01;

delay();

P1=0x09;

delay();

}

}

void delay()

{

unsigned char i,j;

for(i=0;i<100;i++)

for(j=0;j<100;j++);

}

【实验结果】

如图所示接线,并且在完成程序的编译和烧录后,单片机上的步进电机开始转动,改变相应的延时和完成的方式,步进电机的转动情况会发生一定的改变,也可以通过P口将步进电机的输入反映到LED灯上,这样就可以观察步进电机的工作原理。

【实验分析

步进电机是通过给每个端口输入不同的位置,让电机在每个时刻所在的位置不同,然后通过循环实现转动的。如果将循环的次数加以控制,或者将延时边长,就可以看出或者是计算出不同的方式,步进电机每一拍的转动情况,例如单双八拍的步进电机,每一怕所转动的角度就是9度。通过这次实验,掌握了单片机步进电机的工作原理和他的几种不同的工作方式,并且对他的不同工作方式的差异有了自己的想法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值