假設你是用共陰極的接法接驅動器且步進電機處於全步每脈衝1.8度
int i,pin_read,flag=1;
for(i=0;i<200;i++){
digitalWrite(direction,HIGH); //給方向引腳一個高電平,設定方向正轉
digitalWrite(led,HIGH); //給一個引腳高電平
delay(10);
digitalWrite(led,LOW); //給一個引腳低電平
} //向步進電機發送兩百個脈衝,以一個脈衝1.8度大約360度
flag=0; //標誌位置0表示正轉完成
}
if(flag==0){ //反轉收到正轉完成訊號
for( i=0;i<200;i++){
digitalWrite(direction,LOW); //給方向引腳一個高電平,設定方向反轉
flag=1; 反轉完成置1
嘛這只是個簡單的思路,沒怎麼用過arduino所以可能有哪些不規範的地方,如果真想玩步進電機控制和不想多花錢的話個人建議最好用stc15或者stm32 c8t6
附加句這個程式是基於你買了步進電機驅動器的情況;假設你買了l298n那種的h橋的驅動器得寫上步進電機的拍數還得寫上pwm,畢竟正常的h橋不會給你加恆流斬波
假設你是用共陰極的接法接驅動器且步進電機處於全步每脈衝1.8度
int i,pin_read,flag=1;
for(i=0;i<200;i++){
digitalWrite(direction,HIGH); //給方向引腳一個高電平,設定方向正轉
digitalWrite(led,HIGH); //給一個引腳高電平
delay(10);
digitalWrite(led,LOW); //給一個引腳低電平
delay(10);
} //向步進電機發送兩百個脈衝,以一個脈衝1.8度大約360度
flag=0; //標誌位置0表示正轉完成
}
if(flag==0){ //反轉收到正轉完成訊號
for( i=0;i<200;i++){
digitalWrite(direction,LOW); //給方向引腳一個高電平,設定方向反轉
digitalWrite(led,HIGH); //給一個引腳高電平
delay(10);
digitalWrite(led,LOW); //給一個引腳低電平
delay(10);
} //向步進電機發送兩百個脈衝,以一個脈衝1.8度大約360度
flag=1; 反轉完成置1
}
嘛這只是個簡單的思路,沒怎麼用過arduino所以可能有哪些不規範的地方,如果真想玩步進電機控制和不想多花錢的話個人建議最好用stc15或者stm32 c8t6
附加句這個程式是基於你買了步進電機驅動器的情況;假設你買了l298n那種的h橋的驅動器得寫上步進電機的拍數還得寫上pwm,畢竟正常的h橋不會給你加恆流斬波