康小印
級別: 探索解密
|
大家好,小弟用51單片機(jī)想控制步進(jìn)電機(jī)正轉(zhuǎn)和反轉(zhuǎn),但是現(xiàn)在只能夠?qū)崿F(xiàn)正轉(zhuǎn),反轉(zhuǎn)無法實(shí)現(xiàn)。下面是正轉(zhuǎn)程序(只能夠是向一個(gè)方向運(yùn)動(dòng)): #include<reg52.h> #define uchar unsigned char #define uint unsigned int sbit zmc=P1^0; sbit fmc=P1^1; sbit zfx=P1^2; sbit ffx=P1^3; void delayws(uchar); void main() { uchar i,a; for(a=1000;a>0;a--) { for(i=1000;i>0;i--) { zfx=1; ffx=0; zmc=1; fmc=0; zmc=0; } } while(1) { zfx=0; ffx=0; zmc=0; fmc=0; } } 接線圖如下,采用的是差分接線辦法。 我嘗試過單獨(dú)修改zfx=0;ffx=1,但是依舊不會(huì)改變方向,還是會(huì)向下運(yùn)動(dòng); 嘗試過單獨(dú)修改fmc=1;zmc=0;fmc=0;這樣修改,這次步進(jìn)電機(jī)就不運(yùn)動(dòng)了。我若想通過程序?qū)崿F(xiàn)步進(jìn)電機(jī)能夠反向運(yùn)動(dòng),程序應(yīng)該怎么修改?謝謝大家 |
---|---|
|