- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
电阻炉控制系统程序程序
主程序:
程序清单为:
ORG 0100H
AJMP MAIN
0030H MAIN:DISM0 DATA 7AH
DISM1 DATA 7BH
DISM2 DATA 7CH
DISM3 DATA 7DH 显示缓冲区
MOV SP, #5DH; 送盏顶地址
MOV 31H,#URH
MOV 32H,#URL; 温度给定值
MOV 33H,#KPH
MOV 34H,#KPL; xiteI赋值
MOV 35H,#K(I)H
MOV 36H,#K(I)L; xiteP赋值
MOV 37H,#K(D)H
MOV 38H,#K(D)L; xiteD赋值
MOV 39H, #KH;
MOV 3AH, #KL;
MOV 3BH, #W1H;
MOV 3CH, #W1L;
MOV 3DH, #W2H;
MOV 3EH, #W2L;
MOV 3FH, #W3H;
MOV 40H, #W3L;
CLR 5EH ;
CLR 5FH ; 清越限标志
MOV 62H,#umax; 温度最大给定值
MOV 63H,#umin; 温度最小给定值
CLR A ; 累加器A清零
MOV 2FH,A ;
MOV 30H,A ; 清暂存单元
MOV DISM0,A ;
MOV DISM1,A ;
MOV DISM2,A ;
MOV DISM3,A ; 清显示缓冲区
MOV TMOD,#56H ; T0计数方式1
MOV TH0,#3CH ;
MOV TL0,#B0H ; 计200个过零同步触发脉冲
CLR PT0 ; 令T0为低中断优先级
SETB TR0 ; 启动T0
SETB ET0 ; 允许T0中断
SETB EA ; 开中断
LOOP: ACALL DISPLY ; 调用显示器子程序
ACALL SCAN ; 调用扫描程序
AJMP LOOP ; 等待中断
T0中断服务程序程序清单为:
ORG 000BH
AJMP CT0
CT0:PUSH ACC ;
PUSH DPL ;
PUSH DPH ;保护现场
SETB D5H ;置标志位
ACALL SAMP ;调用采样子程序
ACALL FILTER ;调用数字滤波程序
CJNE A , 42H ,TPL ;若Ui(k)≠Umax跳到TPL
WL:MOV C , 5EH ;
MOV 5FH , C ;(5EH)送5FH
CLR 5EH ;清越限标志5EH
ACALL UPL ;跳到上限处理程序
POP DPH ;
POP DPL ;
POP ACC ;恢复现场
RET1 ;中断返回
TPL:JNC TPL1 ;若Ui(k)>Umax则TPL1
CLR 5FH ;清上次越限标志
CJNE A ,43H , MTPL ;若Ui(k)≠Umin则TPL1
HAT:SETB P1.1 ;若温度不越限令绿灯亮
ACALL NERO ;调用算法子程序
MOV A ,2FH ;本次计算值送A
ACALL PWM
ACALL TRAST ;调用标度转换程序
LOOP:ACALL DISPLY ;显示温度
POP DPH ;
POP DPL ;
POP ACC ;恢复现场
RET1 ;中断返回
MTDL:JNC HAT
文档评论(0)