
為了轉動步進電機,從PC并行口(25針D型連接器)得到合適的輸出位時序。并行口由25引腳組成,但此電路只用了LPT1的口378(hex)的4個數據引腳(2~5)和地引腳(25)。在圖1電路中只示出25個引腳的4個引腳,接地引腳25圖中未示出。順時針轉動所需輸出位順序是0001、0010、0100、1000。相應于邏輯0和邏輯1的電壓電平不足以驅動這樣步進電機,因此需要放大。用運放(741)實現放大,運放配置為非倒相模式,提供增益為4。在電路中連接運放的電源(VCC=+12V,VEE=-12V)未標出。達林頓晶體管陣列IC ULN2074B用于電流放大。

IC引腳4,5,12,13連接散熱器和地。來自該IC的電壓脈沖用于驅動步進電機??刂撇竭M電機的兩個C語言程序(contin.c,handcrl.c見程序清單)第1個程序(contin.c)用于電機需要連續運轉時,第2個程序(handcrl.c)用于1步1步地移動電機。在第1個程序中電機可運轉在用戶所選速度0.3~8.0rpm范圍內。電機運轉方向(順時針/反時針)也是由用戶選擇,在程序運行提示時按C/A鍵即可選擇電機運轉方向。程序中的變量‘Calib=18750’表示定標因數,用于定標步進電機的速度。定標因數隨PC而異,在用程序前需要確定此定標因數。在handcrl.c程序中向上箭頭和向下箭頭按鍵分別用于反時針或順時針運轉電機,按一次鍵電機移動1步?!?