基于单片机的电加热炉温度控制系统的设计 第8页
系统控制程序采用两次中断嵌套方式来设计,首先使T0计数器能产生与秒钟定时中断,作为本系统的采样周期,在中断服务程序中启动A/D读入采样数据,进行数据滤波、上下线报警处理、PID计算,然后输出控制脉冲信号,脉冲的宽度由T1计数器溢出中断决定。在等待T1中断时,将本次采样数值转换成对应的温度值放入显示缓冲区,然后用显示子程序,从T1中断返回后,再从T0中断返回主程序并继续显示本次采样温度,等待下次T0中断。
主程序应包括
图 5.1主程序流程图
DISM1 DATA 79H
DISM2 DATA 7AH
DISM3 DATA 7BH
DISM4 DATA 7CH
DISM5 DATA 7DH
CLR 5EH ; 清本次越限标志
CLR 5FH ; 清上次越限标志
CLR A ;清累加器A
MOV 2FH, A
MOV 30H, A
MOV 3BH, A
MOV 3CH, A ;清暂存单元
MOV 3DH, A
MOV 3EH, A
MOV 44H, A
MOV DISM0, A ;
MOV DISM1, A ;
MOV DISM2, A ;
MOV DISM3, A ;清显示缓冲区
MOV TMOD, #56H ; 设T0为记数方式2,T1为记数方式1
MOV TL0, #06H ;
MOV TH0, #06H ;T0赋初值
CLR PT0 ;令T0为底中断优先级
SETB TR0 ;启动T0工作
SETB ET0 ;允许T0中断
SETB EA ;开CPU中断
LOOP : ACALL DISPLY ;调用显示程序
ACALL SCAN ;调用扫描程序
AJMP LOOP ;等待中断
T0中断服务程序是温度控制系统的主体程序,用于启动A/D转换,读入采样数据,数字滤波,越限温度报警和越限处理,PID计算和输出可控硅的同步触发脉冲等。P1.3引脚输出的该同步触发脉冲宽度由T1计数器的溢出中断控制,
在T0中断服务程序中,还需要用到一系列子程序。例如:温度采样值的子程序,数字滤波子程序,越限处理子程序,PID计算程序,标度转换程序和温度显示程序。在PID计算程序中,也需要双字节加法子程序,双字节求补子程序和双字节带符号数乘法子程序等。 若图片无法显示请联系QQ752018766,基于单片机的电加热炉温度控制系统的设计 第8页系统,转发请注明源于www.youerw.com
如下图所示
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>