《两相4线步进电机的脉冲分配.doc》由会员分享,可在线阅读,更多相关《两相4线步进电机的脉冲分配.doc(4页珍藏版)》请在金锄头文库上搜索。
1、两相4线步进电机的脉冲分配要实现步进电机的转动,可以用以下两种方式:(1)8拍的方式八个状态:1、在A与A-正电压,B与B-不给电悬空;2、在A与A-正电压,B与B-也给正电压;3、A与A-给电压悬空,B与B-正电压;4、A与A-给负电压,B与B-给正电压;5、A与A-给负电压,B与B-不给悬空;6、A与A-给负电压,B与B-给负电压;7、A与A-不给电悬空,B与B-给负电压;8、A与给正电压,B与B-给负电压;按以上八个状态轮流供电,控制一下脉宽应该就可以了。 四个引脚各一根控制线:AH表示各线时序 A B C D E F G HA 1 1 0 0 0 0 0 1A- 0 0 0 1 1 1
2、 0 0B 0 1 1 1 0 0 0 0B- 0 0 0 0 0 1 1 1.(2)4拍的方式一般是电流驱动的。 我下面的a 和b 表示反向电流。两相双二拍:ab ab ab ab 为一个转向。ab ab ab ab 为反向。下面是用p1.0-p1.3驱动的简易例子程序,没有加入脉冲宽度控制,本程序在IO口上输出分别接9012/9013输出电流(类似功放OTL电路接法),用电脑软驱的磁头步进电机测试通过。org 00hjmp mainmain:mov p1,#0001bcall d10ms ;延时mov p1,#0101bcall d10ms ;延时mov p1,#0100bcall d10
3、ms ;延时mov p1,#0110bcall d10ms ;延时mov p1,#0010bcall d10ms ;延时mov p1,#1010bcall d10ms ;延时mov p1,#1000bcall d10ms ;延时mov p1,#1001bcall d10ms ;延时jmp maind10ms:;延时程序,根据晶振来改参数mov r5,#3dddd:mov r4,#10djnz r4,$djnz r4,$;djnz r4,$根据时间长短加减语句djnz r5,ddddretendorg 00hmov r6,#0mov r7,#0mov dptr,#djzsxmain:call b
4、jdjcall d10ms ;延时jmp mainbjdj:inc r6cjne r6,#252,djjjmov r6,#0cpl 01hdjjj:jb 01h ,zzzzmov dptr,#djzsxjmp djzzazzzz:mov dptr,#djfsxdjzza:inc r7cjne r7,#8,djzzmov r7,#0djzz:mov a,r7movc a,a+dptrmov p1,aretdjzsx:db 0001b,0101b,0100b,0110b,0010b,1010b,1000b,1001bdjfsx:db 1001b,1000b,1010b,0010b,0110b,0100b,0101b,0001bd10ms:;延时程序,根据晶振来改参数mov r5,#3dddd:mov r4,#10djnz r4,$djnz r4,$;djnz r4,$根据时间长短加减语句djnz r5,ddddretend