已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
直流電動(dòng)機(jī)雙極性可逆雙閉環(huán)PWM控制程序.equ _30F6010A, 1.include p30f6010A.inc.equ SPEED_SET, 750.equ _Tpwm, 1476.equ _Deadtime, 59.equ _timerate, 8.equ _volrate, 4.equ CURR_B0, 32.equ CURR_B1 , 1.equ SPEED_B0, 20.equ SPEED_B1, 1.equ CURR_RATE, 0x0014.equ SPEED_RATE, 0x04E8.equ CURR_MAX, 0x5000.equ CURR_MIN, 0xB000.equ VOLT_MAX, 0x1800.equ VOLT_MIN, 0xE800 .equ SPEED_TRANS, 0x01AD.equ SPEED_SAMPLE_OFFSET, 0x01FF.global _reset.global _PWMInterrupt.global _ADCInterrupt.global _FLTAInterrupt.global _DefaultInterrupt .section .nbss, bss, near_curr :.space 6 _speed:.space 6_volt:.space 2_sign:.space 2_sysTimer:.space 2_currTimer:.space 2_speedTimer: .space 2_adcSample:.space 4_speedPI:.space 4_currLim:.space 4_currPI:.space 4_voltLim:.space 4.text_reset:mov #_SP_init, W15 mov #_SPLIM_init, W0 mov W0, SPLIMnop RCALL _wreg_initRCALL _sys_initRCALL _var_initmov #SPEED_SET, W0 mov #SPEED_TRANS, W1 mul.SU W0, W1, W2 mov.w W2, _speedcp0 W0 bra GE, _clockwise setm _sign _clockwise:mov #_volrate, W1 mul.SU W0,W1,W0mov.w W0, _voltRCALL _setupnop_Done:nopnopnop bra _Done _PWMInterrupt:push.s push.d W4mov.w _speedTimer, W0 cp _sysTimerbra LT, _next1mov.w _adcSample+2,W0 mov #SPEED_SAMPLE_OFFSET,W2sub W0,W2,W4mov #SPEED_RATE, W5mpy W4*W5,Asac A,#-8,W0mov.w W0, _speed+2RCALL _SpeedCtrl mov _sysTimer, W1 add W1, #8, W1 mov W1, _speedTimer _next1:mov.w _currTimer, W0 cp _sysTimerbra LT, _next2mov.w _adcSample,W4 mov #CURR_RATE, W5mul.SU W4, W5, W0 mov.w W0, _curr+2RCALL _CurrCtrl RCALL _DutyCircle mov W0, PDC1mov W0, PDC2mov _sysTimer, W1add W1, #2, W1 mov W1, _currTimer _next2:inc.w _sysTimer pwm_end:bclr IFS2,#PWMIFpop.d W4pop.sRETFIE_ADCInterrupt:push W0mov ADCBUF0, W0 btst _sign, #0neg W0, W0mov.w W0, _adcSamplemov ADCBUF1, W0 mov.w W0, _adcSample+2adc_end:bclr IFS0,#ADIFpop W0RETFIE_FLTAInterrupt:bclr PTCON,#15setm PORTDbclr TRISE,#8bclr TRISA,#9bset PORTA,#9_Error:bra _ErrorRETFIE_DefaultInterrupt:bclr PTCON,#15 setm PORTDbclr TRISE,#8bclr TRISA,#10bset PORTA,#10_Error1:bra _Error1RETFIE_sys_init:bset CORCON,#0bclr CORCON,#SATDWbset INTCON1, #NSTDISmov #0x4000,W0mov W0,IPC2mov #0x5000,W0mov W0,IPC9mov #0x6000,W0mov W0,IPC10bclr IFS2,#PWMIFbclr IFS0,#ADIFbclr IFS2,#FLTAIFbset IEC0,#ADIEbset IEC2,#PWMIEbset IEC2,#FLTAIEbclr TRISD, #11mov #0x0300,W0 mov W0,TRISEmov #0x03FF,W0mov W0,PORTEmov #0x008f,W0 mov W0,FLTACONmov #0x0033, W0mov W0,PWMCON1mov #0x0F0F,W0mov W0,OVDCONmov #0x0001,W0mov W0,SEVTCMP mov #_Tpwm,W0mov W0,PTPERmov #_Deadtime ,W0mov W0,DTCON1clr W0mov W0,PWMCON2mov W0,DTCON2clr W0mov W0, PDC1mov W0, PDC2mov W0,FLTBCONmov #0x0002,W0mov W0,PTCONmov #0x0404,W0 mov W0,ADCON2 mov #0x0003,W0mov W0,ADCON3 clr ADCHS clr ADPCFG clr ADCSSL bset ADCSSL,#7 bset ADCSSL,#12 mov #0x8166,W0 mov W0,ADCON1 RETURN_wreg_init: CLR W0 MOV W0, W14 REPEAT #12 MOV W0, +W14 CLR W14RETURN_var_init:mov #SPEED_B0, W1mov.w W1, _speedPImov #SPEED_B1, W1mov.w W1, _speedPI+2mov #CURR_MAX, W1mov.w W1, _currLimmov #CURR_MIN, W1mov.w W1, _currLim+2mov #CURR_B0, W1mov.w W1, _currPImov #CURR_B1, W1mov.w W1, _currPI+2mov #VOLT_MAX, W1mov.w W1, _voltLimmov #VOLT_MIN, W1mov.w W1, _voltLim+2clr.w _speed+4 clr.w _curr clr.w _curr+4 clr.w _sign clr.w _sysTimer clr.w _currTimer clr.w _speedTimer clr.w _voltRETURN_setup:clr PORTDbset PTCON, #PTENRETURN_SpeedCtrl:mov.w _speed, W4mov.w _speed+2, W2sub W4, W2, W4mov.w _speedPI, W5mpy W4*W5, Amov.w _speed+4, W2sub W4, W2, W4mov.w W4, _speed+4mov.w _speedPI+2, W5mpy W4*W5, Badd Asac A,#-4,W0mov.w _curr, W2 add W2, W0, W0mov.w _currLim, W2 cpsgt W0, W2bra _LowLim1mov W2, W0bra _SpeedCtrl_end_LowLim1:mov.w _currLim+2, W2 cpsgt W0, W2mov W0, W2_SpeedCtrl_end:mov.w W0, _currRETURN_CurrCtrl:mov.w _curr, W4mov.w _curr+2, W2sub W4, W2, W4mov.w _currPI, W5mpy W4*W5, Amov.w _curr+4, W2sub W4, W2, W4mov.w W4, _curr+4mov.w _currPI+2, W5mpy W4*W5, Badd Asac A,W0mov _volt, W2 add W2, W0, W0mov.w _voltLim, W2 cpsgt W0, W2bra _LowLimmov W0, W2bra _CurrCtrl_end_LowLim:mov.w _voltLim+2, W2 cpsgt W0, W2mov W2, W0_CurrCtrl_end:mov.w W0, _volt R
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度民宿客棧資產(chǎn)租賃管理合同樣本4篇
- 2025年裝修工程環(huán)境保護(hù)責(zé)任書2篇
- 通訊錄系統(tǒng)c課程設(shè)計(jì)
- 2025年智能穿戴設(shè)備銷售與分銷合同范本
- 魔t的設(shè)計(jì)課程設(shè)計(jì)
- 2025年鐵路貨物運(yùn)輸操作規(guī)范合同6篇
- 二零二五年度面條產(chǎn)品綠色包裝研發(fā)與應(yīng)用合同4篇
- 二零二五年美容院美容院美容院員工績效考核及薪酬合同4篇
- 2025年度個(gè)人房屋裝修貸款擔(dān)保合同范本12篇
- 霧化噴頭課程設(shè)計(jì)
- PEP小學(xué)六年級(jí)英語上冊選詞填空專題訓(xùn)練
- 古建筑修繕項(xiàng)目施工規(guī)程(試行)
- GA 844-2018防砸透明材料
- 化學(xué)元素周期表記憶與讀音 元素周期表口訣順口溜
- 非人力資源經(jīng)理的人力資源管理培訓(xùn)(新版)課件
- MSDS物質(zhì)安全技術(shù)資料-201膠水
- 鉬氧化物還原過程中的物相轉(zhuǎn)變規(guī)律及其動(dòng)力學(xué)機(jī)理研究
- (完整word)2019注冊消防工程師繼續(xù)教育三科試習(xí)題及答案
- 《調(diào)試件現(xiàn)場管理制度》
- 社區(qū)治理現(xiàn)代化課件
- 代持房屋協(xié)議書
評(píng)論
0/150
提交評(píng)論