智能风扇程序,数码管显示温度

智能风扇程序,数码管显示温度

ID:15492465

大小:29.00 KB

页数:7页

时间:2018-08-03

智能风扇程序,数码管显示温度_第1页
智能风扇程序,数码管显示温度_第2页
智能风扇程序,数码管显示温度_第3页
智能风扇程序,数码管显示温度_第4页
智能风扇程序,数码管显示温度_第5页
资源描述:

《智能风扇程序,数码管显示温度》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、#include#defineucharunsignedchar#defineuintunsignedintsbitdu=P2^0;sbitwe=P2^1;sbitLCD_RS=P3^5;sbitLCD_RW=P3^6;sbitLCD_EN=P3^4;sbitLCD_PSB=P3^7;sbitdianji=P1^7;sbitjia=P3^0;sbitjian=P3^1;sbitin1=P1^4;sbitin2=P1^5;sbitds=P2^2;sbitdula=P2^6;sbitwela=P2^7;uinttemp;floattt

2、;ucharnum=0;show=1;gao=1;di=3;ucharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};ucharcodetable1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};//ucharcodetable[]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39};ucharco

3、dehang3[]={"当前温度:"};ucharcodehang4[]={"度"};ucharcodehang5[]={"当前档位:"};ucharcodehang6[]={"档"};voiddelay(uinti){while(i--);}voidyan(ucharz){uintx,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}voiddisplay(uinttemp1){ucharshi,ge,wei;shi=temp1/100;ge=temp1%100/10;wei=temp1%10;P0=table[shi]

4、;//十位;dula=1;dula=0;P0=0xff;P0=0xfe;wela=1;wela=0;yan(2);P0=table1[ge];//个位;dula=1;dula=0;P0=0xff;P0=0xfd;wela=1;wela=0;yan(2);P0=table[wei];//小数点一位;dula=1;dula=0;P0=0xff;P0=0xfb;wela=1;wela=0;yan(2);P0=0x39;//摄氏度;dula=1;dula=0;P0=0xff;P0=0xf7;wela=1;wela=0;yan(2);}voidchushih

5、ua()//初始化函数;{ds=1;delay(2);ds=0;delay(100);ds=1;delay(15);if(ds==0){delay(90);}ds=1;}voidxiehanshu(uchardat)//写函数;{uchari=0;for(i=8;i>0;i--){ds=0;ds=dat&0x01;delay(6);ds=1;dat>>=1;}ds=1;}ucharduhanshu(void)//读函数;{uchari=0;uchardat=0;for(i=8;i>0;i--){ds=0;dat>>=1;ds=1;if(ds==1)

6、dat

7、=0x80;delay(3);}return(dat);}voidkaishi(){uchara=0;ucharb=0;chushihua();xiehanshu(0xcc);//写跳过读ROM指令;xiehanshu(0x44);//写温度转换指令;delay(30);chushihua();xiehanshu(0xcc);xiehanshu(0xbe);delay(15);a=duhanshu();//读低八位;b=duhanshu();//读高八位;temp=b;temp<<=8;//两个字节组合为一个字;temp=temp

8、a;tt

9、=temp*0.0625;//温度在寄存器中是12位,分辨率是0.0625temp=tt*10+0.5;//乘10表示小数点后只取1位,加0.5是四折五入temp+=0.05;display(temp);if(temp>37)num=3;elseif(temp>36)num=2;elseif(temp>35)num=1;elseif(temp>33)num=0;elseif(temp<32)num=4;}voiddispose(){switch(num){case0:gao=1;di=3;break;case1:gao=2;di=2;break;c

10、ase2:gao=3;di=1;break;case3:gao=4;di=0;break;case4:gao=0;di=4

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。