我这几天在弄F330里的PCA,330的PCA有三个模块,但共用一个定时计数器,我拿一个模块来测量直流电机的速度,另一个模块输出PWM波用来控制电机速度,想做做PID控制试验,但发现这两个功能好想不能同时共存,PCA中断处理流程如下,大家看看,我是哪没弄对,现象是要么只能测速,要么只能输出PWM波
;........PCA中断处理程序......................
PCA_ISR: PUSH ACC
PUSH PSW
JBC CCF0,CEX0_OK ;判断是否CEX0要求中断
PWM_OK: JBC CCF1,CEX1_OK ;判断是否CEX1要求中断
PCA_RETI:POP PSW
POP ACC
RETI
CEX0_OK: MOV PCA0CPH0,PWM_BUF ;输出PWM波
JMP PCA_RETI
CEX1_OK: MOV PCA0L,#00H
MOV PCA0H,#00H
MOV PCA_L,PCA0CPL1 ;提取电机转速
MOV PCA_H,PCA0CPH1
JMP PCA_RETI
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>