2、主要程序模块清单 主程序: ORG 0000H AJMP MAIN ORG 000BH AJMP TOINT ORG 0030H MAIN: MOV SP, # 60H MOVP1,#0FFH;关电炉,开显示 MOV SCON,#00H;设置串行口工作 方式0,发送 MOV TMOD,#01H;定时器初始化 MOV TH0,#3CH;50ms定时初值 十一五国家级规为教材(高职高专) 高等教育出版社 HIGHER EDUCATION PRESS
2、主要程序模块清单 主程序: ORG 0000H AJMP MAIN ORG 000BH AJMP T0INT ORG 0030H MAIN: MOV SP,#60H MOV P1,#0FFH;关电炉,开显示 MOV SCON,#00H ;设置串行口工作 ;方式0,发送 MOV TMOD,#01H ;定时器初始化 MOV TH0,#3CH ;50ms定时初值
MOV TLO, 0B0H MOvR6,#14H;1s定时用(50ms20次) MOV5DH,#00H;显示缓冲区清零 MOV 5EH, 00H MOV 5FH,00H ACALL DISP SETB ETO SETB EA SETB TRO LM0: ACALL KEYSCAN;调用键盘扫描子程序(略) 用于设定温度值 AJMP LMO 十一五国家级规为教材(高职高专) 高等教育出版社 HIGHER EDUCATION PRESS
MOV TL0,#0B0H MOV R6,#14H ;1s定时用(50ms20次) MOV 5DH,#00H;显示缓冲区清零 MOV 5EH,#00H MOV 5FH,#00H ACALL DISP SETB ET0 SETB EA SETB TR0 LM0:ACALL KEYSCAN;调用键盘扫描子程序(略), ;用于设定温度值 AJMP LM0
温度检测开始 温度控制开始 将结果单元清0 取实测值 转换次数送R7 设定值一实测位 启动AD转换 温差>0? 关A、B、C加热 转换结束否? 温差>10? 开A、B、C加热 累加转换结果 N 4次转换结束否? 温差>5? 开A助加热 求平均值 开A加热 存结果 返回 返回 图10-7温度控制程序流程图 106温度检测程序流程图 十一五”国家级规为教材(高职高专) 高等教育出版社 HIGHER EDUCATION PRESS
图10—6 温度检测程序流程图 图10—7 温度控制程序流程图 温度检测开始 转换结束否? 将结果单元清0 转换次数送R7 启动A/D转换 累加转换结果 存结果 4次转换结束否? 返回 Y N Y N 求平均值
定时中断服务程序: TOINT: MOV THO, 3CH MOV TLO, 0BOH DJNZ R6,T0END;1s未到,中断返回 CLR TRO CLR EA MOVR6,#14H;恢复R6初值 ACALL TADC;调用温度检测子程序 ACALL XSCL;调用标度转换子程序 ACALL D|sP;调用显示子程序 ACALL TCONT;调用温度控制子程序 SETB TRO SETB EA TOEND: RETI 十一五”国家级规为教材(高职高专) 高等教育出版社 HIGHER EDUCATION PRESS
定时中断服务程序: T0INT: MOV TH0,#3CH MOV TL0,#0B0H DJNZ R6,T0END;1s未到,中断返回 CLR TR0 CLR EA MOV R6,#14H ;恢复R6初值 ACALL TADC ;调用温度检测子程序 ACALL XSCL ;调用标度转换子程序 ACALL DISP ;调用显示子程序 ACALL TCONT;调用温度控制子程序 SETB TR0 SETB EA T0END: RETI
温度检测子程序: TADC MOV50H,#00H;清存检测值单元 MOV B, # 00H MOVR7,#04H;设置转换次数 MOV DPTR,#7FFFH;送ADc0809地址 TTO MoX@DPTR,A;启动AD转换 JBP3.2,$;等待转换结束 MoXA,@DPTR;读AD转换数据 ADD A, 50H MOV 50H, A UNC TT1;是否超出8位二进制范围 INC 十一五国家级规为教材(高职高专) 高等教育出版社 HIGHER EDUCATION PRESS
温度检测子程序: TADC: MOV 50H,#00H ;清存检测值单元 MOV B,#00H MOV R7,#04H ;设置转换次数 MOV DPTR,#7FFFH;送ADC0809地址 TT0: MOVX @DPTR,A;启动A/D转换 JB P3.2,$ ;等待转换结束 MOVX A,@DPTR;读A/D转换数据 ADD A,50H MOV 50H,A JNC TT1;是否超出8位二进制范围 INC B