单片机原理及应用实验南京林业大学电工电子实验中心时维铎实验八:温度控制题目:用LM35采集环境温度;STC12C5A60S2单片机内部ADC转换;键盘设置控制温度;串口输出显示。若实际温度大于设置温度时继电器断电,喇叭鸣叫报警,小于继电器通电,消警。要求:画出实验电路,编写实验程序。实验八:温度控制参考电路12MHZC230pC330pC110UFR110KVCCEX_LVD/P4.6/RST231XTAL119XTAL218RST/P4.79P3.7/RD17P3.6/WR16P3.2/INT012P3.3/INT113P3.4/T0/CLKOUT014P3.5/T1/CLKOUT115P1.0/ADC0/CLKOUT21P1.1/ADC12P1.2/ADC2/EC1/RXD23P1.3/ADC3/CCP0/TXD24P1.4/ADC4/CCP1/SS5P1.5/ADC5/MOSI6P1.6/ADC6/MISO7P1.7/ADC7/SCLK8P0.039P0.138P0.237P0.336P0.435P0.534P0.633P0.732P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728NA/P4.429ALE/P4.530P3.1/TXD11P3.0/RXD10VCC40GND20U180C51R21KR5100+5V9013+5VR31K设置/运行+1-1+5V+5V+5V+5VA1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8CLR9U374ALS164A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8CLR9U774ALS164R6100R105K+12VRw+5Vabfcgdecom76421109abcdefg*5DS1abfcgdecom76421109abcdefg*5DS58050U2R1210KR1310K实验八:温度控制参考程序主程序;----------有关A/D转换寄存器的定义---------P1ASFEQU09DH;P1模拟控制功能寄存器AUXR1EQU0A2H;辅助寄存器ADC_CONTREQU0BCH;A/D转换控制寄存器ADC_RESEQU0BDH;A/D转换结果寄存器,;为10位A/D转换结果的高8位。ADC_RESLEQU0BEH;A/D转换结果寄存器,低2位有效;为10位A/D转换结果的低2位。实验八:温度控制参考程序主程序ORG0000HLJMPMAIN;-------------------------ORG0100HMAIN:MOVSP,#5FHMOVSCON,#00H;定义串口工作方式0LCALLINIT_ADC;定义ADC特殊功能寄存器;---------------------实验八:温度控制参考程序主程序LOP1:MOVA,#1;选择1号通道LCALLGET_ADC_RES;调A/D转换子程序NOPLCALLESZH;调用16位二十转换子程序NOPLCALLDISP;调显示子程序NOPLCALLDELAY;调延时子程序NOPNOPLJMPLOP1实验八:温度控制参考程序主程序INIT_ADC:MOVAUXR1,#04H;10位A/D,ADC_RES存高2位MOVP1ASF,#0FFH;定义P1口全为A/D转换口MOVADC_RES,#0;转换结果寄存器清零MOVADC_RESL,#0;转换结果寄存器清零MOVADC_CONTR,#0A0H;A/D上电,选择360时钟周期LCALLDELAY;延时等待电路稳定RET实验八:温度控制参考程序主程序GET_ADC_RES:;A/D转换子程序ORLA,#0A8H;启动某通道A/D转换MOVADC_CONTR,ANOPNOPNOPNOPWAIT:MOVA,ADC_CONTR;判ADC_FLAG寄存器JNBACC.4,WAIT;等待转换结束ANLADC_CONTR,#0EFH;清ADC_FLAGMOV30H,ADC_RES;读最高2位数据MOV31H,ADC_RESL;读低8位数据RET实验八:温度控制参考程序主程序ESZH:NOP;二进制数30H31H内,十进制数字存40H-44H内RET实验八:温度控制参考程序显示子程序DISP:MOVDPTR,#TAB;取字形表地址MOVR0,#40H;显示的十进制数字存40H-44H内MOVR7,#5DIS1:MOVA,@R0;取显示数据MOVCA,@A+DPTR;取显示数据的字形MOVSBUF,A;串行输出JNBTI,$;状态查询CLRTI;清发送中断标志INCR0DJNZR7,DIS1RETTAB:DB0FCH,60H,0DAH;0-2(共阴)DB0F2H,66H,0B6H;3-5(abcdefgdp)DB0BEH,0E0H,0FEH;6-8DB0F6H;9-实验八:温度控制参考程序主程序DELAY:MOVR6,#50DELA1:MOVR7,#250DELA2:NOPDJNZR7,DELA2DJNZR6,DELA1RETNOP;======================END实验八:温度控制参考程序主程序实验八:温度控制参考程序主程序实验八:温度控制参考程序主程序实验八:温度控制参考程序主程序实验八:温度控制参考程序主程序