[問題] 8051控制步進馬達

看板ASM (組合語言)作者 (Lewis)時間15年前 (2009/10/06 20:45), 編輯推噓5(508)
留言13則, 2人參與, 最新討論串1/1
最近寫一個程式來控制步進馬達, 我使用Keil uVision3來撰寫程式, 不過訊號送過去馬達卻沒反應 想請板上高手解惑,感恩! 驅動器手冊 http://www.motiontech.com.au/assets/pdf/IMS500.pdf 程式碼 /******************************************************** #include <AT89X51.h> // 將硬體宣告AT89X51.H 包含進來 unsigned char i; void delay_1m(unsigned int dly); //宣告delay_1m()函數 void main() { while(1) { P1 = 0xF2; delay_1m(1); P1 = 0xF3; delay_1m(1); } } /*************************************************************************** 副程式 : delay_1m 輸入引數 : 無號16位元整數unsigned int dly 說明 : 此副程式,引數dly為delay的長短控制 : 1 dly = 1msec ****************************************************************************/ void delay_1m(unsigned int dly) { int count; // 宣告count為一個整數變數(大小為16 bits) // 當count=110, // 執行while(count>0) count--; 約為1mS(石英晶體=11.0592MHz) while(dly != 0) { count=11; while(count>0) count--; dly--; } } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.13.136.214 WolfLord:你的IO輸出不對 不知道是哪邊的IO接錯了呢? 10/06 21:32 sorkayi:輸出角是哪一隻 有換別的晶片看看嗎 你好,我用port1輸出。 10/07 10:57

10/07 22:51, , 1F
1.先確認硬體連接是否正確(參考datasheet 7.&8. )
10/07 22:51, 1F
確認過接腳無誤,7的部分controller的+5v是指High的訊號還是外接5v?

10/07 22:53, , 2F
2.依照驅動時序圖撰寫程式(參考1.&5.&6.)
10/07 22:53, 2F
這方面我按照說明書打,不過不知道對不對。

10/07 22:53, , 3F
3.驗證驅動波形是否正確(接示波器看是否跟時序圖一致)
10/07 22:53, 3F

10/07 22:55, , 4F
還有~有接DRIVER跟自己用MCU+電路設計的程式是不同的~
10/07 22:55, 4F
※ 編輯: npualien 來自: 163.13.136.214 (10/09 10:34) ※ 編輯: npualien 來自: 163.13.136.214 (10/09 10:36)

10/09 12:56, , 5F
用PORT 1 的話 那看看是不是你的腳錯了 寫 0xff 0x00 try
10/09 12:56, 5F
目前我接訊號到驅動器的光耦合器後都正常,用示波器量過了,不過馬達還是沒動作 我的CW-為5ms的方波,CW+為H(高電位),CCW+和CCW-為H,欲使正轉,這樣訊號和電路 有錯嗎?

10/09 12:56, , 6F
看看 8051 有沒有壞了 上次我就燒壞幾個了
10/09 12:56, 6F
※ 編輯: npualien 來自: 163.13.136.214 (10/09 16:08)

10/10 14:37, , 7F
電路有無接錯 提升電阻 馬達驅動要幾伏特
10/10 14:37, 7F
基本上馬達有自己的一套驅動器(獨立電源和控制晶片),只要送正確的訊號就可以觸發他 目前我試出在CO+和CO-送L的訊號,馬達會鎖死,不過正反轉還是不行。 ※ 編輯: npualien 來自: 163.13.136.214 (10/10 15:21) ※ 編輯: npualien 來自: 163.13.136.214 (10/10 15:22)

10/11 01:02, , 8F
妳的訊號頻率是不是高於驅動器+馬達的響應頻率了~
10/11 01:02, 8F

10/11 01:03, , 9F
訊號模式除了1 0 以外還有頻率問題喔~不知道你有注意ꠠ
10/11 01:03, 9F

10/11 01:05, , 10F
在5.裡面~Ta Tb Tc Td 都要符合標準才行~
10/11 01:05, 10F

10/11 01:06, , 11F
BTW~示波器用好一點~不然光那誤差會搞死人的(親身經歷)
10/11 01:06, 11F

10/12 16:47, , 12F
你在CW+跟CCW+的腳位連接到+5V,將CW-接在控制正轉的腳
10/12 16:47, 12F

10/12 16:48, , 13F
位,同理將CCW-接在控制反轉的pin上~這樣試試看~
10/12 16:48, 13F
前幾天發現一個很致命的問題,我把+5V用PORT來輸出,將它改到迴路上的+5V就可以動了。 ※ 編輯: npualien 來自: 163.13.136.214 (10/21 11:17)
文章代碼(AID): #1AoplqBw (ASM)
文章代碼(AID): #1AoplqBw (ASM)