单片机温控软件设计(温控软件).ppt
《单片机温控软件设计(温控软件).ppt》由会员分享,可在线阅读,更多相关《单片机温控软件设计(温控软件).ppt(62页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 单片机应用系统的软件设计单片机应用系统的软件设计 通常单片机应用系统的系统软件由主程序、定时中通常单片机应用系统的系统软件由主程序、定时中 断服务程序和若干个子程序构成。根据系统各操作的断服务程序和若干个子程序构成。根据系统各操作的 性质,指定哪些操作由中断服务程序完成,哪些操作性质,指定哪些操作由中断服务程序完成,哪些操作 由主程序完成。由主程序完成。通常主程序完成显示及键盘处理,实现人机对话功通常主程序完成显示及键盘处理,实现人机对话功 能。其现场参数采样、控制输出等则由定时中断完能。其现场参数采样、控制输出等则由定时中断完 成。成。下面下面以以微电脑温度控制器为例微电脑温度控制器为例,
2、介绍,介绍单片机应用系单片机应用系 统的软件设计统的软件设计流程。流程。一、温度控制器技术要求:一、温度控制器技术要求:1 1、控温范围:、控温范围:0c 125c 2 2、控温精度:控温精度:1 1c 3 3、控温工艺曲线:控温工艺曲线:工艺分工艺分4 4步步第第1 1步步:全速升温全速升温第第2 2步步:速率升温速率升温第第3 3步步:保温保温第第4 4步步:全速降温全速降温二、二、软件设计的有关参数软件设计的有关参数 1、键盘及显示键盘及显示安排安排:命令命令键:键:输入输入(0AH)(0AH)、工作工作(0BH)(0BH)、确认确认(0CH)(0CH)继续继续(0DH)(0DH)、显示
3、显示(0EH)(0EH)、退出退出(0FH)(0FH)数字数字键:键:09 个个 显示管:显示管:8 个个 显示符:显示符:开机符:开机符:P G o o d 输入输入符:符:I n 工作工作符:符:BE 输入输入显示:显示:步号(步号(2)、时间()、时间(3)、温度()、温度(3)设定值设定值 工作工作显示:显示:步号(步号(2)、时间()、时间(3)、温度()、温度(3)显标显标0:实测值实测值 1:P L(2)、时间()、时间(3)、温度()、温度(3)设定值设定值2、采样周期、采样周期:考虑到现场温度变化缓慢考虑到现场温度变化缓慢,确定采用确定采用T0定时定时,定时时间定时时间 10
4、0ms,温度采样周期为温度采样周期为1秒秒,控温输出周期为控温输出周期为8秒秒.3、P1口的安排口的安排:P1.0:7279CS P1.4:加热加热 P1.1:7279CLK P1.5:冷却冷却 P1.2:7279DATA P1.6:升温灯升温灯 P1.3:报警报警灯灯 P1.7:保保温灯温灯 P3.2:降温灯降温灯 P3.3 结束结束灯灯4、I/O端口地址安排:端口地址安排:6264RAM:0000H1FFFH ADC0804:2000H 5、内存单元安排:、内存单元安排:标志位:标志位:00H 键标志键标志 09H 显示标志显示标志 01H 输入标志输入标志 0AH 结束标志结束标志 02
5、H 工作标志工作标志 0BH 退出标志退出标志 03H 数入标志数入标志 0CH 04H 修改标志修改标志 0DH 升温标志升温标志 05H 报警标志报警标志 0EH 降温标志降温标志 06H 半秒标志半秒标志 0FH 保温标志保温标志 07H 1秒标志秒标志 08H 8秒标志秒标志 显缓区:显缓区:40H-47H显示指针:显示指针:22H 计时计时单元:单元:24H(100ms)25H(0.5s)26H(1s)U U单元单元:35H 实时时钟实时时钟:31H (秒秒)32H(分分)工艺参数:工艺参数:50H-5FH工艺步号:工艺步号:23H采样值:采样值:60H65H实测值:实测值:38H3
6、AH 误差值:误差值:3BH3FH (ei-2,ei-1,ei )控制输出控制输出:36H(加热加热)37H(冷却冷却)堆栈区:堆栈区:68H7FH三、微电脑温度控制器三、微电脑温度控制器软件框图软件框图键键 扫扫入口:入口:0000H初始化初始化.P good显缓区显缓区显示显示有键按下否有键按下否键键数数【显针显针】修改显针修改显针显针限值显针限值输入符显区输入符显区建立数入标志建立数入标志建立输入标志建立输入标志建立显针建立显针工作符显区工作符显区建立数入标志建立数入标志建立工作标志建立工作标志建立显针建立显针键处理键处理 1 1、开机引导程序、开机引导程序允许数入否允许数入否散散转到转
7、到输输入或工入或工作程序作程序入口入口传送工传送工艺艺数键数键输入输入工作工作YNNY确认确认初始化初始化设置栈底设置栈底(SP)置置P口初值口初值I/O口初始化口初始化关输出关输出置置“0”工作工作单元及标志单元及标志退出退出转转0000H退出退出入口:入口:0200H01H步号单元、步号单元、建立显针、建立显针、参数显缓区参数显缓区显示显示有键按下否有键按下否键键数数【显针显针】修改显针修改显针显针限值显针限值保存本步工保存本步工艺参数艺参数建立显针建立显针工艺步号加工艺步号加1参数显缓区参数显缓区建立显针建立显针键处理键处理键键 扫扫 2 2、工艺输入程序、工艺输入程序建立结束建立结束标
8、志标志保存保存工艺工艺返回返回0000H数键数键确认确认继续继续YN退出退出取工艺取工艺.送步号初值送步号初值.设置设置初值初值.初始化初始化T0.开中断开中断显示处理、显示处理、灯处理、灯处理、更新显示更新显示(0.5S)有键按下否有键按下否键处理键处理键键 扫扫 3 3、工作主程序、工作主程序关中断返回关中断返回0000HYN退出退出显示处理显示处理按标志不同,按标志不同,将不同参数送将不同参数送至显缓区至显缓区报警处理报警处理入口:入口:0800H更换更换显示方式显示方式显示显示确认确认建立退出标志建立退出标志 4 4、中断服务程序、中断服务程序入口:入口:000BH保护现场保护现场(A
9、、B、DPH、DPL、PSW等等)选另一工作寄存器区、重新置定时初值选另一工作寄存器区、重新置定时初值步步时钟计数、建立时间标志、时钟计数、建立时间标志、温度采样温度采样(传送、滤波传送、滤波)计算差值计算差值按控制算法按控制算法计算输出参数计算输出参数控制输出控制输出步号加步号加1、取工艺、取工艺设置初值(步时钟、输出)设置初值(步时钟、输出)工艺结束建立结束标志关输出工艺结束建立结束标志关输出恢复现场恢复现场中断返回中断返回本本工艺步结束否工艺步结束否YN四、微电脑温度控制器四、微电脑温度控制器软件软件清单清单 1 1、开机引导程序开机引导程序:A A、MAIN-1:MAIN-1:ORG
10、0000H ORG 000BHORG 0000H ORG 000BH LJMP MAIN-1 LJMP IT-O LJMP MAIN-1 LJMP IT-O MAIN-1MAIN-1:MOV SP,#67HMOV SP,#67H MOV P1,#FDH MOV P1,#FDH ACALL INT-7279 ACALL INT-7279 MOV R7,#48H MOV R7,#48H (清工作单元)(清工作单元)MOV R0,#20HMOV R0,#20HM-0:CLR A M-0:CLR A MOV R0,AMOV R0,AINC R0INC R0DJNZ R7,M-0DJNZ R7,M-0A
11、CALL MOV-0 ACALL MOV-0 (开机符显缓区)开机符显缓区)AJMP MAIN-2AJMP MAIN-2 B B、MAIN_2:MAIN_2:MAIN-2:ACALL DIR MAIN-2:ACALL DIR ACALL KEY ACALL KEY CJNE A,#FFH,M-1 M-5:CJNE A CJNE A,#FFH,M-1 M-5:CJNE A,#0CH,M-6,#0CH,M-6 SJMP MAIN-2 ACALL MKEY-3 SJMP MAIN-2 ACALL MKEY-3 确认确认 M-1:CJNE A,#0AH,M-2 SJMP MAIN_2 M-1:CJNE
12、 A,#0AH,M-2 SJMP MAIN_2 M-2:JNC M-3 M-6:CJNE A,#0FH,M-7 M-2:JNC M-3 M-6:CJNE A,#0FH,M-7 ACALL SKEY ACALL SKEY 数数键键 AJMP 0000H AJMP 0000H 退出退出 SJMP MAIN-2 M-7:SJMP MAIN-2 SJMP MAIN-2 M-7:SJMP MAIN-2 M-3:CJNE A,#0AH,M-4 M-3:CJNE A,#0AH,M-4 ACALL MKEY-1 ACALL MKEY-1 输入输入 SJMP MAIN_2 SJMP MAIN_2 M-4:CJN
13、E A,#0BH,M-5 M-4:CJNE A,#0BH,M-5 ACALL MKEY-2 ACALL MKEY-2 工作工作 SJMP MAIN-2 SJMP MAIN-2 a.SKEYa.SKEY:(:(数键处理)数键处理)SKEY:JNB 03H,S-2SKEY:JNB 03H,S-2 MOV R0,22H MOV R0,22H MOV R0,A MOV R0,A INC 22H INC 22H MOV A,22H MOV A,22H CJNE A,#48H,S-1 CJNE A,#48H,S-1 S-1:JC S-2 S-1:JC S-2 MOV 22H,#46H MOV 22H,#4
14、6H S-2:RET S-2:RET b.MKEY-1(b.MKEY-1(输入键处理)输入键处理)MKEY-1MKEY-1:SETB 01HSETB 01H SETB 03H SETB 03H MOV 22H,#46H MOV 22H,#46H MOV DPTR,#TAB-1 MOV DPTR,#TAB-1 ACALL MOV-1 ACALL MOV-1 RET RET c.MKEY-2(c.MKEY-2(工作键处理)工作键处理)MKEY-1MKEY-1:SETB 02HSETB 02H SETB 03H SETB 03H MOV 22H,#46H MOV 22H,#46H MOV DPTR,
15、#TAB-2 MOV DPTR,#TAB-2 ACALL MOV-1 ACALL MOV-1 RET RET d.MKEY-3(d.MKEY-3(确认键处理)确认键处理)MKEY-3:JNB 01H,MK-0MKEY-3:JNB 01H,MK-0 LJMP SR-0 LJMP SR-0 MK-0:JNB 02H,MK-1 MK-0:JNB 02H,MK-1 LJMP GZ-0 LJMP GZ-0 MK-1:RET MK-1:RET 2 2、工艺输入程序:、工艺输入程序:A A、SR-0SR-0:SR-0 SR-0:MOVMOV 23H,#01H 23H,#01H MOV A,23H MOV A
16、,23H MOV R0,#41H MOV R0,#41H ACALL Z2-10-0 ACALL Z2-10-0 MOV A,52H MOV A,52H MOV R0,#44H MOV R0,#44H ACALL Z2-10-1 ACALL Z2-10-1 MOV A,53H MOV A,53H MOV R0,#47H MOV R0,#47H ACALL Z2-10-1 ACALL Z2-10-1 MOV 22H,#42H MOV 22H,#42H AJMP SR-1 AJMP SR-1 B B、SR-1SR-1:SR-1 SR-1:ACALL DIRACALL DIR ACALL KEY A
17、CALL KEY CJNE A,#FFH,S-1 S-5 CJNE A,#FFH,S-1 S-5:CJNE A,#0FH,SR-1 CJNE A,#0FH,SR-1 SJMP SR-1 ACALL SKEY-4 SJMP SR-1 ACALL SKEY-4 退出退出 S-1 S-1:CJNE A,#0AH,S-2 SJMP SR-1 CJNE A,#0AH,S-2 SJMP SR-1 S-2 S-2:JNC S-3 JNC S-3 ACALL SKEY-1 ACALL SKEY-1 数数键键 SJMP SR-1 SJMP SR-1 S-3 S-3:CJNE A,#0CH,S-4CJNE A,#
18、0CH,S-4 ACALL SKEY-2 ACALL SKEY-2 确认确认 SJMP SR-1 SJMP SR-1 S-4 S-4:CJNE A,#0DH,S-5CJNE A,#0DH,S-5 ACALL SKEY-3 ACALL SKEY-3 继续继续 SJMP SR-1 SJMP SR-1 a.SKEY-1:(a.SKEY-1:(数键处理)数键处理)SKEY-1:JNB 03H,S-2SKEY-1:JNB 03H,S-2 MOV R0,22H MOV R0,22H MOV R0,A MOV R0,A INC 22H INC 22H MOV A,22H MOV A,22H CJNE A,#
19、48H,S-1 CJNE A,#48H,S-1 S-1:JC S-2 S-1:JC S-2 MOV 22H,#42H MOV 22H,#42H S-2:RET S-2:RET b.SKEY-2(b.SKEY-2(确认键处理)确认键处理)SKEY-2:MOV A,23HSKEY-2:MOV A,23H ADD A,23H ADD A,23H ADD A,#50H ADD A,#50H MOV R1,A MOV R1,A MOV R0,#42H MOV R0,#42H ACALL Z10-2 ACALL Z10-2 MOV R1,A MOV R1,A INC R1 INC R1 MOV R0,#4
20、5H MOV R0,#45H ACALL Z10-2 ACALL Z10-2 MOV R1,A MOV R1,A MOV 22H,#42H MOV 22H,#42H RET RET c.SKEY-3(c.SKEY-3(继续继续键处理)键处理)SKEY-3:INC 23H ACALL Z2-10-1 SKEY-3:INC 23H ACALL Z2-10-1 MOV A,23H MOV 22H,#42H MOV A,23H MOV 22H,#42H MOV R0,#40H RET MOV R0,#40H RET ACALL Z2-10-0 ACALL Z2-10-0 MOV A,23H MOV A
21、,23H ADD A,23H ADD A,23H ADD A,#50H ADD A,#50H MOV R1,A MOV R1,A MOV A,R1 MOV A,R1 MOV R0,#42H MOV R0,#42H ACALL Z2-10-1 ACALL Z2-10-1 INC R1 INC R1 MOV A,R1 MOV A,R1 d.SKEY-4(d.SKEY-4(退出退出键处理)键处理)SKEY-4SKEY-4:INC 23H INC 23H MOV A,23H MOV A,23H ADD A,23H ADD A,23H ADD A,#50H ADD A,#50H MOV R1,A MOV
22、 R1,A MOV R1,#FFH MOV R1,#FFH (建立结束标志建立结束标志)LCALL MOV-2 LCALL MOV-2 (保存工艺)保存工艺)AJMP MAIN-1 AJMP MAIN-1 3 3、工作主工作主程序:程序:GZ-0GZ-0:LCALL MOV-3 LCALL MOV-3 (取工艺)取工艺)MOV 23H,#01H MOV 23H,#01H LCALL SBZ-0 LCALL SBZ-0 (设置升降保标志)设置升降保标志)LCALL SCZ-0 LCALL SCZ-0 (设置步工艺初值)设置步工艺初值)MOV TMOD,#01H MOV TMOD,#01H MOV
23、 TH0,#3CH MOV TH0,#3CH MOV TL0,#B0H MOV TL0,#B0H SETB TR0 SETB TR0 MOV IE,#82H MOV IE,#82H SETB 06H SETB 06H CLR P1.4 CLR P1.4 GZ-1GZ-1:JNB 06H,G2 JNB 06H,G2 CLR 06H CLR 06H LCALL DL-0 LCALL DL-0 (灯显示灯显示)JB 09H,G1JB 09H,G1 LCALL XS-0 LCALL XS-0 (实测值实测值-显缓区显缓区)SJMP G2 SJMP G2 G1 G1:LCALL XS-1 LCALL X
24、S-1 (理论值理论值-显缓区显缓区)G2 G2:LCALL DTR LCALL DTR (显示显示 )LCALL KEY LCALL KEY (键扫键扫 )CJNE A,#FFH,G3CJNE A,#FFH,G3SJMP G6SJMP G6 G3 G3:CJNE A,#0EH,G4 CJNE A,#0EH,G4 (显示键)显示键)CPL 09HCPL 09HSJMP G6SJMP G6 G4 G4:CJNE A,#0FH,G5 CJNE A,#0FH,G5 (退出退出键)键)SETB 0BHSETB 0BHSJMP G6SJMP G6 G5 G5:CJNE A,#0CH,G6 CJNE A,
25、#0CH,G6 (确认确认键)键)JNB 0BH,G6JNB 0BH,G6SETB 0AHSETB 0AH G6 G6:LCALL BJ-0 LCALL BJ-0 (报警处理)报警处理)SJMP GZ-1SJMP GZ-1 4、中断服务程序、中断服务程序 IT-0IT-0:PUSH APUSH A L3 L3:JNC IT-1JNC IT-1 PUSH B SJMP IT-3 PUSH B SJMP IT-3 PUSH DPH L4 PUSH DPH L4:JNB 0DH,IT-4JNB 0DH,IT-4 PUSH DPL PUSH DPL MOV A,3AH MOV A,3AH MOV PS
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 温控 软件设计 软件
限制150内