当前位置:文档之家› 基于proteus步进电机仿真及程序

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

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.}。

相关主题