📄 svgen.s
字号:
;*******************************************************************
; C-Version of code
;
; if(PIParmVelocity.qOut > 0)
; {
; PWMCON1bits.PEN1H = 0; //PWMxH引脚使能为PWM输出
; Nop();
; PWMCON1bits.PEN1L = 1;
;
; }
; else if(PIParmVelocity.qOut < 0)
; {
; PIParmVelocity.qOut = -PIParmVelocity.qOut;
;
; PWMCON1bits.PEN1L = 0;
; Nop();
; PWMCON1bits.PEN1H = 1;
; }
;
; PDC1 = (((long)PIParmVelocity.qOut * (long)PTPER * 2)>>15);
;*******************************************************************
.include "general.inc"
.include "PI.inc"
.include "SVGen.inc"
; Register usage
.equ WorkW, w1 ;
.equ Vr1W, w4 ;
.equ dPWM1, PDC1
;=================== CODE =====================
.section .text
.global _CalcTimes
.global CalcTimes
_CalcTimes:
CalcTimes:
mov.w _PIParmVelocity+PI_qOut,Vr1W
cp0 Vr1W
bra le,jCalcTime10 ;Vr1W<=0
;;PWMCON1bits.PEN1H = 0;
bclr.b _PWMCON1,#4
;;PWMCON1bits.PEN1L = 1;
bset.b _PWMCON1,#0
jCalcTime10:
cp0 Vr1W
bra ge, jCalcTime15 ;Vr1W>=0
neg.w Vr1W,w0
;;PWMCON1bits.PEN1L = 0;
bclr.b _PWMCON1,#0
;;PWMCON1bits.PEN1H = 1;
bset.b _PWMCON1,#4
jCalcTime15:
return
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -