系統(tǒng)的設(shè)計(jì)框架
5141421924597007774.jpg (260.89 KB, 下載次數(shù): 124)
下載附件
2017-4-14 03:55 上傳
L297、L298N與電機(jī)的電路設(shè)計(jì)
637540822249800331.jpg (434.58 KB, 下載次數(shù): 114)
下載附件
2017-4-14 03:55 上傳
系統(tǒng)的總電路設(shè)計(jì)此電路由一塊STC89C51,3塊L297、3塊L298N、3臺4相4拍步進(jìn)電機(jī)器以及相關(guān)的電路組成。利用單片機(jī)3個(gè)并行I/O口的部分引腳(P0.0~P0.6,P1.0.~P1.6,P2.0~P2.6)連接驅(qū)動(dòng)芯片,各個(gè)端口直接與驅(qū)動(dòng)芯片L297直接相連,L297與L298N共用一個(gè)+5V的電源,輸出+36V的步進(jìn)電機(jī)驅(qū)動(dòng)電壓;L298N的2、3、13、14四個(gè)輸出引腳直接與一個(gè)四相四拍的步進(jìn)電機(jī)相連。以同樣的方式,連接另外兩臺電機(jī)的控制電路。 系統(tǒng)的總電路設(shè)計(jì)圖
639229672110064270.jpg (446 KB, 下載次數(shù): 113)
下載附件
2017-4-14 03:55 上傳
424745739859163236.jpg (424.74 KB, 下載次數(shù): 123)
下載附件
2017-4-14 03:55 上傳
步進(jìn)電機(jī)轉(zhuǎn)速控制可由程序延時(shí)來完成,也可由定時(shí)器延時(shí)來完成,相應(yīng)的程序如下:
- PUSH A ;保護(hù)現(xiàn)場
- MOV R4,#N ;設(shè)置步長計(jì)數(shù)器
- CLR C ;轉(zhuǎn)向標(biāo)志為1,轉(zhuǎn)移
- ORL C,D5H
- JC ROTE
- MOV R0,#20H ;正轉(zhuǎn)控制字首址
- AJMP LOOP
- ROTE: MOV R0,27H ;反轉(zhuǎn)控制字首址
- LOOP: MOV A,@R0
- MOV P1,A ;輸出控制脈沖
- ACALL DLY ;調(diào)用延時(shí)程序
- INC R0 ;控制字存儲地址增1
- MOV A,#00H
- . ORL A,@R0 ;是結(jié)束標(biāo)志轉(zhuǎn)移
- JZ TPL LOOP1: DJNZ R4,LOOP ;步數(shù)不為0,轉(zhuǎn)移
- POP A
- RER
- TPL: MOV A,R0 ;恢復(fù)控制字首址
- CLR C
- SUBB A,#06H
- MOV R0,A
- AJMP LOOP1
- DLY: MOV R2,#M
- DLY1: MOV A,#M1
- LOOP: DEC A
- JNZ LOOP
- DJNZ R2,DLY1
- RET
- 7.4 變頻調(diào)速程序與相應(yīng)的流程圖
- 主程序:ORC 0000H
- SJMP START
- ORG 000BH
- LJMP INT0
- ORG 0030H
- START: MOV DPTR,addr16 ;T0初值地址指針
- MOV R3,1BH ;賦頻率階梯記數(shù)器值
- MOV R2,1AH ;賦階梯步長計(jì)數(shù)器值
- CLR C
- ORL C,73H
- JC ROTE
- MOV R0,#20H ;正轉(zhuǎn)控制字首址
- AJMP PH
- ROTE: MOV R0,#27H ;反轉(zhuǎn)控制字首址
- PH: MOV TMOD,#01H ;T0方式1定時(shí)
- MOV TL0,#00H ;置T0初值
- MOV TH0, #00H
- SETB TR0 ;啟動(dòng)T0
- SETB ET0 ;允許T0中斷
- LOOP: MOV A,R3 ;等待中斷
- JNZ LOOP
- CLR EA ;CUP關(guān)中斷
- SJMP [ DISCUZ_CODE_2 ]nbsp; ;結(jié)束
-
- 中斷服務(wù)程序:
- INT0: PUSH A ;保護(hù)現(xiàn)場
- MOV A,@R0
- MOV P1, A
- INC R0
- MOV A, #00H
- ORL A, @R0
- JZ TPL ;是結(jié)束標(biāo)志,轉(zhuǎn)
- RR: DEC R2 ;步長計(jì)數(shù)器減1
- MOV A, #00H
- ORL A, R2
- JZ THL ;階梯步長計(jì)數(shù)器為0,轉(zhuǎn)
- PRL: CLR C
- CLR C, 71H
-
- JNC ROTEL ;是降頻,轉(zhuǎn)移
- MOV A, #00H
- MOVC A, @A+DPTR
- MOV TL0,A ;升頻T0賦初值低8位
- MOV A, #01H
- MOVC A, @A+DPTR
- MOV TH0,A ;升頻T0賦初值高8位
- AJMP QQ
- ROTEL: MOV A, #80H
- MOVC A, @A+DPTR
- MOV TL0,A ;降頻T0賦初值低8位
- MOV A, #81H
- MOVC A, @A+DPTR
- MOV TH0,A ;降頻T0賦初值高8位
- QQ: POP A ;恢復(fù)現(xiàn)場
- RETI ;中斷返回
- THL: DJNZ R3,AT ;頻率階梯減1不為0,轉(zhuǎn)
- AJMP QQ
- AT: MOV R2,1AH ;階梯步長賦值
- INC DPTR
- INC DPTR ;TO初值指針更新
- AJMP PRL
- TPL: CLR C
- MOV A, R0
- SUBB A, #06H
- MOV R0, A
- AJMP RR
- END
復(fù)制代碼
|