基于单片机的直流电动机转速控制系统设计 下载本文

MOV P1,#0FH ;设定P1在没有外部中断时发光的灯 ACALL DELAY MOV P1,#0F0H ACALL DELAY AJMP LOOP

CASE1: ;中断子程序 PUSH PSW ;将PSW存入堆栈 PUSH P1 ;将P1状态存入堆栈 MOV A,#00H ;清除P1显示值 MOV P1,A ACALL DELAY

POP P1 ;将PSW取回 POP PSW ;将P1值取回 RETI ;返回主程序

DELAY: MOV R5,#10 ;延时子程序 D1: MOV R6,#200 D2: MOV R7,#250 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET END

(4)根据流程图可写出如下增量型PID浮点运算程序: ORG 8000H

PIDINC: MOV R1, #DATA MOV R1, #COEFUR LCALL FSUB

MOV R1, #BIASE0

LCALL FSTR

MOV R0, #BIASE0 MOV R1, #BIASE1 LCALL FSUB

MOV R1, #MIDLE1 LCALL FSTR

MOV R0, #COEFKP LCALL FMUL

MOV R0, #MIDLE2 LCALL FSTR

MOV R0, #COEFKI MOV R1, #BIASE0 LCALL FMUL MOV R1, #BIASPP LCALL FADD

MOV R1, #MIDLE2 LCALL FSTR