亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 8mh溫度程序.txt

?? 18b20的源程序
?? TXT
字號:
#include <avr/io.h> //和單片機類型相對應的頭文件,選擇Atmega8做實驗; 
//#include <stdio.h> 
//#include <string.h>
#include <util/delay.h>     //延時的宏
#define uchar unsigned char 
#define uint unsigned int 
void init_1820(); 
uchar write_1820(uchar x); 
uchar read_1820(); 
void send_byte(uchar x); 
void delay(uint x); 
void disp_led(uchar buffer,uchar control); 
uchar  disp_table[16] = //{0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
                         //0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
 
        {0x3f,
		0x06, 
		0x5b, 
		0x4f,  
		0x66,  
		0x6d,
		0x7d,
		0x07, 
        0x7f,
		0x6f,
		0x77,
		0x7c,
		0x39,
		0x5e,
		0x79,
		0x71};
uchar dp; 
long count;
uchar flag=0; 
void main(void) //主函數 
 { 
//  disp_led(0,0); 
//  delay(2000); 
//  OSCCAL=0X9d;//系統時鐘校準,不同的芯片和不同的頻率, 
  DDRC=0xff; 
  DDRD=0XFF;
  DDRB=0xff;
  PORTD=0XFF; 
  //WDR();       //看門狗計數清零 
  //WDTCR=0x0F; 
  PORTC=0xff;
  while(1) 
   {
               uchar i,temh,teml; 
                init_1820();        //復位18b20 
                write_1820(0xcc);   // 發出轉換命令 
                write_1820(0x44); 
                delay(400); 
                init_1820(); 
               // WDR(); 
                write_1820(0xcc);  //發出讀命令 
                write_1820(0xbe); 
               teml=read_1820();  //讀數據 
              temh=read_1820();
				  if((temh&0xF8) == 0xF8) 
              { 
                 flag=1; 
                 //count=((0xFF-temh)*256+(0xFF-teml)+1)*5; 
                  count=((0xFF-temh)*256+(0xFF-teml)+1)*0.625; 
              } 
            else 
              {        
                  flag=0; 
                 // count=(temh*256+teml)*5; 
                  count=(temh*256+teml)*0.625; //計算具體溫度 
              } 
               // WDR(); 
                disp_led(0,1);     //顯示溫度 
 
              for(i=0;i<100;i++)   //每次轉換需要延時200ms以上 
                 delay(1000); 
                 
              
   } 
 } 
void delay(uint x)  //每一個數1.5us左右 
{ 
          while(x) 
         { 
            x--; 
         } 
} 
void init_1820() 
 {uint i;
    PORTD|=(1<<6);    
    PORTD&=~(1<<6); 
     for(i=0;i<10;i++)         //拉低 500us
   {
     _delay_us(50);    
   } 
    PORTD|=(1<<6); 
    DDRD&=~(1<<6); 
     _delay_us(50);     
    while(PIND&(1<<6)) 
    { 
    ;
    } 
    DDRD|=(1<<6); 
    PORTD|=(1<<6); 
     for(i=0;i<4;i++)  //回復的低電平在60到240US       
  {
     _delay_us(60);    
  }   
 } 
uchar write_1820(uchar x) 
 {   
     uchar m; 
         for(m=0;m<8;m++) 
         { 
                 PORTD&=~(1<<6); 
                 if(x&(1<<m))    //寫數據,從低位開始 
                 PORTD|=(1<<6); 
                 else 
                 PORTD&=~(1<<6); 
                _delay_us(60);  //15~60us 
                 PORTD|=(1<<6); 
         } 
          PORTD|=(1<<6); 
 }  

uchar read_1820() 
{    
         uchar temp,k,n; 
         temp=0; 
         for(n=0;n<8;n++) 
            { 
                PORTD&=~(1<<6); 
				asm("nop");
                //delay(2);      
                PORTD|=(1<<6); 
                //delay(3);    
                DDRD&=~(1<<6); 
                k=(PIND&(1<<6));    //讀數據,從低位開始 
                if(k) 
                temp|=(1<<n); 
                else 
                temp&=~(1<<n); 
                _delay_us(60); //60~120us    
                DDRD|=(1<<6); 
            } 
        return (temp); 
} 

void send_byte(uchar x)    //以下為顯示程序 
{ 
        uchar i; 
         for(i=0;i<8;i++) 
         { 
              PORTC&=~(1<<5);   // PC5為底  為164提供時鐘信號 
              if((x&(1<<(7-i)))||((dp==1)&&(i==0))) //判斷每位數據的電平,及小數點判斷 
              PORTC|=(1<<4);                  //若為高著PC4輸出高電平   
                else 
                PORTC&=~(1<<4);                           //若為低著輸出低電平 
                PORTC|=(1<<5);   //PC5 提供時鐘信號 
         } 
        //PORTC|=((1<<0)|(1<<1)|(1<<2)); 
} 
//顯示程序 CONTROL為控制顯示 BUFFER為顯示數據 
void disp_led(uchar buffer,uchar control) 
{ 
        uchar i,temp[4]; 
        uint tempcount; 
        dp=0;
		
        switch(control) 
        { 
                case 0:                 //CONTROL為零全部數碼管顯示buffer  
                { 
                        for(i=0;i<11;i++) 
                        send_byte(disp_table[buffer%10]);//顯示數字 
                        break; 
                } 
                case 1:                //control為1,顯示count中的數據為6位 
                {       //if(flag==0)  
				        tempcount=count;
                        for(i=0;i<4;i++)   //取出每位中的數據 
                        { 
                                temp[i]=tempcount%10; 
                                tempcount/=10; 
                        } 
                        send_byte(disp_table[buffer/10]);  //最開始顯示buffer數據 
                        send_byte(disp_table[buffer%10]); 
                        send_byte(0x00);          
                        send_byte(0x00); 
                        send_byte(0x00);
                    
						PORTB=0xff;
                        i=3;
                        send_byte(disp_table[temp[3-i]]);
                        PORTB=0xfe;  
						dp=1;
						
						_delay_ms(1);
						PORTB=0xff;
						i=2;
                        send_byte(disp_table[temp[3-i]]); 
                        PORTB=0xfd;
						dp=0;
						_delay_ms(1);
						PORTB=0xff;
                        i=1;   
//                           
                        send_byte(disp_table[temp[3-i]]); 
						PORTB=0xfb;
                        dp=0; 
						
						_delay_ms(1);
						PORTB=0xff;
						if(flag==0)
						   {i=0;
                            send_byte(disp_table[temp[3-i]]); 
                            PORTB=0xf7;
						    dp=0;
						    _delay_ms(1);
                           }
                        else
                          {i=0;
                           send_byte(0x40); 
                           PORTB=0xf7;
						   dp=0;
						   _delay_ms(1);
					       } 
                break;  
                }
        } 
        PORTC|=(1<<4); 
}


void DelayUS(unsigned int time) 
{   
     while(time>1) 
            time--; 
} 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91热门视频在线观看| 婷婷成人激情在线网| 国产一区二区三区最好精华液 | 国产精品一区二区三区网站| 欧美一区二区观看视频| 日韩精品国产欧美| 日韩三级高清在线| 国产永久精品大片wwwapp | 亚洲视频你懂的| 在线视频综合导航| 婷婷国产在线综合| 精品剧情v国产在线观看在线| 国精品**一区二区三区在线蜜桃| 国产午夜精品美女毛片视频| 福利视频网站一区二区三区| 亚洲欧美日韩国产另类专区| 欧美精品视频www在线观看 | 国产乱一区二区| 国产精品入口麻豆原神| 在线观看日韩毛片| 老司机免费视频一区二区三区| 国产女同性恋一区二区| 色婷婷亚洲精品| 久久精品av麻豆的观看方式| 色女孩综合影院| 精品国产髙清在线看国产毛片| 国产乱对白刺激视频不卡 | 亚洲人成伊人成综合网小说| 7777精品伊人久久久大香线蕉的| 国产一区久久久| 亚洲理论在线观看| 精品国精品国产| 91麻豆免费观看| 久久99精品久久久久| 国产精品电影院| 日韩一区二区免费高清| 99热在这里有精品免费| 蜜桃av一区二区| 亚洲精品第1页| 久久九九影视网| 欧美日本在线视频| 成人av在线资源网站| 三级影片在线观看欧美日韩一区二区| 国产拍揄自揄精品视频麻豆| 欧美日韩精品三区| eeuss鲁片一区二区三区| 捆绑调教一区二区三区| 亚洲精品视频在线观看免费| 久久久精品国产免大香伊| 欧美精品亚洲二区| 在线免费不卡视频| 粉嫩欧美一区二区三区高清影视 | 91网站最新地址| 激情偷乱视频一区二区三区| 亚洲丰满少妇videoshd| 亚洲欧美自拍偷拍色图| 久久你懂得1024| 欧美一区午夜精品| 欧美日韩综合不卡| 色哟哟精品一区| av色综合久久天堂av综合| 国产乱妇无码大片在线观看| 麻豆视频一区二区| 日韩高清在线不卡| 亚洲国产精品久久人人爱蜜臀| 国产精品沙发午睡系列990531| 亚洲精品一区二区三区福利| 7777精品伊人久久久大香线蕉| 精品1区2区3区| 国产成人精品亚洲日本在线桃色| 亚洲高清在线视频| 国产精品久久久久久久久图文区| 26uuu精品一区二区在线观看| 欧美日本不卡视频| 欧美日免费三级在线| 欧美视频在线播放| 色偷偷久久人人79超碰人人澡| jvid福利写真一区二区三区| 成人精品视频一区二区三区| 粉嫩蜜臀av国产精品网站| 成人动漫一区二区三区| 波多野洁衣一区| 99久久精品国产网站| av资源站一区| 91在线精品一区二区三区| 91在线一区二区| 色婷婷综合久久久中文字幕| 欧美综合一区二区| 欧美日韩久久一区| 91精品午夜视频| 欧美www视频| 欧美经典一区二区三区| 国产精品久久三| 亚洲视频小说图片| 三级不卡在线观看| 国产一区二区三区不卡在线观看| 国产美女精品在线| 成人黄色大片在线观看| 色综合久久综合网欧美综合网| 欧美日韩一卡二卡三卡| 91精品国产色综合久久不卡蜜臀| 欧美成人女星排名| 国产三级一区二区三区| 一区在线播放视频| 亚洲大片一区二区三区| 另类人妖一区二区av| 国产福利精品导航| 在线观看日韩国产| 精品免费日韩av| 中文字幕亚洲一区二区av在线| 亚洲精品视频在线观看免费| 日韩精品五月天| 国产美女久久久久| 在线亚洲人成电影网站色www| 8v天堂国产在线一区二区| 久久久久久久久久久久久夜| 亚洲视频一区二区在线观看| 麻豆精品一二三| 97超碰欧美中文字幕| 欧美顶级少妇做爰| 国产精品欧美久久久久无广告| 亚洲欧美另类小说视频| 视频在线观看一区二区三区| 日本成人在线网站| bt欧美亚洲午夜电影天堂| 欧美日韩在线电影| 亚洲国产精品黑人久久久| 亚洲丶国产丶欧美一区二区三区| 激情文学综合网| 欧美日韩在线亚洲一区蜜芽| 欧美国产1区2区| 同产精品九九九| 99精品欧美一区二区蜜桃免费| 日韩欧美一区二区三区在线| 欧美国产97人人爽人人喊| 日av在线不卡| 一本色道综合亚洲| 久久久精品2019中文字幕之3| 五月综合激情婷婷六月色窝| aaa亚洲精品| ww亚洲ww在线观看国产| 亚洲 欧美综合在线网络| av动漫一区二区| 久久久精品国产免大香伊| 青草av.久久免费一区| 色老汉一区二区三区| 国产女人aaa级久久久级| 久久99精品一区二区三区| 欧美日韩不卡一区二区| 亚洲在线免费播放| 99国产精品久久久久| 久久精品人人做人人综合| 蜜桃视频一区二区三区| 欧美猛男男办公室激情| 亚洲一二三区不卡| 色婷婷香蕉在线一区二区| 亚洲日本丝袜连裤袜办公室| 粉嫩aⅴ一区二区三区四区五区| 欧美电影精品一区二区| 蜜桃精品视频在线观看| 欧美一区二区在线不卡| 天天综合色天天| 欧美日韩久久一区二区| 亚洲地区一二三色| 欧美日韩另类国产亚洲欧美一级| 亚洲专区一二三| 99九九99九九九视频精品| 国产精品久久久久影院老司| 成人一区二区三区中文字幕| 国产嫩草影院久久久久| 国产成人午夜99999| 久久免费美女视频| 国产盗摄一区二区| 99久久99精品久久久久久| 亚洲综合激情网| 欧美在线不卡视频| 香蕉久久夜色精品国产使用方法| 欧美三日本三级三级在线播放| 亚洲第一成人在线| 91精品国产综合久久精品app| 日本成人中文字幕| 精品福利av导航| 国产999精品久久久久久| 国产亚洲一区二区三区四区| 国产.精品.日韩.另类.中文.在线.播放| 国产欧美日韩久久| 91在线丨porny丨国产| 亚洲一区av在线| 欧美精品久久久久久久多人混战| 日本视频在线一区| 久久久久久久久久久久电影 | 中文在线一区二区| www.亚洲免费av| 亚洲女同一区二区| 欧美浪妇xxxx高跟鞋交| 九九九久久久精品| 国产精品日韩成人| 欧美视频一二三区| 精品一区二区免费在线观看| 国产日韩欧美电影|