用麵包板做一個步進電機驅動電路

今天在我的那個單片機試驗箱裡翻到啦一個35mm的步進電機, 然後在配套資料裡面找到了驅動電路

的電路圖 如圖

下面我給大家講講原理 (僅供參考) :首先j18接口是加到單片機io口上的 j19接到步進電機 j19的1234分別為步進電機的a,a1,b,b1

首先 8550是低電平導通,如果j18的1的電平為0,那麼三極管v8導通,v8導通之後j19的1腳的電平為1

,同時電流又通過R49讓三極管v15導通 由電路圖可知 ,j19的2腳接到了v15的集電極,且j19的2腳和1腳是

一組線圈,3和4腳是一組線圈,現在1腳電平為1,電流流經一組線圈 從2腳出來通過三極管v15 流向負極。

也就是 三極管v8和v15是一組,v7和v16是一組,v10和v17是一組,v9和v18是一組, 這樣兩個三極管共

同承擔電流 可以使電路更穩定;這就是工作原理 ,其他的幾組三極管同理,至於r47和r51是幹啥用的,我也不知道

,誰知道的話就說出來,我會感謝你們滴, 我講的可能不怎麼好,你們可以噴 至於步進電機的原理 百度一大堆,我就不介紹了

下面就是製作過程;

需要的東西就是這些 三極管8550和8050 ,電阻(沒找到1k電阻除了r47和r51用1.3k,其別的用820歐,排針,還有洞洞板,一把烙鐵

然後按照電路圖在洞洞板上安裝零件

反面

佈線~~~~~

地方不夠的把焊盤削成兩半 然後焊金屬絲

有的地方沒法佈線 就用跳線像這樣:

製作成品

反面

用到的電機是兩相四線步進電機

如圖

程序如下 (程序裡的Abc接到一個燈上,判斷程序是否運行用的)

//此程序是 兩線四相步進電機 驅動程序#include //***定義******************************* sbit A0=P1^7; sbit A1=P1^6; sbit B0=P1^5; sbit B1=P1^4; sbit Abc=P1^0;//***脈衝寬度***************************mckd() //3ms@12MHz { unsigned int i=375; while(--i); } void delay(int x) { int i,j; for(i=0;i for(j=1;j<=600;j++); }//***轉速控制***************************zhuansu() { unsigned char s=2; //改變s的值可改變速度,值越大速度越慢 while(--s) mckd(); }//**********************************main() { while(1) { Abc=0; delay(10); A0=0; zhuansu(); A0=1; //A0 B0=0; zhuansu(); B0=1; //B0 A1=0; zhuansu(); A1=1; //A1 B1=0; zhuansu(); B1=1; //B1 Abc=1; delay(10); } }