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

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

?? realmain.c

?? 用pic單片機做的一個溫度計 實現實時時鐘顯示和存儲
?? C
?? 第 1 頁 / 共 3 頁
字號:

#include<p18f452.h>
#include"delays.h"
#include"pwm_sound.h"
#include"ds1302.h"
#include"i2c.h"
#include"lcd.h"
#include"ds18b20.h"



#define  zlg7290                0x70                            // zlg7290的器件地址
#define  zlgchildaddr           0x01                            // zlg7290的鍵值寄存器地址


#define  at2416                0xA0                            // eeprom at2408的器件地址

 
#define  uprestrctflag         0x01                            // 溫度上限符號位地址  
#define  downrestrctflag       0x06                            // 溫度下限符號位地址 
   
    
#define  at2416temup           0x02                            // 溫度上限數據地址 
#define  at2416temdown         0x07                            // 溫度上限數據地址 

#define      enter           32                                //確認鍵
#define      escape          38                                //推出鍵
#define      just            22                                //+
#define      bear            23                                //-                
#define      lift            36                                //左
#define      right           34                                //右   
#define      up              27                                //上 
#define      down            35                                //下
#define      key0            0                                 // 0
#define      key9            9                                 // 8
#define      key_m           10                                // 小數點



char choose;                                                    //菜單選擇變量           

char keyflag=0;                                                  //按鍵標志

char key=0;                                                      //鍵值


extern char year;    //年
extern char month;   //月
extern char date;    //日
extern char day;     //星期
extern char hour;    //小時
extern char minute;  //分鐘
extern char second;  //秒 

extern  char y;                                                   //十位
extern  char z;                                                   //各位


void int1(void);            
void int1_initial(void);
void initial_sys(void);
void int1_initial(void);
void displaywelcome(void);
void displaymainpage(void);
void displaymainpage_cursor(char);
void readkey(void);
void applydisplay(void);
void timesset(void);
void timesettemp(void);
void temperaturerestrct(void);
void temperaturerestrcttemp(void);
void replaytemperature(void);


#pragma code  InterruptVectorHigh=0x08

void InterruptVectorHigh(void)
  {
    _asm
     
     goto  int1
   
    _endasm
  }
#pragma code

#pragma interrupt int1
void int1(void)
  {   
     
      keyflag=1;
      key=read_i2c_date(zlg7290,zlgchildaddr )-1;            //讀取鍵值
      INTCON3bits.INT1IF=0;                         //清中斷標志
  }

void main()
{   
     
   initial_sys();
   
   int1_initial();

   lcd_initial();
   
   pwm_initial();

   displaywelcome();                                    //顯示歡迎界面面
  
   initial_i2c();

   readkey();
   while(key!=enter);                                    //等待按鍵

   choose=2;    

  while(1)
 {
   clearlcd();                                          //清屏
   clearlcd();  
   displaymainpage();                                   //顯示主菜單

   displaymainpage_cursor(choose);
   while(1)
    {   
        
         readkey();
 
         if(key==up)
           { if (choose==1) { choose=4;  displaymainpage_cursor(choose);}
             else {   --choose;          displaymainpage_cursor(choose);}
           }
       
         if(key==down)
           { if (choose==4) { choose=1;  displaymainpage_cursor(choose);}
             else {   ++choose;          displaymainpage_cursor(choose);}
           }
         if(key==enter) break;
     }
   switch(choose)
    {
       case 1: applydisplay();          break;
       case 2: timesset();              break;
       case 3: temperaturerestrct();    break;
       case 4: replaytemperature();     break;
    } 
 
 }
  writecmdlcd(0x0f);                                           // 光標開 
}
/*****************************************************************************
 ******函 數 名 稱 : initial_sys()
 ******函 數 功 能 : 系統初始化
 ******輸       入 :  
 ******輸       出 :  
 ******************************************************************************/ 
void initial_sys()
{

  INTCON=0x00;                                              //關中斷
  ADCON1=0b00000110;                                        //RA端口設定為數字                                
  PIE1=0;
  PIE2=0;

}
/*****************************************************************************
 ******函 數 名 稱 : initial_sys()
 ******函 數 功 能 : int1電平變化中斷
 ******輸       入 :  
 ******輸       出 :  
 ******************************************************************************/ 
void int1_initial()
 {     
   INTCON2 &=0xDF;                    // INT1=0 下降沿的時候中斷
       
   RCONbits.IPEN=1;                  // 使能中斷優先級
      
   INTCON=0XC0;                      //  GIE=1,PEIE=1   
   
   INTCON3bits.INT1IP=1;             //高優先級
   INTCON3bits.INT1IF=0;             //未發生int1中斷
   INTCON3bits.INT1IE=1;             //使能int1外部引腳中斷
        
   TRISBbits.TRISB1=1;               // INT1 (RB1)設置為輸入
  }
/*****************************************************************************
 ******函 數 名 稱 : readkey(void)
 ******函 數 功 能 : 讀鍵值函數
 ******輸       入 :  
 ******輸       出 :  
 ******************************************************************************/ 
void readkey(void)
{ 
  while(!keyflag);
  keyflag=0;
  
}

/*****************************************************************************
 ******函 數 名 稱 : displaywelcome(void)
 ******函 數 功 能 : 進入歡迎界面
 ******輸       入 :  
 ******輸       出 :  
 ******************************************************************************/
void displaywelcome(void)
{ 
                        

   char welcome1[]="數字溫度計";
   char welcome2[]="制作:";
   char welcome3[]="陳強";
   char welcome4[]="董向遠";
   char welcome5[]="張寧";
   char welcome6[]="2008年 6月";
   
   clearlcd();
  
   lcd_set_cursor(1,3);
   putslcd(welcome1);
  
   lcd_set_cursor(2,1);
   putslcd(welcome2);

   lcd_set_cursor(2,6);
   putslcd(welcome3);

   lcd_set_cursor(3,6);
   putslcd(welcome4);

   lcd_set_cursor(3,3);
   putslcd(welcome5);
   
   lcd_set_cursor(4,1);
   putslcd(welcome6);

}
/*****************************************************************************
 ******函 數 名 稱 : displaymainpage()
 ******函 數 功 能 : 
 ******輸       入 :  
 ******輸       出 :  
 ******************************************************************************/ 
void displaymainpage()
{
   char mainpage1[]="數字時間顯示";
   char mainpage2[]="系統時間設定";
   char mainpage3[]="溫度限制設定";
   char mainpage4[]="歷史溫度回顯";

  lcd_set_cursor(1,2);
  putslcd(mainpage1);
  
  lcd_set_cursor(2,2);
  putslcd(mainpage2);
 
  lcd_set_cursor(3,2);
  putslcd(mainpage3);

  lcd_set_cursor(4,2);
  putslcd(mainpage4);

}
/*****************************************************************************
 ******函 數 名 稱 : displaymainpage_cursor(unsigned x)
 ******函 數 功 能 : 
 ******輸       入 :  
 ******輸       出 :  
 ******************************************************************************/ 
void displaymainpage_cursor(char x)
{  
   char cursorblock[]="  ";
   switch(x)
   {
    case 1:{ 
              lcd_set_cursor(1,1); writedatalcd( 0x10);
              lcd_set_cursor(2,1); putslcd(cursorblock);
              lcd_set_cursor(3,1); putslcd(cursorblock);
              lcd_set_cursor(4,1); putslcd(cursorblock);
              break;
           }

    case 2:{ 
              lcd_set_cursor(1,1); putslcd(cursorblock);
              lcd_set_cursor(2,1); writedatalcd( 0x10);
              lcd_set_cursor(3,1); putslcd(cursorblock);
              lcd_set_cursor(4,1); putslcd(cursorblock);
              break;
           }
    case 3:{ 
              lcd_set_cursor(1,1); putslcd(cursorblock);
              lcd_set_cursor(2,1); putslcd(cursorblock);
              lcd_set_cursor(3,1); writedatalcd( 0x10);
              lcd_set_cursor(4,1); putslcd(cursorblock);
              break;
           }

    case 4:{ 
              lcd_set_cursor(1,1); putslcd(cursorblock);
              lcd_set_cursor(2,1); putslcd(cursorblock);
              lcd_set_cursor(3,1); putslcd(cursorblock);
              lcd_set_cursor(4,1); writedatalcd( 0x10);
              break;
           }
   }

}


/*****************************************************************************
 ******函 數 名 稱 : applydisplay()
 ******函 數 功 能 : 進入應用界面
 ******輸       入 :  
 ******輸       出 :  
 ******************************************************************************/ 
 void applydisplay(void)
{  

   char k=0;                                                 //存儲總數設定變量
   int  i=0;                                                 //存儲時間間隔控制
   char tempdisplay1[]="數字溫度顯示";

   char tempdisplay2[]="溫度";
   char tempdisplay3[]="時刻:";
   
   clearlcd();                                              //清屏   


   lcd_set_cursor(1,2);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区成人| 日本道在线观看一区二区| 亚洲国产aⅴ天堂久久| 中文字幕综合网| 中文字幕在线免费不卡| 亚洲丝袜制服诱惑| 亚洲美女视频在线观看| 亚洲男人都懂的| 一区二区日韩av| 午夜日韩在线观看| 日韩在线一区二区| 麻豆一区二区三区| 国内精品免费**视频| 久久97超碰色| 成人av在线资源网| 一本色道久久综合精品竹菊| 在线观看日韩电影| 欧美一区二区三区在线电影| 欧美变态tickle挠乳网站| 久久精品人人做人人综合| 国产精品国产三级国产普通话三级| 久久久久久麻豆| 亚洲欧美福利一区二区| 午夜一区二区三区视频| 国产综合成人久久大片91| 国产不卡在线视频| 欧美性色欧美a在线播放| 欧美一区二区三级| 国产精品污www在线观看| 一级精品视频在线观看宜春院| 午夜欧美大尺度福利影院在线看| 久久97超碰国产精品超碰| 不卡电影一区二区三区| 欧美日韩成人一区二区| 久久九九久久九九| 亚洲一区在线观看视频| 国产在线精品一区二区夜色| 91在线视频在线| 日韩欧美精品在线| 亚洲美女在线国产| 麻豆国产精品一区二区三区 | 中文在线一区二区| 亚欧色一区w666天堂| 国产一区福利在线| 欧美日韩国产综合久久| 久久精品人人爽人人爽| 五月天欧美精品| 成人深夜在线观看| 日韩精品在线一区二区| 亚洲人成电影网站色mp4| 久草中文综合在线| 欧美日韩精品一区二区在线播放| 日本一区二区三区电影| 日本一区中文字幕| 91久久精品网| 亚洲国产激情av| 精东粉嫩av免费一区二区三区| 91福利精品第一导航| 国产欧美精品在线观看| 久久国产麻豆精品| 欧美日韩精品一区二区天天拍小说| 国产精品精品国产色婷婷| 久久99久久精品| 日韩一级二级三级| 偷拍亚洲欧洲综合| 欧美性色aⅴ视频一区日韩精品| 中文字幕国产一区| 国产成人8x视频一区二区| 日韩欧美你懂的| 麻豆精品一区二区三区| 欧美日韩mp4| 日韩一区精品字幕| 国产欧美视频一区二区三区| 肉色丝袜一区二区| 欧美日韩黄视频| 一区二区视频在线| 日本高清免费不卡视频| 亚洲精品视频在线| 色播五月激情综合网| 亚洲伦在线观看| 一本大道av伊人久久综合| 亚洲美女视频一区| 在线这里只有精品| 亚洲h动漫在线| 欧美一区三区二区| 久久99精品国产麻豆婷婷洗澡| 精品国产污网站| 国产精品一区二区久激情瑜伽 | 国产精品视频在线看| 99久久夜色精品国产网站| 日韩久久一区二区| 色成年激情久久综合| 日韩精品国产欧美| 欧美v国产在线一区二区三区| 久久国产夜色精品鲁鲁99| 久久久不卡网国产精品一区| 国产精品一区二区你懂的| 中文字幕乱码亚洲精品一区| 91视视频在线观看入口直接观看www | 色婷婷久久99综合精品jk白丝| 国产在线不卡一区| 中文字幕一区二区三区四区不卡| 91免费看`日韩一区二区| 亚洲一区二区三区小说| 日韩视频一区二区在线观看| 国产精品69毛片高清亚洲| 亚洲人成小说网站色在线| 7777精品伊人久久久大香线蕉的| 久久99精品久久久久久国产越南| 国产欧美1区2区3区| 欧美性生活影院| 国产精品一区二区三区网站| 亚洲国产人成综合网站| 久久精品男人天堂av| 色视频成人在线观看免| 久久精品国产亚洲高清剧情介绍 | 91 com成人网| 国产在线一区二区| 中文字幕av在线一区二区三区| 成人av资源下载| 秋霞午夜鲁丝一区二区老狼| 久久精品一区二区三区av| 91网上在线视频| 亚洲第一综合色| 国产欧美一区二区三区沐欲| 欧美喷水一区二区| 国产精品 日产精品 欧美精品| 亚洲免费伊人电影| 欧美xxx久久| 国产成人一级电影| 六月丁香婷婷色狠狠久久| 中文字幕亚洲在| 欧美一区二区三区免费大片| 大胆欧美人体老妇| 亚洲人成网站精品片在线观看| 久久免费偷拍视频| 欧美在线高清视频| 国产福利视频一区二区三区| 亚洲综合成人在线| 国产偷国产偷精品高清尤物| 欧美女孩性生活视频| 国产99一区视频免费| 丝袜美腿亚洲色图| 亚洲欧美日韩中文字幕一区二区三区| 91精品欧美久久久久久动漫| 不卡电影一区二区三区| 奇米精品一区二区三区在线观看| 日本一区二区视频在线| 久久天天做天天爱综合色| 欧美三级日韩三级| 91视频在线观看免费| 国产一区二区三区久久久| 亚洲国产成人av网| 国产精品久久久久一区| 日韩欧美国产系列| 日本一区二区成人在线| 91麻豆精品国产91久久久资源速度 | 久久国产精品72免费观看| 一区二区三区影院| 久久精品一区二区三区不卡牛牛| 久久久一区二区三区捆绑**| 337p亚洲精品色噜噜狠狠| 欧美熟乱第一页| 91在线视频播放| 在线欧美一区二区| 色呦呦网站一区| 91同城在线观看| av电影在线观看完整版一区二区| 五月综合激情日本mⅴ| 麻豆精品在线播放| 久久国产精品露脸对白| 美女视频一区在线观看| 日本欧美韩国一区三区| 亚洲线精品一区二区三区| 亚洲最色的网站| 亚洲综合免费观看高清完整版在线| 一区精品在线播放| 亚洲激情图片一区| 日韩高清电影一区| 精品在线播放午夜| 国产精品一线二线三线| 国产999精品久久久久久绿帽| 94色蜜桃网一区二区三区| 在线中文字幕一区| 91麻豆精品国产91久久久久久久久 | 欧美又粗又大又爽| 欧美乱熟臀69xxxxxx| 这里只有精品99re| 中文字幕乱码久久午夜不卡| 中文字幕日韩欧美一区二区三区| 亚洲丝袜另类动漫二区| 亚洲激情图片小说视频| 极品少妇xxxx偷拍精品少妇| 国产成人8x视频一区二区| www.欧美日韩国产在线| 色狠狠av一区二区三区| 国产日韩精品一区二区浪潮av| 亚洲图片激情小说| 青娱乐精品视频在线| 毛片av中文字幕一区二区|