久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2649|回復: 2
打印 上一主題 下一主題
收起左側

天冷了做了個簡單的溫度控制

[復制鏈接]
跳轉到指定樓層
樓主
ID:208733 發表于 2017-12-11 22:21 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
為了響應國家環保要求,拆鍋爐了改電了。程序改自網絡,DS18B20測溫,設置啟動和停止溫度,用繼電器輸出控制電暖器的自動啟停。
以下為程序代碼:
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
unsigned int xs;
unsigned int temp;
unsigned int temp1;
unsigned int temp2;
unsigned  int sxwd;
unsigned  int  xxwd;


unsigned  int sjwdsw;
unsigned  int sjwdgw;
unsigned  int sjwdbw;
unsigned char flag;
unsigned int sxbw=1;
unsigned int sxsw=5;
unsigned int xxbw=0;
unsigned int xxsw=9;




void guangoukongzhi();
void shezhiwendusx();
void shezhiwenduxx();
void sxshezhi();
void  xxshezhi();
sbit DQ=P1^0;
sbit wx4=P3^4;
sbit wx3=P3^5;
sbit wx2=P3^6;
sbit wx1=P3^7;
sbit shuchu=P1^4;
sbit qiehuan=P1^5;
sbit  jia=P1^6;

sbit  jia1=P1^7;




uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0X88,0x83,0xc6,0xa1,0x86,0x8e,0x7f,0x89,0xc7};
void delay1(unsigned int m)//oáÃëÑóê±
{
        unsigned int i,j;
        for(i=m;i>0;i--)
        for(j=110;j>0;j--);
}
void delay(unsigned int m)//ζèÑóê±3ìDò
{
        while(m--);
}
void Init_DS18B20()//3õê¼»ˉ
{
        unsigned char x=0;
        DQ=1;//DQ¸′λ
        delay(8);
        DQ=0;//μ¥Ƭ»ú½«QDà-μí
        delay(80);
        DQ=1;//à-¸ßDQ
        delay(4);
        x=DQ;//éÔ×öÑóê±èç1ûX=0Ôò3õê¼»ˉ3é1|   X=1Ôò3õê¼»ˉê§°ü
       
        delay(20);
}
uchar ReadOneChar()//ds18b20¶áò»¸ö×Ö½ú
{
        unsigned char i=0;
        unsigned char dat=0;
        for(i=8;i>0;i--)
        {
                DQ=0;//¸ßμçÆ½à-3éμíμçÆ½ê±¶áÖüÆú¿aê¼
                dat>>=1;
                DQ=1;//¸øÂö3å
                if(DQ)
                        dat|=0x80;
                delay(4);
        }
                return(dat);}
       
void WriteOneChar(unsigned char dat)
{
unsigned char i=0;
        for(i=8;i>0;i--)
        {
                DQ=0;//′ó¸ßμçÆ½à-μ½μíμçÆ½ê±D′ÖüÆú¿aê¼
                DQ=dat&0x01;
                delay(5);
                DQ=1;//′ó×îμíλμ½×î¸ßλ′«èë
                dat>>=1;
        }
}
void ReadTemperature()
{
        unsigned char a=0;
        unsigned b=0;
        unsigned t=0;
        Init_DS18B20();
        WriteOneChar(0xCC);
        WriteOneChar(0x44);
        delay(5);
        Init_DS18B20();
        WriteOneChar(0xCC);
        WriteOneChar(0xBE);
        delay(5);
        a=ReadOneChar();
        b=ReadOneChar();
        temp1=b<<4;
        temp1+=(a&0xf0)>>4;
        temp2=a&0x0f;
        temp=((b*256+a)>>4);
        xs=temp2*0.0625*10;
}
void wenduxianshi()
{
        wx1=0;
        P0=table[temp/10];
        delay1(3);
        wx1=1;
       

wx2=0;
        P0=table[temp%10];
        delay1(3);
        wx2=1;

wx2=0;
        P0=table[16];
        delay1(3);
        wx2=1;
P0=0x0ff;
        delay1(3);




       

wx3=0;
        P0=table[xs%10];
        delay1(3);
        wx3=1;
       
wx4=0;
        P0=table[12];
        delay1(3);
        wx4=1;
       
       
       


}
void main()
{
        while(1)
        {
                ReadTemperature();
               
       
                guangoukongzhi();
                if(qiehuan==0)
                { delay1(80);
                        if(qiehuan==0)
                        {
                                flag++;
                        }
                }
                if(flag==3)
                {
flag=0;
                }                       
                if(flag==0)
                {
                        wenduxianshi();
                }
               
                if(flag==1)
                {
                        shezhiwendusx();
                }
                if(flag==2)
                {
                        shezhiwenduxx();
                }
               

}               
               
               
               
               
               
               
               
               
               
       
}
void guangoukongzhi()
{
       
        sjwdsw=temp%10;
        sjwdbw=temp/10;

       
        if(sjwdbw==xxbw)
        {
                if(sjwdsw<=xxsw)
                {        shuchu=0;
        }
}
        if(sjwdbw>=sxbw)
        {
                if(sjwdsw>=sxsw)
                {
                        shuchu=1;
                }

               
               
               
               
        }
       
}
       
        void shezhiwendusx()
{
       
                wx1=0;
        P0=0x89;
        delay1(3);
        wx1=1;
       
       
       
                        wx2=0;
        P0=table[sxbw];
        delay1(3);
        wx2=1;
       
       
       
       
       

wx3=0;
        P0=table[sxsw];
        delay1(3);
        wx3=1;


wx4=0;
        P0=table[12];
        delay1(3);
        wx4=1;
       
if(jia==0)//éÏÏT°ùλ¼ó′|àí
{
delay1(80);
{
if(jia==0)
{
        sxbw++;
        if(sxbw>=4)
        {
                sxbw=0;
        }

}
}
}

//if(jian==0)//éÏÏT°ùλ¼õ′|àí
//{
//delay1(80);
//{
//if(jian==0)
//{
        //if(sxbw>0)
//        {sxbw--;
//        if(sxbw<=0)
        //{
//                sxbw=3;
//        }
//}
//}
//}
//}
       
       

if(jia1==0)//éÏÏTê®Î»¼ó′|àí
{
delay1(80);
{
if(jia1==0)
{
        sxsw++;
        if(sxsw>9)
        {
                sxsw=0;
        }

}
}
}

//if(jian1==0)//éÏÏTê®Î»¼õ′|àí
//{
//delay1(80);
//{
//if(jian1==0)
//{
        //if(sxsw>0)
//        {sxsw--;
//        if(sxsw=0)
//        {
        //        sxsw=9;
//        }
//}
//}
//}
//}
       





       
       
       
       
}
       
       
       
       
        void shezhiwenduxx()
{
       
                wx1=0;
        P0=0xc7;
        delay1(3);
        wx1=1;
       
       
       
                        wx2=0;
        P0=table[xxbw];
        delay1(3);
        wx2=1;
       
       
       
       
       

wx3=0;
        P0=table[xxsw];
        delay1(3);
        wx3=1;


wx4=0;
        P0=table[12];
        delay1(3);
        wx4=1;
       
       
       
if(jia==0)//ÏÂÏT°ùλ¼ó′|àí
{
delay1(80);
{
if(jia==0)
{
        xxbw++;
        if(xxbw>=2)
        {
                xxbw=0;
        }

}
}
}


       

if(jia1==0)//ÏÂÏTê®Î»¼ó′|àí
{
delay1(80);
{
if(jia1==0)
{
        xxsw++;
        if(xxsw>9)
        {
                xxsw=0;
        }

}
}
}


       
       
       
       
       
       
       
       
       
       
}
       
       

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:208733 發表于 2017-12-11 22:22 | 只看該作者
為什么漢字變符號了
回復

使用道具 舉報

板凳
ID:1 發表于 2017-12-11 23:26 | 只看該作者
不吃草的牛 發表于 2017-12-11 22:22
為什么漢字變符號了

可能是瀏覽器的問題,你用的什么瀏覽器?對了傳個壓縮包就行了
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产ts人妖系列高潮 | 91精品久久久久久久久久入口 | 欧美成人专区 | 亚洲精品不卡 | 日韩精品一区二区三区中文字幕 | 精品国产精品国产偷麻豆 | 日韩电影在线 | 国产精品一区二区av | 黄色男女网站 | 伊人精品在线 | 欧美色综合一区二区三区 | 日日草天天干 | 欧美一区日韩一区 | 日韩精品视频在线观看一区二区三区 | 狠狠操在线| 欧美日韩中文在线 | 99re热这里只有精品视频 | 国产日产欧产精品精品推荐蛮挑 | 成人在线视频免费观看 | 国产精品久久久久久久久久妇女 | 久久午夜精品福利一区二区 | 亚洲美女网站 | 成人依人 | 国产精品区二区三区日本 | 久久精品一级 | 久久久精品网 | 欧美精品一二区 | 少妇特黄a一区二区三区88av | 男女啪啪高潮无遮挡免费动态 | 成人免费在线观看 | 羞羞视频网站免费观看 | 日韩欧美三级在线 | 亚洲日本免费 | 香蕉视频久久久 | 亚洲精品一区中文字幕乱码 | 色.com | a精品视频 | 久久久久久综合 | 日韩国产高清在线观看 | 91精品国产乱码久久久久久久久 | aaaaaaa片毛片免费观看 |