基于proteus步进电机仿真及程序

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

proteus中的步进电机有两种,

六线制(MOTOR-STEPPER)和四线制(MOTOR-BISTEPPER),六线制的左右中间两根线接电源,任然剩下四根,但的顺序和四线制的不同,见下图。

注意a,b,c,d的顺序

在实际情况中,单片机是不能直接拖动步进电机的,需用ULN2003这样的器件

两个步进电机都是四相电机。

如果用四拍:

那么P2输出的(顺时针)顺序就是:0x03,0x06,0x0c,0x09

a 1 0 0 1

b 1 1 0 0

c 0 1 1 0

d 0 0 1 1

如果用八拍:

那么P2输出的(顺时针)顺序就是:0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09

a 1 1 0 0 0 0 0 1

b 0 1 1 1 0 0 0 0

c 0 0 0 1 1 1 0 0

d 0 0 0 0 0 1 1 1

给一个测试八拍的仿真程序:

1.#include<reg5

2.h>

2.

3.main(){

4.while(1){

5.unsigned int i,j,k;

6.for(k=0;k<255;k++){

7.for(i=0;i<75;i++)

8.for(j=0;j<255;j++);

9.P2=0x01;

10.for(i=0;i<75;i++)

11.for(j=0;j<255;j++);

12.P2=0x03;

13. for(i=0;i<75;i++)

14.for(j=0;j<255;j++);

15.P2=0x02;

16.

17. for(i=0;i<75;i++)

18.for(j=0;j<255;j++);

19.P2=0x06;

20.for(i=0;i<75;i++)

21.for(j=0;j<255;j++);

22.P2=0x04;

23.for(i=0;i<75;i++)

24.for(j=0;j<255;j++);

25.P2=0x0c;

26. for(i=0;i<75;i++)

27.for(j=0;j<255;j++);

28.P2=0x08;

29.

30. for(i=0;i<75;i++)

31.for(j=0;j<255;j++);

32.P2=0x09;

33.

34.

35.}

36. }

37.}

相关文档
最新文档