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

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

?? 智能溫控器.lst

?? 當溫控開關打開時
?? LST
?? 第 1 頁 / 共 2 頁
字號:
C51 COMPILER V7.08   SYSTEM_ALARM                                                          04/04/2007 16:55:38 PAGE 1   


C51 COMPILER V7.08, COMPILATION OF MODULE SYSTEM_ALARM
OBJECT MODULE PLACED IN system_alarm.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE system_alarm.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*******************************************************************
   2                                    智能溫控器
   3          
   4          問題描述:當溫控開關打開時,若測得環境溫度大于設定溫度,則繼電器吸合
   5                            ,啟動壓縮機工作;若測得環境溫度小于設定溫度,則繼電器釋放,
   6                            壓縮機停止工作。
   7                    該實驗可以應用于對溫度控制精度要求不是很高的場合,例如,糧倉,
   8                            電冰箱,空調,電飯鍋等。如果配以通訊接口,可以做成多點溫度檢
   9                    測監控系統。具有極強的擴展性。
  10          
  11          作者:    yiwei  "shannxi university of technolog " 
  12          日期:    2007.4.1在proteus上仿真成功;
  13                    2007.4.3電路板焊接調試成功
  14          
  15          參考資料:[1] 周興華 編著 《單片機智能產品c語言設計實例祥解》
  16                    [2]《電子制作》 2006.11
  17                    [3] www.proteus.com
  18          
  19          注意: 此文檔為仿真程序,若要在試驗板上驗證,需要須改一下函數
  20                  
  21          
  22          void lcd_wait(void)
  23          {
  24              DATAPORT=0xff;           
  25                  LCM_EN=1;
  26              LCM_RS=0;                           
  27              LCM_RW=1;                           
  28              _nop_();
  29              while(DATAPORT&BUSY);
  30                  LCM_EN=0;
  31                  
  32          }
  33          
  34          *******************************************************************/
  35          
  36          #include<reg51.h>
  37          #include<intrins.h>
  38          #include <absacc.h>
  39          #define uchar unsigned char
  40          #define uint   unsigned int
  41          
  42          #define BUSY  0x80                               //lcd忙檢測標志
  43          #define DATAPORT P0                              //定義P0口為LCD通訊端口
  44          #define PLAYE_ADDR XBYTE[0XBFFF]                 //語音報警地址
  45          
  46          sbit RED_ALARM=P1^0;                                             //紅色指示燈
  47          sbit WRITE_ALARM=P1^1;                                          //白色指示燈
  48          sbit GREEN_ALARM=P1^2;                                          //綠色指示燈
  49          sbit P1_4=P1^4;                                             //時鐘調整
  50          sbit P1_5=P1^5;                                                 //時鐘加
  51          sbit P1_6=P1^6;                                                 //時鐘減
  52          
  53          sbit DQ = P1^7;                                                 //定義ds18b20通信端口 
  54          sbit LCM_RS=P2^0;                                                               //數據/命令端
  55          sbit LCM_RW=P2^1;                                                               //讀/寫選擇端
C51 COMPILER V7.08   SYSTEM_ALARM                                                          04/04/2007 16:55:38 PAGE 2   

  56          sbit LCM_EN=P2^2;                                               //LCD使能信號
  57          sbit ad_busy=P3^2;                                              //adc中斷方式接口
  58          sbit RECLED_EOC=P3^5;                                           //ISD1420放音結束查詢標志
  59          sbit OUT=P3^7;
  60          
  61          uchar ad_data;                                                  //ad采樣值存儲                                          
  62          uchar seconde=0;                                                //定義并初始化時鐘變量
  63          uchar minite=0;
  64          uchar hour=12;
  65          uchar mstcnt=0;
  66          uchar temp1,temp2,temp;                                     //溫度顯示變量
  67          uchar t,set;
  68          uchar K;
  69          bit ON_OFF=0;
  70          bit outflag;
  71          
  72          uchar code str0[]={"---  :  :  ---  "};
  73          uchar code str1[]={"SET:  C SA:  . C"};
  74          
  75          void delay_LCM(uint);                                                                                                   //LCD延時子程序
  76          void initLCM( void);                                                                                                    //LCD初始化子程序
  77          void lcd_wait(void);                                                                                                    //LCD檢測忙子程序
  78          void WriteCommandLCM(uchar WCLCM,uchar BusyC);                              //寫指令到ICM子函數
  79          void WriteDataLCM(uchar WDLCM);                                             //寫數據到LCM子函數
  80          void DisplayOneChar(uchar X,uchar Y,uchar DData);                           //顯示指定坐標的一個字符子函數
  81          void DisplayListChar(uchar X,uchar Y,uchar code *DData);                    //顯示指定坐標的一串字符子函數
  82          void init_timer0(void);                                                                                         //定時器初始化
  83          void displayfun1(void);
  84          void displayfun2(void);
  85          void displayfun3(void);
  86          void displayfun4(void);
  87          void keyscan(void );                                                                                        //鍵盤掃描子程序
  88          void set_adj(void);
  89          void inc_key(void);
  90          void dec_key(void);
  91          void delay_18B20(unsigned int i);
  92          void Init_DS18B20(void) ;
  93          uchar ReadOneChar(void);
  94          void WriteOneChar(unsigned char dat);
  95          void ReadTemperature(void);
  96          void ad0809(void);
  97          void playalarm(void); 
  98          
  99          
 100          /*********延時K*1ms,12.000mhz**********/
 101          
 102          void delay_LCM(uint k)
 103          {
 104   1          uint i,j;
 105   1          for(i=0;i<k;i++)
 106   1          {
 107   2              for(j=0;j<60;j++)
 108   2                      {;}
 109   2          }
 110   1      }   
 111          /**********寫指令到ICM子函數************/
 112          
 113          void WriteCommandLCM(uchar WCLCM,uchar BusyC)
 114          {
 115   1          if(BusyC)lcd_wait();
 116   1              DATAPORT=WCLCM;
 117   1          LCM_RS=0;                   // 選中指令寄存器
C51 COMPILER V7.08   SYSTEM_ALARM                                                          04/04/2007 16:55:38 PAGE 3   

 118   1          LCM_RW=0;                   // 寫模式       
 119   1          LCM_EN=1;    
 120   1              _nop_();   
 121   1              _nop_();
 122   1              _nop_(); 
 123   1          LCM_EN=0;  
 124   1      }
 125          
 126          /**********寫數據到LCM子函數************/
 127          
 128          void WriteDataLCM(uchar WDLCM)
 129          { 
 130   1          lcd_wait( );            //檢測忙信號    
 131   1              DATAPORT=WDLCM;
 132   1          LCM_RS=1;               // 選中數據寄存器
 133   1          LCM_RW=0;                   // 寫模式
 134   1          LCM_EN=1;
 135   1          _nop_();
 136   1              _nop_();
 137   1              _nop_();
 138   1          LCM_EN=0;
 139   1      }
 140          
 141          /***********lcm內部等待函數*************/
 142          
 143          void lcd_wait(void)
 144          {
 145   1          DATAPORT=0xff;           
 146   1              LCM_EN=1;
 147   1          LCM_RS=0;                           
 148   1          LCM_RW=1;                           
 149   1          _nop_();
 150   1          while(DATAPORT&BUSY)
 151   1              {  LCM_EN=0;
 152   2                 _nop_();
 153   2                 _nop_();
 154   2                 LCM_EN=1;
 155   2                 _nop_();
 156   2                 _nop_();
 157   2                 }
 158   1              LCM_EN=0;
 159   1              
 160   1      }
 161          
 162          /**********LCM初始化子函數***********/
 163          
 164          void initLCM( )
 165          {   
 166   1              DATAPORT=0;     
 167   1              delay_LCM(15);
 168   1              WriteCommandLCM(0x38,0);    //三次顯示模式設置,不檢測忙信號
 169   1          delay_LCM(5); 
 170   1          WriteCommandLCM(0x38,0);
 171   1          delay_LCM(5); 
 172   1          WriteCommandLCM(0x38,0);
 173   1          delay_LCM(5); 
 174   1      
 175   1          WriteCommandLCM(0x38,1);    //8bit數據傳送,2行顯示,5*7字型,檢測忙信號
 176   1          WriteCommandLCM(0x08,1);    //關閉顯示,檢測忙信號
 177   1          WriteCommandLCM(0x01,1);    //清屏,檢測忙信號
 178   1          WriteCommandLCM(0x06,1);    //顯示光標右移設置,檢測忙信號
 179   1          WriteCommandLCM(0x0c,1);    //顯示屏打開,光標不顯示,不閃爍,檢測忙信號
C51 COMPILER V7.08   SYSTEM_ALARM                                                          04/04/2007 16:55:38 PAGE 4   

 180   1      }
 181          
 182          /****************顯示指定坐標的一個字符子函數*************/
 183          
 184          void DisplayOneChar(uchar X,uchar Y,uchar DData)
 185          {
 186   1          Y&=1;
 187   1          X&=15;
 188   1          if(Y)X|=0x40;               //若y為1(顯示第二行),地址碼+0X40
 189   1          X|=0x80;                    //指令碼為地址碼+0X80
 190   1          WriteCommandLCM(X,0);
 191   1          WriteDataLCM(DData);
 192   1      }
 193          
 194          /***********顯示指定坐標的一串字符子函數***********/
 195          
 196          void DisplayListChar(uchar X,uchar Y,uchar code *DData)
 197          {
 198   1          uchar ListLength=0;
 199   1          Y&=0x01;
 200   1          X&=0x0f;
 201   1          while(X<16)
 202   1          {
 203   2              DisplayOneChar(X,Y,DData[ListLength]);
 204   2              ListLength++;
 205   2              X++;
 206   2          }
 207   1      }
 208          
 209          /***********ds18b20延遲子函數(晶振12MHz )*******/ 
 210          
 211          void delay_18B20(unsigned int i)
 212          {
 213   1              while(i--);
 214   1      }
 215          
 216          /**********ds18b20初始化函數**********************/
 217          
 218          void Init_DS18B20(void) 
 219          {
 220   1               unsigned char x=0;
 221   1               DQ = 1;          //DQ復位
 222   1               delay_18B20(8);  //稍做延時
 223   1               DQ = 0;          //單片機將DQ拉低
 224   1               delay_18B20(80); //精確延時 大于 480us
 225   1               DQ = 1;          //拉高總線
 226   1               delay_18B20(14);
 227   1               x=DQ;            //稍做延時后 如果x=0則初始化成功 x=1則初始化失敗
 228   1               delay_18B20(20);
 229   1      }
 230          
 231          /***********ds18b20讀一個字節**************/  
 232          
 233          unsigned char ReadOneChar(void)
 234          {
 235   1              uchar i=0;
 236   1              uchar dat = 0;
 237   1              for (i=8;i>0;i--)
 238   1               {
 239   2                        DQ = 0; // 給脈沖信號
 240   2                        dat>>=1;
 241   2                        DQ = 1; // 給脈沖信號
C51 COMPILER V7.08   SYSTEM_ALARM                                                          04/04/2007 16:55:38 PAGE 5   

 242   2                        if(DQ)
 243   2                        dat|=0x80;
 244   2                        delay_18B20(4);
 245   2               }
 246   1              return(dat);
 247   1      }
 248          
 249          /*************ds18b20寫一個字節****************/  
 250          
 251          void WriteOneChar(uchar dat)
 252          {
 253   1              unsigned char i=0;
 254   1              for (i=8; i>0; i--)
 255   1              {
 256   2                      DQ = 0;
 257   2                      DQ = dat&0x01;
 258   2              delay_18B20(5);
 259   2                      DQ = 1;
 260   2              dat>>=1;
 261   2       }
 262   1      }
 263          
 264          /**************讀取ds18b20當前溫度************/
 265          
 266          void ReadTemperature(void)
 267          {
 268   1              unsigned char a=0;
 269   1              unsigned char b=0;
 270   1              unsigned char t=0;
 271   1      
 272   1              Init_DS18B20();
 273   1              WriteOneChar(0xCC);     // 跳過讀序號列號的操作
 274   1              WriteOneChar(0x44);     // 啟動溫度轉換
 275   1      
 276   1              delay_18B20(100);       // this message is wery important
 277   1      
 278   1              Init_DS18B20();
 279   1              WriteOneChar(0xCC);     //跳過讀序號列號的操作
 280   1              WriteOneChar(0xBE);     //讀取溫度寄存器等(共可讀9個寄存器) 前兩個就是溫度
 281   1      
 282   1              delay_18B20(100);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美成人a∨高清免费观看| 日韩成人午夜精品| 国产精品1区二区.| 久久久久久久久久久久久久久99 | 久久久久久久久久看片| 国产iv一区二区三区| 亚洲免费大片在线观看| 欧美亚洲一区二区三区四区| 亚洲国产视频一区二区| 日韩你懂的电影在线观看| 国产福利一区在线| 中文字幕制服丝袜一区二区三区| 91亚洲男人天堂| 亚洲福利电影网| 精品日韩成人av| av不卡在线观看| 三级久久三级久久| 国产亚洲精久久久久久| 91国内精品野花午夜精品| 蜜臀av性久久久久蜜臀aⅴ四虎| 久久精品亚洲乱码伦伦中文| 中文字幕亚洲区| 色综合网色综合| 日本成人在线不卡视频| 欧美电影免费观看高清完整版在| 国产不卡视频在线观看| 视频在线观看一区| 国产精品久久久久精k8| 欧美成人a视频| 欧洲精品中文字幕| 91啪亚洲精品| 亚洲成人av福利| 国产欧美一区二区在线观看| 欧美日本在线播放| 99精品视频在线观看免费| 精品一区二区三区免费| 天堂精品中文字幕在线| 成人免费视频在线观看| 国产午夜亚洲精品午夜鲁丝片 | 久久久久久久久一| 911精品国产一区二区在线| 99视频有精品| 国产黄人亚洲片| 美腿丝袜在线亚洲一区| 午夜精品123| 亚洲欧洲精品一区二区精品久久久| 欧美一区二区三区在线观看| 欧美在线视频全部完| www.欧美.com| 成人免费视频caoporn| 国产精品一级黄| 国产呦精品一区二区三区网站| 日日骚欧美日韩| 亚洲18女电影在线观看| 樱花草国产18久久久久| 亚洲少妇30p| 亚洲精品久久久蜜桃| 亚洲欧美日本在线| 综合亚洲深深色噜噜狠狠网站| 国产欧美日韩麻豆91| 久久久www免费人成精品| 久久蜜臀中文字幕| 久久久亚洲精品石原莉奈| 26uuuu精品一区二区| 久久久久成人黄色影片| 国产精品美女一区二区三区 | 奇米影视7777精品一区二区| 日韩电影一区二区三区四区| 日韩精品免费视频人成| 日产国产欧美视频一区精品| 日本不卡123| 国产精品自拍一区| 成人久久视频在线观看| 99久久精品国产导航| 在线亚洲一区观看| 欧美日韩成人一区| 日韩精品专区在线| 久久久久成人黄色影片| 亚洲欧美日本韩国| 全国精品久久少妇| 成人午夜碰碰视频| 在线观看视频欧美| 日韩一区二区中文字幕| 久久精品一区二区| 亚洲欧美综合另类在线卡通| 午夜天堂影视香蕉久久| 极品少妇xxxx偷拍精品少妇| 99久久精品情趣| 精品视频一区二区三区免费| 精品国产sm最大网站免费看| 中文字幕一区二区在线播放| 亚洲欧美日韩电影| 久久精品国产999大香线蕉| 国产91丝袜在线播放0| 欧美在线一二三| 久久午夜电影网| 亚洲成av人综合在线观看| 国产真实乱偷精品视频免| 不卡大黄网站免费看| 欧美精品v国产精品v日韩精品| 久久精品视频网| 亚洲高清一区二区三区| 国产91精品一区二区麻豆亚洲| 91国产免费看| 久久九九久久九九| 午夜a成v人精品| 不卡一区二区三区四区| 精品国产一区二区国模嫣然| 亚洲综合视频在线| 成人在线综合网| 2020国产精品| 天天操天天色综合| 欧美性猛交xxxxxxxx| 国产精品嫩草99a| 国产精品亚洲专一区二区三区 | 亚洲免费av观看| 国产不卡高清在线观看视频| 日韩午夜精品视频| 天天色综合成人网| 欧美色成人综合| 亚洲二区视频在线| 色国产精品一区在线观看| 久久精品亚洲麻豆av一区二区| 麻豆高清免费国产一区| 欧美久久久一区| 亚洲一区二区在线免费观看视频| 97久久精品人人做人人爽50路| 日本一区二区成人| 国产乱码精品一区二区三区av| 欧美一区二区成人| 蜜桃视频在线观看一区二区| 日韩一区二区视频| 日韩精品久久理论片| 91精品国产高清一区二区三区 | 国产成人免费视频精品含羞草妖精 | 美女视频黄频大全不卡视频在线播放| 91浏览器入口在线观看| 国产精品视频一二三| 成人国产精品免费| 中文字幕成人在线观看| 成人午夜看片网址| 亚洲人成网站色在线观看| 日本伦理一区二区| 亚洲一区二区欧美日韩| 欧美在线免费观看视频| 亚洲一二三四久久| 欧美精选午夜久久久乱码6080| 日韩中文欧美在线| 精品免费日韩av| 国产成人精品午夜视频免费| 国产精品久久久久三级| 在线视频观看一区| 蜜臂av日日欢夜夜爽一区| 久久网站热最新地址| jiyouzz国产精品久久| 一区二区三区中文在线| 欧美一级在线观看| 成人性视频免费网站| 亚洲人成网站精品片在线观看| 欧美三区在线观看| 国产一区二区福利| 亚洲男人的天堂网| 欧美高清hd18日本| 国产精品一区专区| 一二三区精品视频| 久久亚洲精华国产精华液| av在线这里只有精品| 天天操天天综合网| 国产精品久久久久影院老司 | 国产成人亚洲综合a∨婷婷图片 | 国产一区二区三区免费看| 国产精品久久久久三级| 欧美美女视频在线观看| 国产精品自拍av| 五月天欧美精品| 日本一区二区免费在线观看视频 | 91精品国产综合久久久蜜臀图片| 激情深爱一区二区| 亚洲一区二区欧美日韩| 久久人人爽爽爽人久久久| 色999日韩国产欧美一区二区| 日本美女一区二区三区视频| 国产精品国产三级国产普通话99| 欧美日韩精品一区二区| 大胆欧美人体老妇| 日本女优在线视频一区二区| 18欧美乱大交hd1984| 日韩欧美一级特黄在线播放| 日本高清成人免费播放| 成人免费视频caoporn| 久久99精品国产麻豆婷婷| 亚洲综合激情小说| 最新欧美精品一区二区三区| 欧美一级xxx| 精品婷婷伊人一区三区三| 97精品国产露脸对白| 成人禁用看黄a在线| 国产精品白丝jk白祙喷水网站| 蜜臀a∨国产成人精品| 婷婷激情综合网|