资源描述:
《多点温度采集系统的设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《计算机控制技术》专题实习任务书一、实习题目:多点温度采集系统二、任务要求:1)设计数字多点温度采集系统结构及其系统电路原理图2)选择仿真控制对象,(Proteus仿真软件中的电机),根据采集温度与设定温度编程实现报警及开关电机控制。3)用仿真软件调试系统,观察总结控制效果。完成专题实习报告。二、验收标准:1)系统电路原理图2)仿真结果:1模拟量输入通道(对Proteus仿真软件中的热电偶进行温度测量并把结果送入单片机,显示实时温度)2单片机编程实现报警及开关电机控制3电机控制速度可变三、实习报告要求:1
2、)统一的封面(打印)2)数字多点温度采集系统结构及其系统电路原理图3)模拟量输入通道(单片机电路及其程序)4)控制量输出通道(单片机电路及其程序)5)仿真结果分析6)小结。程序框图:完整单片机C语言程序:#include#include#include#defineucharunsignedchar#defineuintunsignedintsbitd0=P2^2;sbitd1=P3^0;sbitd2=P3^1;sbitd3=P3^2;sbitP2_
3、0=P2^0;sbitP2_1=P2^1;sbithighset=P2^3;sbitlowset=P3^4;sbitset=P3^3;sbitSCK=P3^6;sbitCS=P3^7;sbitena=P3^5;bitt=0;floatwendu[4];ucharxun=0;intshi,ge,xiao;floatshezhi[4]={49.22,58.32,62.43,74.54};ucharcodetab_1[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x
4、80,0x90};ucharcodetab_2[4]={0x1f,0x2f,0x4f,0x8f};ucharcodedb[8]={0x01,0x02,0x04,0x08,0x80,0x40,0x20,0x10};ucharcodetab_3[10]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};floatRe_Convert(uintz){uchari;unsignedlongTemp_2;Temp_2=0;CS=1;SCK=0;_nop_();_
5、nop_();CS=0;for(i=0;i<16;i++){Temp_2<<=1;_nop_();SCK=1;//上升switch(z){case0:{if(d0==1)Temp_2=Temp_2
6、0x01;elseTemp_2=Temp_2
7、0x00;};break;case1:{if(d1==1)Temp_2=Temp_2
8、0x01;elseTemp_2=Temp_2
9、0x00;};break;case2:{if(d2==1)Temp_2=Temp_2
10、0x01;elseTemp_2=Temp_2
11、0
12、x00;};break;case3:{if(d3==1)Temp_2=Temp_2
13、0x01;elseTemp_2=Temp_2
14、0x00;};break;default:break;}_nop_();SCK=0;_nop_();}Temp_2=Temp_2<<1;Temp_2=Temp_2>>6;Temp_2=Temp_2*0.125;return(Temp_2);}voidDisp_temp(uchark){uintj,i=0;uchartoop,loop=0;floattemp,var;if(wen
15、du[k]>0&&wendu[k]<=30)i=k;elsei=7-k;switch(k){case0:temp=wendu[0];toop=db[i];break;case1:temp=wendu[1];toop=db[i];break;case2:temp=wendu[2];toop=db[i];break;case3:temp=wendu[3];toop=db[i];break;default:break;}var=temp;ge=((int)temp)%10;shi=((int)temp)/10;
16、xiao=((int)(var*10))%10;if(temp>0&&temp<=30)loop=db[i];elseloop=0x00;P2=0x0f;P0=tab_1[k];P2=tab_2[3];P1=toop;for(j=200;j>0;j--){;}P2=0x0f;P0=tab_1[shi];P2=tab_2[2];P1=loop;for(j=200;j>0;j--){;}P2=0x0f;P0=tab_3[ge];P