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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2745|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

溫控LED的制作方法與程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:203853 發(fā)表于 2017-6-20 11:21 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include<reg51.h>
#include<intrins.h>                        
#define uchar unsigned char
#define uint unsigned int              
sbit L=P3^2;
sbit N=P3^3;
sbit DQ=P2^2;
sbit key1=P3^5;
sbit key2=P3^6;
sbit key3=P3^7;
sbit w1=P2^4;
sbit w2=P2^5;
sbit w3=P2^6;
sbit w4=P2^7;           
uchar table[22]=
{0x3F,0x06,0x5B,0x4F,0x66,
0x6D,0x7D,0x07,0x7F,0x6F,
0x77,0x7C,0x39,0x5E,0x79,0x71,
0x40,0x38,0x76,0x00,0xff,0x37};
uint wen_du;   
uint shang,xia;
uchar dang;
uchar flag;
uchar d1,d2,d3;
void delay(uint ms)      
{
        uchar x;
        for(ms;ms>0;ms--)
                for(x=10;x>0;x--);
}
         
void delay_18B20(uint i)
{
        while(i--);
}
         
void Init_DS18B20()
{
         uchar x=0;
         DQ=1;         
         delay_18B20(8);           DQ=0;                   delay_18B20(80);
         DQ=1;        
         delay_18B20(14);
         x=DQ;         
         delay_18B20(20);
}
     
uchar ReadOneChar()
{
        uchar i=0;
        uchar dat=0;
        for (i=8;i>0;i--)
         {
                  DQ=0;
                  dat>>=1;
                  DQ=1;
                  if(DQ)
                  dat|=0x80;
                  delay_18B20(4);
         }
        return(dat);
}
       void WriteOneChar(uchar dat)
{
        uchar i=0;
        for (i=8;i>0;i--)
        {
                  DQ=0;
                DQ=dat&0x01;
            delay_18B20(5);
                DQ=1;
            dat>>=1;
        }
}
           void ReadTemperature()
{
        uchar a=0;
        uchar b=0;
        uchar t=0;
        Init_DS18B20();
        WriteOneChar(0xCC);         
        WriteOneChar(0x44);        
        delay_18B20(100);      
        Init_DS18B20();
        WriteOneChar(0xCC);         
        WriteOneChar(0xBE);      
        delay_18B20(100);
        a=ReadOneChar();         
        b=ReadOneChar();               
        wen_du=((b*256+a)>>4);   
}
void display()
{
        w1=0;P0=table[d1];delay(10);
        P0=0x00;w1=1;delay(1);
         
        w2=0;P0=table[16];delay(10);
        P0=0x00;w2=1;delay(1);
        w3=0;P0=table[d2]; delay(10);
        P1=0x00;w3=1;delay(1);
        w4=0;P0=table[d3];delay(10)
        P0=0x00;w4=1;delay(1);
}
void zi_keyscan()
{
        if(key1==0)                                                         
        {
                delay(1000);                                                  
                if(key1==0)flag=1;                                 
                while(key1==0);            
        }
        while(flag==1)                                                
        {
                d1=18;d2=shang/10;d3=shang%10;         
                display();                                             
                if(key1==0)                                             
                {
                        delay(1000);                                          
                        if(key1==0)flag=2;                       
                        while(key1==0);
                }
                if(key2==0)                                             
                {
                        delay(1000);                                          
                        if(key2==0)                                    
                        {
                                shang+=1;                              
                                if(shang>=40)shang=40;
                        }while(key2==0);
                }
                if(key3==0)                                                
                {
                        delay(1000);                                          
                        if(key3==0)                                       
                        {
                                shang-=1;                           
                                if(shang<=20)shang=20;         
                        }while(key3==0);
                }               
        }
        while(flag==2)                                               
        {
                d1=17;d2=xia/10;d3=xia%10;              
                display();                                            
                if(key1==0)
                {
                        delay(1000);
                        if(key1==0)flag=0;
                        while(key1==0);
                }
                if(key2==0)
                {
                        delay(1000);
                        if(key2==0)
                        {
                                xia+=1;
                                if(xia>=35)xia=35;        
                        }while(key2==0);
                }
                if(key3==0)
                {
                        delay(1000);
                        if(key3==0)
                        {
                                xia-=1;
                                if(xia<=10)xia=10;        
                        }while(key3==0);
                }               
        }
}
void zi_dong()
{
        uchar i;
        d1=dang;d2=wen_du/10;d3=wen_du%10;            
        zi_keyscan();
        display();      
        if(wen_du<=xia){N=1;L=0;dang=0;}
        if((wen_du>xia)&&(wen_du<shang))
        {
                dang=1;                                                                                       
                N=1;
                             L=1;
                        /*        for(i=0;i<1;i++){N=0;display();zi_keyscan();}     ½
                for(i=0;i<2;i++){N=1;display();zi_keyscan();}
                                for(i=0;i<1;i++){L=0;display();zi_keyscan();}        
                for(i=0;i<2;i++){L=1;display();zi_keyscan();} */
               
        }                          
        if(wen_du>=shang){L=1;N=0;dang=2;}
}·····//余碼請下載源程序//


溫控LED原理圖.docx

34.09 KB, 下載次數(shù): 11, 下載積分: 黑幣 -5

溫控LED源程序.docx

12.78 KB, 下載次數(shù): 9, 下載積分: 黑幣 -5

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

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 伊人亚洲 | 国产精品视频一二三区 | 午夜免费视频 | 欧美成年人网站 | 免费人成在线观看网站 | 国产精品久久久久久亚洲调教 | 久久精品一区二区视频 | 亚洲网站在线观看 | 久久久高清 | 欧美精品国产一区二区 | 国产成人一区在线 | 国产成人精品一区二区 | 中文在线一区二区 | 午夜视频一区二区三区 | 91免费版在线 | 成人伊人 | 国产精品日韩 | 亚洲播放| 人人射人人草 | 欧美一区 | 97精品超碰一区二区三区 | 日本精品一区二区 | 伊人免费网 | 久久精品久久久久久 | 亚洲天堂中文字幕 | 91九色porny首页最多播放 | 天天干天天爱天天 | 久久久tv | 日韩一区二区三区精品 | h免费观看 | 国产视频一区在线 | 欧美日一区 | 亚洲欧美一区二区三区在线 | 新91视频网 | 国产视频二区在线观看 | 免费午夜电影 | 91大神在线看| 国产精品成人品 | 色婷婷av久久久久久久 | 亚洲精品电影网在线观看 | 久久av一区二区 |