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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ds18b20-lcd1602-c51-avr.c

?? AVR source code on some projects
?? C
?? 第 1 頁 / 共 2 頁
字號:
{
    DDRA=0XFF;          //設(shè)置PA輸出
    PORTA=0XFF;         //全部加上上拉電阻
    DDRC=0XFF;          //設(shè)置PC為輸出
    PORTC=0XFF;         //全部加上上拉電阻
	
    delay_nms(30);      //等待上電穩(wěn)定
	
    lcd_wcmd(0x38,0);   //16*2顯示,5*7點陣,8位數(shù)據(jù)
    delay_nms(5);
	lcd_wcmd(0x38,0);   //不進(jìn)行忙檢測   
    delay_nms(5);
	lcd_wcmd(0x38,0);      
    delay_nms(5);
	
    lcd_wcmd(0x0c,1);   //顯示開,關(guān)光標(biāo)
    delay_nms(5);
    lcd_wcmd(0x06,1);   //移動光標(biāo)
    delay_nms(5);
    lcd_wcmd(0x01,1);   //清除LCD的顯示內(nèi)容
    delay_nms(5);
}

/*******************************************************************/
/*                                                                 */
/*寫指令數(shù)據(jù)到LCD                                                  */
/*RS=L,RW=L,E=高脈沖,D0-D7=指令碼。                             */
/*command為指令,wait_en指定是否要檢測LCD忙信號                    */
/*                                                                 */
/*******************************************************************/
void lcd_wcmd(uchar command,uchar wait_en)
{   
    if(wait_en)             //若wait_en為1,則要檢測LCD忙信號
    lcd_busy();
    PORTC &=~_BV(LCD_RS);   
    PORTC &=~_BV(LCD_RW);   
    PORTC &=~_BV(LCD_EN);   
    PORTA =command;         //送指令數(shù)據(jù) 
    PORTC |=_BV(LCD_EN);   
    _NOP();
    _NOP();
    PORTC &=~_BV(LCD_EN);   
}

/*******************************************************************/
/*                                                                 */
/*寫顯示數(shù)據(jù)到LCD                                                  */
/*RS=H,RW=L,E=高脈沖,D0-D7=數(shù)據(jù)。                               */
/*                                                                 */
/*******************************************************************/
void lcd_wdat(uchar dat)
{    
    lcd_busy();
    PORTC |=_BV(LCD_RS);    
    PORTC &=~_BV(LCD_RW);
    PORTC &=~_BV(LCD_EN);   
    PORTA=dat;               //送顯示數(shù)據(jù) 
    PORTC |=_BV(LCD_EN);    
    _NOP();
    _NOP();
    PORTC &=~_BV(LCD_EN);  
}

/*************************************************************/
/*                                                           */
/*檢查LCD忙狀態(tài)                                              */
/*lcd_busy為1時,忙,等待。lcd-busy為0時,閑,可寫指令與數(shù)據(jù)  */
/*                                                           */
/*************************************************************/ 
void lcd_busy(void)
{
    DDRA &=~_BV(busy);        //設(shè)置busy口為輸入
    PORTC &=~_BV(LCD_RS);     
    PORTC |= _BV(LCD_RW);      
    PORTC |= _BV(LCD_EN);     
    while(PINA & _BV(busy)); //忙等待
    PORTC &=~_BV(LCD_EN);     
    DDRA|=_BV(busy);          //設(shè)置busy口為輸出 
}

/*************************************************************/
/*                                                           */
/*  設(shè)定顯示位置                                             */
/*                                                           */
/*************************************************************/
void lcd_pos(uchar pos)
{                          
  lcd_wcmd(pos|0x80,1);  //數(shù)據(jù)指針=80+地址變量
}

/*******************************************************************/
/*                                                                 */
/*自定義字符寫入CGRAM                                              */
/*                                                                 */
/*******************************************************************/
void  writetab(void)  
{  
    uchar i;
    lcd_wcmd(0x40,1);            //寫CGRAM
    for (i = 0; i< 8; i++)       
    lcd_wdat(mytab[i]);        
}

/*******************************************************************/
/*                                                                 */
/* DS18B20 OK 顯示菜單                                             */
/*                                                                 */
/*******************************************************************/
void  Ok_Menu (void)
{ 
    uchar  m;
    lcd_init();                //初始化LCD 
            
    lcd_pos(0);                //設(shè)置顯示位置為第一行的第1個字符
     m = 0;
    while(cdis1[m] != '\0')
     {                         //顯示字符
       lcd_wdat(cdis1[m]);
       m++;
     }

    lcd_pos(0x40);            //設(shè)置顯示位置為第二行第1個字符
     m = 0;
    while(cdis2[m] != '\0')
     {
       lcd_wdat(cdis2[m]);    //顯示字符
       m++;
     }

    writetab();               //自定義字符寫入CGRAM
    delay_nms(5);
    lcd_pos(0x4d);
    lcd_wdat(0x00);           //顯示自定義字符
}

/*******************************************************************/
/*                                                                 */
/* DS18B20 ERROR 顯示菜單                                          */
/*                                                                 */
/*******************************************************************/
void  Error_Menu (void)
{
     uchar  m;
     lcd_init();                //初始化LCD 
	
  	 lcd_pos(0);                //設(shè)置顯示位置為第一行的第1個字符
     m = 0;
     while(cdis3[m] != '\0')
     {                         //顯示字符
       lcd_wdat(cdis3[m]);
       m++;
     }

     lcd_pos(0x40);             //設(shè)置顯示位置為第二行第1個字符
     m = 0;
     while(cdis4[m] != '\0')
     {
       lcd_wdat(cdis4[m]);      //顯示字符
       m++;
     }
}

/*******************************************************************/
/*                                                                 */
/* 數(shù)據(jù)轉(zhuǎn)換與溫度顯示                                              */
/*                                                                 */
/*******************************************************************/
void Disp_Temperature(void)
 {
    display[4]=temp_data[0]&0x0f;
    display[0]=ditab[display[4]]+0x30;     //查表得小數(shù)位的值
  
    display[4]=((temp_data[0]&0xf0)>>4)|((temp_data[1]&0x0f)<<4);
    display[3]=display[4]/100+0x30;
    display[1]=display[4]%100;
    display[2]=display[1]/10+0x30;
    display[1]=display[1]%10+0x30;

    if(display[3]==0x30)        //高位為0,不顯示
     { 
       display[3]=0x20;              
       if(display[2]==0x30)      //次高位為0,不顯示
       display[2]=0x20;
     }

    lcd_pos(0x48);             
    lcd_wdat(display[3]);        //百位數(shù)顯示 
    lcd_pos(0x49);             
    lcd_wdat(display[2]);        //十位數(shù)顯示 
	lcd_pos(0x4a);             
    lcd_wdat(display[1]);        //個位數(shù)顯示 
	lcd_pos(0x4c);             
    lcd_wdat(display[0]);        //小數(shù)位數(shù)顯示 
}	 

/********************************************************/
/*                                                      */
/* 主函數(shù)                                               */
/*                                                      */
/********************************************************/
int  main(void)
 {     
	init_io();
	
	while(1)
     {
	   Ok_Menu ();

	   do
	    {
          Read_Temperature();
	      Disp_Temperature();   
        }
       while(!presence) ;

       Error_Menu ();

	   do
	   {  
	     Init_DS18B20();
	     beep();
       }
	   while(presence);
     }
 }

/********************************************************/

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美国产精品劲爆| 一区二区三区波多野结衣在线观看 | 成人av免费在线播放| 一区二区免费在线播放| 91精品国产综合久久小美女| 丝袜国产日韩另类美女| 欧美国产日本韩| 欧美视频一区在线| 琪琪一区二区三区| 一色屋精品亚洲香蕉网站| 欧美日本一区二区| 色综合色狠狠天天综合色| 日日噜噜夜夜狠狠视频欧美人 | 日韩一区二区免费视频| 成人网页在线观看| 日韩精品乱码av一区二区| 精品999久久久| 欧美日韩国产片| 国产成人一级电影| 久久99久久99| 亚洲精品国产无套在线观| 欧美精品日韩一区| 在线免费不卡电影| 国产白丝网站精品污在线入口| 免费观看在线色综合| 一区二区三区四区在线| 久久久久久免费| 欧美精品一区二区三区高清aⅴ| 91社区在线播放| 狠狠色狠狠色综合日日91app| 偷窥国产亚洲免费视频| 一区二区中文字幕在线| 日韩欧美中文字幕制服| 91精品91久久久中77777| 国产精品一级二级三级| 国产精品一区不卡| 精品制服美女久久| 五月激情综合色| 亚洲午夜久久久久| 亚洲同性同志一二三专区| 欧美成人精品高清在线播放 | 日本高清成人免费播放| 成人精品视频一区二区三区尤物| 美女网站一区二区| 性做久久久久久免费观看| 精品久久人人做人人爽| 日韩一区二区三区精品视频| 欧美男女性生活在线直播观看| 国产91精品在线观看| 国产主播一区二区三区| 青青草国产精品亚洲专区无| 天天综合色天天综合色h| 一区二区三区精品久久久| 国产日韩欧美精品在线| 欧美电视剧免费观看| 日韩欧美一区二区三区在线| 日韩一级免费一区| 日韩精品一区二区三区在线观看 | 99久久国产综合精品麻豆| 久久久久高清精品| www.成人在线| 成人午夜视频在线| 国产经典欧美精品| 成人午夜激情视频| av成人动漫在线观看| 色综合久久久网| 欧美亚洲高清一区| 欧美日韩一区二区在线视频| 6080日韩午夜伦伦午夜伦| 4hu四虎永久在线影院成人| 一本色道久久综合精品竹菊| 欧美视频自拍偷拍| 欧美二区在线观看| 久久蜜桃香蕉精品一区二区三区| 国产午夜精品一区二区| 国产精品女人毛片| 亚洲影视在线播放| 天堂成人国产精品一区| 首页国产欧美日韩丝袜| 免费观看日韩电影| 国产激情精品久久久第一区二区| www.综合网.com| 欧美成人激情免费网| 日韩视频在线观看一区二区| 欧美α欧美αv大片| 久久免费午夜影院| 一区二区三区日韩精品视频| 亚洲h在线观看| 午夜电影一区二区三区| 国产精品66部| 在线观看亚洲一区| 久久人人超碰精品| 日韩美女视频一区| 亚洲成a人在线观看| 国产精品99久| 欧美午夜精品电影| 国产三级三级三级精品8ⅰ区| 国产精品伦理一区二区| 亚洲综合在线视频| 国产精品一区二区男女羞羞无遮挡| 粉嫩嫩av羞羞动漫久久久| 欧美军同video69gay| 国产午夜精品一区二区三区嫩草 | 日韩视频中午一区| 亚洲精品一二三| 欧美a一区二区| 99久久久精品| 欧美成人综合网站| 亚洲欧美日韩国产综合| 激情成人综合网| 日本久久一区二区三区| 欧美精品一区二区不卡| 久久综合999| 亚洲国产精品尤物yw在线观看| 久久99精品久久久久| 色婷婷精品大在线视频| 久久精品一区二区三区av| 亚洲日本电影在线| 国产精品996| 91精品视频网| 亚洲国产中文字幕在线视频综合| 国产一区二三区| 欧洲精品一区二区三区在线观看| 国产亲近乱来精品视频| 日韩不卡一二三区| 91精品国产综合久久蜜臀| 亚洲免费资源在线播放| 99国产精品久久久| 久久综合久久综合亚洲| 依依成人综合视频| 99精品一区二区| 国产调教视频一区| 亚洲自拍偷拍网站| 91视频免费观看| 久久综合色鬼综合色| 九九精品视频在线看| 4438x成人网最大色成网站| 日本一区二区免费在线| 国产精一区二区三区| 日韩欧美亚洲一区二区| 欧美a一区二区| 欧美日韩国产免费一区二区| 亚洲一区二区不卡免费| 99久久国产综合色|国产精品| 亚洲精品一区二区三区99| 裸体在线国模精品偷拍| 欧美高清精品3d| 日韩高清不卡在线| 欧美日韩一区二区在线视频| 天堂成人免费av电影一区| 欧美精品欧美精品系列| 一区二区三区欧美| 欧美日韩免费一区二区三区视频| 亚洲精品va在线观看| 欧美日韩色一区| 午夜视黄欧洲亚洲| 日韩一级成人av| 精品一区二区三区免费| 欧美电影免费观看高清完整版在线| 免费观看久久久4p| 精品国产露脸精彩对白 | 国产在线播放一区二区三区| 欧美群妇大交群中文字幕| 午夜视频一区在线观看| 欧美日韩一级黄| 美女视频网站久久| 精品国产髙清在线看国产毛片| 国产在线麻豆精品观看| 久久婷婷色综合| 久久99精品国产麻豆婷婷洗澡| 久久久www免费人成精品| 成人免费va视频| 亚洲午夜久久久久久久久久久| 欧美色偷偷大香| 国产在线播放一区三区四| 欧美国产激情二区三区| 欧美特级限制片免费在线观看| 午夜精品一区二区三区免费视频| 精品卡一卡二卡三卡四在线| 大桥未久av一区二区三区中文| 欧美一级片在线| 国产jizzjizz一区二区| 亚洲男人天堂一区| 精品国产一区二区三区久久影院| 国产成人综合自拍| 亚洲综合清纯丝袜自拍| 9191国产精品| 成人伦理片在线| 天天操天天色综合| 日韩一区二区免费视频| 91麻豆6部合集magnet| 日日夜夜免费精品| 一色屋精品亚洲香蕉网站| 欧美日韩在线三区| 成人午夜激情影院| 亚洲高清在线精品| ...av二区三区久久精品| 欧美剧情电影在线观看完整版免费励志电影 | 国产91色综合久久免费分享| 亚洲一区二区三区精品在线|