2022年微型计算机控制技术第9章习题答案 .pdf
9-1 设计一个智能温度检测仪,要求具有检测、显示、键盘、通信功能。一台智能温度检测仪 ,自动控制一个温室的温度要求如下: 要求温室温度为三档,第一档为室温 ,第二档为400C,第三档为500C,要求温度控制误差2C 温度检测程序 :温度检测程序的功能是连续进行4 次 A/D 转换求取转换结果的平均值 ,存入 50H 单元. 68K +12V 12V f +5V 6MHZC2C1=30pf 10f +5V 10K 74LS04 1 74LS02 控制 3#炉控制 2#炉75452炉100 0.01 f 330330 3+5V 5K3 1111 12 10 +5V 2 6 + 3 2 4 5 14 13 1 3 ALE P0 TXD WR RD RXD 89C51 RST XTAK2 XTAL1 G Q0 74LS373 D0D7 Q1 D0D7 VCC VR+ ALE START OE EOC IN0 A B C 8255A a CS PB7 A0 PB0 A1 PA0 D0D7 WR PA0 RD 2 3 + 5 6 118 7 4 C1+ VCC V+ C1- V- C2+ C2- T1IN T1out R1out R1IN C 机RXD TXD +5V 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 9 页温度检测程序清单 : WIJC:MOV 50H,#00H MOV B,#00H MOV R6,#04H W:MOVX R0,A NOP NOP JNB P3.2,$ MOVX A,R0 ADD A,50H MOV 50H,A JNC W1 INC B W1: CJNZ R6,W CLR C XCH A,B RRC A XCH A,B RRC A CLR C XCH A,B 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 9 页RRC A XCH A,B RRC A MOV 50H,A RET 标度变换程序:BDBH:MOV A,50H MOV B,#04H DIV AB MOV B,#0AH DIV AB MOV 30H,A MOV 31H,B RET 显示程序:MOV R0,#00H MOV R1,#30H MOV DPTR,#TAB LP:MOV A,R1 MOVC A,A+DPTR 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 9 页MOVX R0,A INC R0 INC R1 CJNE R1,#32H,LP RET TAB:DB 0C0H ,0F9H, 0A4H DB 0B0H, 99H, 92H DB 82H, 0F8H, 80H DB 90H DSQ0:MOV TH0,#02H MOV TL0,#18H DJNZ R7,EXIT MOV R7,#0E7H ACALL WBJC ACALL BDBH ACALL DISP ACALL CONT EXIT:RET 温度控制程序清单 : CONT: MOV A,50H CLR C 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 9 页SUBB A,51H JC H0 SUBB A,#04H JNC H1 RET H1: JNB P1.0,H2 CLR RET H2: JNB P1.1,H3 RET RET H0: CPL A INC A CJNE A,#04H,H5 H5: JNC H6 RET H6: JB P1.2 ,H7 RET H7:JB P1.1, H8 SETB P1.1 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 9 页RET RET KEY: JB P1.7, L1 LCALL YS20MS JB P1.7, $ MOV 51H,#50H L2: JB P1.6, L3 LCALL YS20MS JB P1.6, L3 JNB P1.6, $ MOV 51H,#0AH L3: JB P1.5, L4 LCALL YS20MS JNB P1.5, L4 JNB P1.5, $ MOV 51H, #0C8H L4:RET 主程序:ORG 0000H AJMP WAIN ORG 000BH 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 9 页AJMP DSQ0 ORG 0023H AJMP TXID ORG 0030H MAIN :MOV SP,#60H MOV P1,#0F0H MOV R0,#03H MOV A,#80H MOV R0,A SETB P2.6 MOV TMOD,#21H MOV TH0,#02H MOV TH1,#18H SETB ET0 MOV TH1,#0FDH MOV TL1,#0FDH ANL PCON,#7FH MOV SCON,#50H CLR ET1 SETB PS CLR PT0 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 9 页MOV R7,#0E7H MOV 51H,#50H SETB TR1 SETB TR0 SETB ES SETB EA LOOP:LCALL KEY LJMP LOOP 通信程序 : 串口和微机通信:微机始终是主动的,当单片机接收到一个数据后来判断,如果接收到是 01H,就把单片机的检测值发送给微机,如果接收到是 02H,就把从微机接收到的给定值,送给单片机的给定单元51H。TXID:CLR ES JBC RI COMM SETB ES RETI COMM:MOV A,SBUF CJNE A,#01H,RECEIVE CLR TI MIV A,50H MOV SBUF ,A JNB TI,$ 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 9 页CLR TI SETB ES RETI RECEIVE:CJNE A,#02H,ERROR CLR RI MOV A,SBUF MOV 51H,A ERROR: RETI9-4 设计一台自动打包机。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 9 页