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

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

?? leakage.lst

?? 基于 PLC935單片機的三相漏電檢測系統
?? LST
?? 第 1 頁 / 共 3 頁
字號:
C51 COMPILER V8.05a   LEAKAGE                                                              11/26/2007 12:52:43 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE LEAKAGE
OBJECT MODULE PLACED IN leakage.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE leakage.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          //--------------------------------------------------------------
   2          //這是個電力線路電壓/電流/漏電檢測告警系統
   3          //--------------------------------------------------------------
   4          //系統CPU:   LPC935
   5          //文件名:   leakage.c
   6          //版本:      rev 1.0
   7          //日期:      2007-9-1
   8          //描述:
   9          //-------------------------------------------------------------
  10          //修改人:
  11          //日期:
  12          //描述:                                                                             
  13          //-------------------------------------------------------------
  14          
  15          #include<reg935.h>
  16          #include<absacc.h>
  17          #include<intrins.h>
  18          #include<UserDef.h>
  19          
  20          sbit powerSwitchControl = P0^5;
  21          sbit workIndication     = P2^0;
  22          sbit light              = P1^4 ;
  23          sbit lightControl       = P1^6 ; 
  24          
  25          
  26          uchar bdata flagReg;
  27          sbit initFlag               = flagReg^0;
  28          sbit writeEEPROMBufFullFlag = flagReg^1;        //EEPROM寫滿標志
  29          sbit leakageCurrentAlarm    = flagReg^2;    //漏電報警標志
  30          sbit sampleTimeFlag         = flagReg^3;        //采樣時間
  31          sbit curTransErrFlag        = flagReg^4;        //
  32          sbit batTransErrFlag        = flagReg^5;        //
  33          sbit allDataTransErrFlag    = flagReg^6;        //
  34          sbit recErrorFlag           = flagReg^7;        //
  35          
  36          uchar bdata rdDataFlagReg;
  37          sbit timeVerifyFlag      = rdDataFlagReg^0;     //
  38          sbit rdCurDataFlag       = rdDataFlagReg^1;             //
  39          sbit rdBatDataFlag       = rdDataFlagReg^2;             //
  40          sbit rdAllDataFlag       = rdDataFlagReg^3;             //
  41          
  42          sbit delaySwitchFlag = rdDataFlagReg^4;     //延時關閘刀
  43          
  44          //uchar data recClrCommandData[2];                      //暫存清存儲器的起始地址[0]=高位[1]=低位
  45          uchar data recPresetData[4];                            //暫存預置信息, [0]--消控類型,[1]--漏電流閾值,[2]--延時小時數,[3]--延時
             -分鐘數
  46          uint data  delayTime;
  47          
  48          extern uint idata delayCount;
  49          
  50          uchar data recRdBatDataSize[2];                     //暫存讀的批量數,最大512 批次,[0]--高位;[1]--低位
  51          
  52          uchar data recStatus, recDataSize, recCommandBuf, recChkSum;
  53          uchar data recDataCnt;
  54          
C51 COMPILER V8.05a   LEAKAGE                                                              11/26/2007 12:52:43 PAGE 2   

  55          //發送數據緩沖器, [0]=address [1]=command [2]=size [3..(3+size-1)]=data(0)..data(size-1)
  56          uchar xdata transDataBuf[EEPROM_PAGE_SIZE+3];//EEPROM_PAGE_SIZE = 128
  57          uchar data  transDataSize, transCheckSum;
  58          uchar data  transDataPtr;
  59          
  60          uchar xdata writeEEPROMBuf[EEPROM_PAGE_SIZE];
  61          uchar data  wrEEPROMBufPtr;
  62          
  63          uint data EEPROMWrAddr = EEPROM_ORG_ADDR;    //寫EEPROM 地址指針
  64          uint data EEPROMRdAddr = EEPROM_ORG_ADDR;    //讀EEPROM 地址指針
  65          
  66          
  67          extern uchar data recCurrentTimeBuf[7];      //暫存當前時間緩沖器[0]=世紀[1]=年[2]=月[3]=日[4]=時[5]=分[6]
             -=秒
  68          
  69          extern uchar data lineVolt[3];                       //[0] 保存A 相電壓,[1] 保存B 相電壓 ,[2] 保存C 相電壓
  70          extern uchar data lineCurrent[3];                        //[0] 保存A 相電流,[1] 保存B 相電流 ,[2] 保存C 相電流
  71          
  72          extern uchar data leakageCurrentMsg[3];          //漏電信息
  73          /*漏電信息
  74          [0]--漏電情況,1: 有漏電;     0: 無漏電
  75          [1]--漏電電流值
  76          [2]--漏電線路,1: 表示A相漏電;2: 表示B相漏電; 3:表示C相漏電
  77          */
  78          
  79          uchar idata delaySwitchOrgCnt[3];
  80          uchar idata delaySwitchEndCnt[3];
  81          
  82          void  Delay(uchar);
  83          void  Lpc935Init(void);
  84          uchar ReadID(void);
  85          void  ByteTransBuf(uchar, uchar);
  86          void  PageTransBuf(uchar);
  87          void  WriteI2CBufData(void);
  88          void  SampleLeakageCurrent(void);
  89          extern void ReadEEPROMByte(uchar, uchar, uchar*);
  90          extern void EEPROMWriteByte(uchar, uchar, uchar*);
  91          extern void ADConvert(void);
  92          
  93          extern void GetBus(void);
  94          extern void SendByte(uchar);
  95          extern bit  ISendStr(uchar, uint , uchar*, uchar);
  96          extern bit  IRcvStr(uchar, uint, uchar *, uchar);
  97          
  98          //---------------------------------------------------------------------------
  99          //函數名稱:main(void)
 100          //功能描述:主函數
 101          //輸入:無
 102          //輸出:無
 103          //---------------------------------------------------------------------------
 104          main(void)
 105          {
 106   1              Lpc935Init();   
 107   1      
 108   1              Delay(200);                                          //延時200ms
 109   1      
 110   1          lightControl = 1;
 111   1      
 112   1              flagReg = 0;
 113   1              rdDataFlagReg = 0;
 114   1      
 115   1              recStatus = INIT_STAT;                          //
C51 COMPILER V8.05a   LEAKAGE                                                              11/26/2007 12:52:43 PAGE 3   

 116   1      
 117   1          //wrEEPROMBufPtr = writeEEPROMBuf;
 118   1      
 119   1              ReadEEPROMByte(EEPROM_ALARM_TYPE_ORG_ADDR, 4, recPresetData);    //讀取漏電保護類型
 120   1      
 121   1              ReadEEPROMByte(EEPROM_TIME_ADDR, 7, recCurrentTimeBuf);               //讀取已存的時間
 122   1      
 123   1              delayTime = recPresetData[2];           //高位字節傳送
 124   1              delayTime = delayTime<<8; 
 125   1              delayTime = recPresetData[3];           //低位字節傳送  
 126   1      
 127   1              while(1)
 128   1          {           
 129   2                  recPresetData[1] = 0x9B ;
 130   2                      if(initFlag)
 131   2                      {
 132   3                              EA = 0;
 133   3                              
 134   3                              EEPROMWriteByte(EEPROM_ALARM_TYPE_ORG_ADDR, 4, recPresetData);
 135   3                              
 136   3                              EA = 1;
 137   3                              initFlag = FALSE;
 138   3                      }
 139   2      
 140   2                      else if(timeVerifyFlag)
 141   2                               {
 142   3                                  EA = 0;                         //中斷禁止
 143   3                              
 144   3                                  EEPROMWriteByte(EEPROM_CUR_TIME_ORG_ADDR, 7, recCurrentTimeBuf);
 145   3                              
 146   3                                  EA = 1;                         //打開中斷
 147   3                                  timeVerifyFlag = FALSE;
 148   3                               }
 149   2      
 150   2                      else if(rdCurDataFlag)
 151   2                               {
 152   3                                  ByteTransBuf(COM_RD_CUR_DATA, 16);
 153   3                                  SBUF =  SYNC;
 154   3                                  transCheckSum = SYNC;
 155   3                                  if(!curTransErrFlag)
 156   3                                        rdCurDataFlag = FALSE;
 157   3                                  else
 158   3                                        rdCurDataFlag = TRUE;
 159   3                               }
 160   2      
 161   2                      else if(rdBatDataFlag)
 162   2                               {
 163   3                                  if(EEPROMRdAddr==EEPROMWrAddr)
 164   3                                      {
 165   4                                         rdBatDataFlag = FALSE;
 166   4                                      }
 167   3                                  else
 168   3                                      {
 169   4                                         if(!batTransErrFlag)
 170   4                                         {
 171   5                                                PageTransBuf(COM_RD_BATCH_DATA);
 172   5                                                SBUF =  SYNC;
 173   5                                        transCheckSum = SYNC;
 174   5                                              }
 175   4                                          else
 176   4                                              {
 177   5                                                 EEPROMRdAddr = EEPROMRdAddr - 128;
C51 COMPILER V8.05a   LEAKAGE                                                              11/26/2007 12:52:43 PAGE 4   

 178   5                                                 PageTransBuf(COM_RD_BATCH_DATA);
 179   5                                                 SBUF =  SYNC;
 180   5                                         transCheckSum = SYNC;
 181   5                                                 batTransErrFlag = FALSE;
 182   5                                              }
 183   4                                      }
 184   3      
 185   3                                }
 186   2      
 187   2                      else if(rdAllDataFlag)
 188   2                              {
 189   3                                 if(EEPROMRdAddr==EEPROMWrAddr)
 190   3                                 {
 191   4                                         rdAllDataFlag = FALSE;
 192   4                                 }
 193   3                                 else
 194   3                                 {
 195   4                                        if(!allDataTransErrFlag)
 196   4                                        {
 197   5                                               PageTransBuf(COM_RD_ALL_DATA);
 198   5                                               SBUF =  SYNC;
 199   5                                       transCheckSum = SYNC;
 200   5                                        }
 201   4                                        else
 202   4                                        {
 203   5                                               EEPROMRdAddr = EEPROMRdAddr - 128;
 204   5                                               PageTransBuf(COM_RD_ALL_DATA);
 205   5                                               SBUF =  SYNC;
 206   5                                       transCheckSum = SYNC;
 207   5                                               allDataTransErrFlag = FALSE;
 208   5                                        }
 209   4                                 }
 210   3                              }
 211   2      
 212   2                      else if(recErrorFlag)
 213   2                               {
 214   3                                  transDataBuf[0] = ReadID();
 215   3                                  transDataBuf[1] = recCommandBuf|0x80;
 216   3                                  transDataBuf[2] = 0;
 217   3      
 218   3                                  SBUF =  SYNC;
 219   3                                  transCheckSum = SYNC;
 220   3      
 221   3                                  recErrorFlag = FALSE;
 222   3                               }
 223   2      
 224   2                      else if(delaySwitchFlag)
 225   2                               {
 226   3                                  if(delayCount==delayTime)
 227   3                                      {
 228   4                                         powerSwitchControl = OPEN_SWITCH;        //斷開閘刀
 229   4                                      }
 230   3                                  else if(delayCount>=(delayTime+1))
 231   3                                           {
 232   4                                              powerSwitchControl = CLOSE_SWITCH;  //取消閘刀控制
 233   4                                              delaySwitchFlag = FALSE;
 234   4                                           }
 235   3      
 236   3                                       else
 237   3                                           {
 238   4                                               powerSwitchControl = CLOSE_SWITCH; //不切斷閘刀
 239   4                                           }
C51 COMPILER V8.05a   LEAKAGE                                                              11/26/2007 12:52:43 PAGE 5   

 240   3      
 241   3                                }
 242   2      
 243   2                      else if(sampleTimeFlag)
 244   2                               {
 245   3                                  EA = 0;
 246   3                                      
 247   3                                  ADConvert();        
 248   3      
 249   3                                  WriteI2CBufData();
 250   3      
 251   3                                  EA = 1;
 252   3                                                                                                                                                                

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲黄色av一区| 亚洲精品视频一区二区| 久草精品在线观看| 精品国产精品网麻豆系列| 久久99精品久久久久久久久久久久| 在线不卡一区二区| 日韩电影在线观看一区| 欧美sm极限捆绑bd| 国产九色sp调教91| 亚洲美女在线国产| 欧美另类z0zxhd电影| 免费高清在线一区| 久久久一区二区三区捆绑**| 成人av电影免费在线播放| 一区二区三区精品视频| 日韩视频在线你懂得| 国产精品123| 悠悠色在线精品| 日韩精品一区二区在线| 高清不卡在线观看| 亚洲福利视频一区| 久久久久久久av麻豆果冻| 色狠狠一区二区三区香蕉| 日本少妇一区二区| 国产精品高清亚洲| 91精品一区二区三区久久久久久| 韩国三级电影一区二区| 亚洲精品视频观看| 欧美xxx久久| 色国产精品一区在线观看| 欧美aaaaaa午夜精品| 成人欧美一区二区三区白人| 777奇米四色成人影色区| 国产精品资源在线看| 亚洲影视在线观看| 久久久久99精品一区| 欧美在线高清视频| 高清在线不卡av| 无码av免费一区二区三区试看 | 99re66热这里只有精品3直播| 亚洲a一区二区| 欧美国产国产综合| 日韩欧美成人一区二区| 欧洲一区二区三区免费视频| 国产精品一区二区黑丝| 日本欧美肥老太交大片| 亚洲色图欧洲色图| 国产欧美一区二区三区在线看蜜臀| 欧美三级视频在线观看| 成人av在线播放网址| 狠狠久久亚洲欧美| 日韩av电影一区| 亚洲国产精品视频| 亚洲欧美在线另类| 欧美经典一区二区三区| 91精品久久久久久久91蜜桃| 日本韩国欧美三级| 91在线porny国产在线看| 国产suv精品一区二区三区| 久久精工是国产品牌吗| 水蜜桃久久夜色精品一区的特点| 亚洲欧洲无码一区二区三区| 国产清纯白嫩初高生在线观看91 | 91在线你懂得| 精品一区二区三区免费播放| 日韩精品乱码免费| 亚洲第一会所有码转帖| 亚洲综合色成人| 亚洲激情五月婷婷| 一区二区中文字幕在线| 综合亚洲深深色噜噜狠狠网站| 久久久久久免费网| 久久久久99精品一区| 亚洲精品一区二区三区影院| 日韩一区二区精品葵司在线| 69堂国产成人免费视频| 欧美一区二区三区在| 欧美电影影音先锋| 这里是久久伊人| 日韩一区和二区| 精品国产免费一区二区三区香蕉| 欧美第一区第二区| 精品国产一区a| 国产女同互慰高潮91漫画| 国产精品天美传媒沈樵| 亚洲欧美视频在线观看视频| 一区二区三区在线观看国产| 亚洲高清在线视频| 日韩av电影免费观看高清完整版在线观看| 天堂久久一区二区三区| 久久精品国产精品亚洲精品| 国产在线精品一区在线观看麻豆| 国产一区二区三区四区五区入口| 国内精品不卡在线| 91在线播放网址| 欧美日韩国产美| 欧美成人精品高清在线播放| 国产丝袜欧美中文另类| 依依成人综合视频| 亚洲超丰满肉感bbw| 久久er精品视频| av一区二区不卡| 69堂成人精品免费视频| 欧美精品一区二区不卡| 国产精品成人一区二区三区夜夜夜| 樱桃国产成人精品视频| 久久99国产精品久久99果冻传媒| 国产精品影视天天线| 欧美亚洲丝袜传媒另类| 日韩视频在线观看一区二区| 亚洲国产精品精华液ab| 亚洲一区二区三区影院| 国产一区二区免费在线| 91网上在线视频| 日韩精品一区二区三区蜜臀| 国产精品第四页| 麻豆免费看一区二区三区| 北岛玲一区二区三区四区| 欧美群妇大交群中文字幕| 久久久国产一区二区三区四区小说| 亚洲免费观看高清完整| 久久99国产精品久久99果冻传媒| 99re亚洲国产精品| 精品国产一区二区三区四区四 | 亚洲一区欧美一区| 国产精品一区二区无线| 欧美日韩一区二区三区在线| 久久这里只有精品首页| 午夜激情久久久| www.日本不卡| 欧美不卡激情三级在线观看| 亚洲永久精品国产| 不卡在线观看av| 精品sm在线观看| 五月天国产精品| 色一情一乱一乱一91av| 久久精品日韩一区二区三区| 日韩国产欧美在线视频| 99久久精品国产一区| 国产亚洲精品精华液| 日韩精品电影一区亚洲| 99久久免费视频.com| 久久这里只精品最新地址| 日韩和欧美一区二区三区| 91免费视频大全| 国产精品无人区| 国产精品影视在线| 日韩欧美一区二区久久婷婷| 亚洲国产精品一区二区久久恐怖片| www.欧美精品一二区| 国产女人18水真多18精品一级做| 男女男精品视频| 欧美精品777| 亚洲国产乱码最新视频 | 精品国产精品一区二区夜夜嗨| 亚洲福利一二三区| 91久久精品网| 亚洲精品高清视频在线观看| 97久久超碰国产精品电影| 欧美激情在线免费观看| 国产精品亚洲视频| 国产欧美一区在线| 国产99久久精品| 中文子幕无线码一区tr| 高清不卡一区二区在线| 亚洲国产成人一区二区三区| 国产成人福利片| 国产精品色噜噜| 99亚偷拍自图区亚洲| 亚洲欧美日韩在线不卡| 一本大道久久精品懂色aⅴ| 亚洲欧美自拍偷拍色图| 色婷婷综合中文久久一本| 中文字幕亚洲在| 色呦呦网站一区| 一区二区三区毛片| 欧美精品自拍偷拍动漫精品| 日本美女一区二区| 精品国产乱码久久久久久蜜臀| 韩国成人福利片在线播放| 欧美精品一区二区三区四区| 国产成a人亚洲| 亚洲视频在线一区| 欧美伊人久久大香线蕉综合69| 亚洲成a人片在线观看中文| 在线综合亚洲欧美在线视频| 韩国av一区二区| 国产精品久久久久久久浪潮网站 | 91捆绑美女网站| 一区二区久久久久久| 欧美肥妇bbw| 国产福利91精品| 亚洲免费观看在线视频| 欧美高清性hdvideosex| 国产伦精品一区二区三区免费| 中文字幕高清不卡| 欧美日韩精品三区| 国产乱一区二区| 亚洲伊人色欲综合网| 欧美白人最猛性xxxxx69交|