1、温度计设计电子工艺实习报告广东石油化工学院电子工艺实习报告本学生姓名:_ _ _ 专 业:电子信息科学与技术_ _班 级:_电子11-2_学 号:_34_指导教师:_邱金波_茂名学院计算机与电子信息学院电工电子实验室实验日期:2013 年9 月23 日 9 月 30 日 #include #include #define uchar unsigned char #define uint unsigned int sbit ds=P22;/温度传感器信号线 uint temp; float f_temp; unsigned char code table=0xc0,0xf9,0xa4,0xb0,
2、0x99,0x92,0x82,0xf8,0x80,0x90,0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0xff; void delay(uint z) uint x,y; for(x=z;x0;x-) for(y=110;y0;y-); void fuwei() uint i; ds=0; i=103; while(i0)i-; ds=1; i=4; while(i0)i-; bit tempreadbit(void) uint i; bit dat; ds=0;i+; ds=1;i+;i+; dat=ds; i=8;while(i0)
3、i-; return(dat); uchar tempread(void) uchar i,j,dat; dat=0; for(i=1;i=8;i+) j=tempreadbit(); dat=(j1); return(dat); void tempwritebyte(uchar dat) uint i; uchar j; bit testb; for(j=1;j1; if(testb) ds=0; i+;i+; ds=1; i=8;while(i0)i-; else ds=0; i=8;while(i0)i-; ds=1; i+;i+; void tempchange(void) fuwei
4、(); delay(1); tempwritebyte(0xcc); tempwritebyte(0x44);uint gettemp() uchar a,b; fuwei(); delay(1); tempwritebyte(0xcc); tempwritebyte(0xbe); a=tempread(); b=tempread(); temp=b; temp=8; temp=temp|a; f_temp=temp*0.0625; temp=f_temp*10+0.5; f_temp=f_temp+0.05; return temp;void display(uchar num,uchar dat) uchar i; P1=tabledat; i=0xff; i=i&(0x10)0;i-) dis_temp(gettemp();