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

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

?? 單相復費率.c

?? 單相復費率電能表源代碼 支持紅外、 RS85通訊。支持尖、峰、平、谷四個費率
?? C
?? 第 1 頁 / 共 5 頁
字號:
        SeriesSendFg=1;
    }
    else
    {
        SeriesSendFg=0;
        CmdParseFg=0;
    }
}
//命令解析
void CmdParse(void)
{
    unsigned char data  CheckSum;
    unsigned char data i,j,k;
    unsigned char data IdRight;
    j=0x40; 
    //判斷是否有未發送數據
    if(TimeSendFg)
    {
        //if(ComTimeA>=1)
        //{            
            SeriesSend();    
            TimeSendFg=0;            
        //}
    }
    else
    {
        //數據解析標志是否有效
        if(CmdParseFg)
        {
          DataDeal();
          CmdParseFg=0;
          CheckSum=0;
          //數據校驗
          for(i=0;i<(ComDataBuf[9]+10);i++)
          {
            CheckSum=CheckSum+ComDataBuf[i]; 
          }
          //校驗和是否相等--如果相等開始校驗地址
          if(CheckSum==ComDataBuf[ComDataBuf][9]+10])
          {            
            for(i=0;i<6;i++)
            {
              k=IicByteRead(0xa0,j);
              if(ComDataBuf[1+i]==k)
              {
                IdRight=0x55;
              }
              else
              {
                IdRight=0x00;
                break;
              }
              j++;
            }
            //地址如果正確(非廣播命令)開始解析命令
            if(IdRight==0x55)
            {                
                switch(ComDataBuf[8])
                {
                  case 0x01 : 
                              switch(ComDataBuf[11])
                              {
                                case 0x90:
                                            switch(ComDataBuf[10])
                                            {
                                              case 0x1f:  //讀當前有功電量集合  
                                                          for(i=0;i<4;i++)
                                                          {
                                                            IIcBuf[i]=SumPulseData[i];
                                                          }
                                                          for(i=4;i<8;i++)
                                                          {
                                                            IIcBuf[i]=FengPulseData[i-4];
                                                          }
                                                          for(i=8;i<12;i++)
                                                          {
                                                            IIcBuf[i]=PingPulseData[i-8];
                                                          }
                                                          for(i=12;i<16;i++)
                                                          {
                                                            IIcBuf[i]=GuPulseData[i-12];
                                                          }
                                                           CmdPick(0,0,0,0,IIcBuf,16,0,1);
                                              break;
                                              case 0x20:  //讀反向總電量
                                                          CmdPick(0x00,0x00,0x00,0,ReversePulseData,4,0,1);
                                              break;
                                            }
                                break;
                                case 0xb0:
                                            switch(ComDataBuf[10])
                                            {
                                              case 0x20:  //讀最后一次反向啟始時間
                                                          CmdPick(0xa0,0x38,4,0,0,0,1,0);
                                              break;
                                              case 0x21:  //讀反向累積總時間
                                                          CmdPick(0x00,0x00,0x00,0,ReverseTime,3,0,0);
                                              break;
                                            }
                                break; 
                                case 0xb2:
                                            switch(ComDataBuf[10])
                                            {
                                              case 0x10:  //讀最近一次編程時間
                                                          CmdPick(0xa0,0x3c,4,0,0,0,1,0);
                                              break;
                                              case 0x12:  //讀編程次數
                                                          CmdPick(0xa0,0x68,2,0,0,0,1,0);
                                              break;
                                            }
                                break;  
                                case 0xc0:
                                            switch(ComDataBuf[10])
                                            {
                                              case 0x10:  //讀當前日期
                                                          CmdPick(0,0,0,0,DaysBuf,4,0,0);
                                              break;
                                              case 0x11:  //讀當前時間
                                                          CmdPick(0,0,0,0,TimeBuf,3,0,0);
                                              break;
                                              case 0x20:  //讀電表運行狀態字
                                                          CmdPick(0xa0,0x65,1,0,0,0,1,0);
                                              break;
                                              case 0x30:  //讀電表脈沖常數
                                                          CmdPick(0xa0,0x6d,3,0,0,0,1,0);
                                              break; 
                                              case 0x32:  //讀電表表號
                                                          CmdPick(0xa0,0x46,0x06,0,0,0,1,0);
                                              break;  
                                              case 0x33:  //讀電表地址
                                                          CmdPick(0xa0,0x40,0x06,0,0,0,1,0);
                                              break;   
                                            }
                                break;
                                case 0xc1:
                                            switch(ComDataBuf[10])
                                            {
                                                case 0x17://讀自動抄表日期
                                                          CmdPick(0xa0,0x60,0x02,0,0,0,1,0);
                                                break;
                                            }
                                case 0xc3:
                                            switch(ComDataBuf[10])
                                            {
                                                case 0x17://讀電表時段
                                                          CmdPick(0xa0,0x60,0x02,0,0,0,1,0);
                                                break;
                                            }
                                break;  
                                case 0xD1:  //讀取12個月歷史累積電量
                                            for(i=0x20;i<0x2c;i++)
                                            {
                                                if(ComDataBuf[10]==i)
                                                {
                                                    ToDay(ComDataBuf[10]);
                                                    CmdPick(0xa2,IIcByteStar,16,0,0,0,1,0);
                                                }                                               
                                            } 
                              }
                  break;
                  case 0x04:  //寫操作
                            if(KeyFg1)
                            {
                              switch(ComDataBuf[10])
                              {
                                  case  0x10: //寫日期
                                              //
                                              CmdSave(0x64,16,0x03,4,1);
                                  break;
                                  case  0x11: //寫時間
                                              CmdSave(0x64,16,0x00,3,1);                                               
                                  break;
                                  case  0x15: //顯示設置
                                              CmdSave(0xa0,16,0x62,3,0);                                                
                                  break;
                                  case  0x17: //寫自動抄表日
                                              CmdSave(0xa0,16,0x60,2,0);  
                                  break;
                                  case  0x19: //設置底度
                                              //電度清零
                                              CmdSave(0xa0,16,0x00,16,0);//總電量清零            
                                  break;
                                  case  0x32: //設置表編號
                                              CmdSave(0xa0,16,0x46,6,0);//
                                  break;
                                  case  0x33: //設置表地址
                                              CmdSave(0xa0,16,0x40,6,0);//
                                  break; 
                                  case  0x3f: //設置時段
                                              CmdSave(0xa0,16,0x80,ComDataBuf[9]-6,0);//
                                  break; 
                                  default:
                                             
                                  break;
                              }  
                            }
                            else
                            {
                                switch(ComDataBuf[10])
                              {
                                  case  0x11: //寫時間
                                              TimeChk(ComDataBuf[16],ComDataBuf[17]);
                                              if(TimeOk);
                                              {
                                                  CmdSave(0x64,16,0x00,3,1);
                                                  TimeOk=0;
                                              }                                                      
                                  break;
                              } 
                            }                                         
                  break;
                  case 0x0f:  //修改編程密碼
                                if(ComDataBuf[14]==0x01)
                              {
                                      CmdSave(0xa0,15,0x4c,4,0);//修改編程密碼
                              }
                              else if(ComDataBuf[14]==0x00)
                              {
                                  CmdSave(0xa0,15,0x50,4,0);//修改清令密碼
                              }
                  break;
                  case 0x1f:  //電表總清零
                                if(ComDataBuf[9]==0x04)
                              {
                                      ClerData();
                              }
                  break;
                } 
                TimeSendFg=1;
            }
            //否則判斷是否是廣播命令
            else
            {
              IdRight=0;
              for(i=0;i<6;i++)
              {
                    if(ComDataBuf[1+i]==0x99)
                 {
                   IdRight=0x55;
                 }
                 else
                 {
                   IdRight=0x00;
                   break;
                 }
                 j++;
              }
              //如果是廣播命令開始解析
              if(IdRight==0x55)
              {                
                switch(ComDataBuf[8])
                {
                    case 0x08:  //廣播校時
                               CmdSave(0x64,15,0x00,3,1);//設置時間
                    break;  
                    case 0x0a:  //廣播地址
                               CmdSave(0x64,15,0x00,3,1);//設置時間
                    break;  
                }
                TimeSendFg=1;
              }
              else
              {
                  ClerBuf();
                  SendOverFg=1;
              }
              CmdParseFg=0;
            }
          }
          else
          {
            CmdParseFg=0;
          }
       }
    }    
}
 
 使用LPC932制作的一款電表---LcdParse 

#include <REG932.H>
#include <define.h>
#include <Stdio.h>
#include <Intrins.h>

void LcdFull(unsigned char DataOne,unsigned char DataTwo,unsigned char DataThree,unsigned char DataFour)
{
    unsigned char data i,j,k;
     unsigned char idata DataBufA[4],DataBufB[4];
    unsigned char code    Digit[12]={    
                                    0xBE,    //0
                                    0x06,    //1
                                    0x7C,    //2
                                    0x5E,    //3
                                    0xC6,    //4
                                    0xDA,    //5
                                    0xFA,    //6
                                    0x0E,    //7
                                    0xFE,    //8
                                    0xDE,    //9
                                    0xf8,   //a--E
                                    0x40,   //b--_
                                  };   
   DataBufA[0]=DataOne;
   DataBufA[1]=DataTwo;
   DataBufA[2]=DataThree;
   DataBufA[3]=DataFour;
   
   if(BataMoveFg)
   {
     for(i=0;i<4;i++)//
     {
       k=DataBufA[i];            
       j=DataBufA[i+1];            
       k=k&0x0f;                        
       k=k<<4;                            
       j=j>>4;                    
       j=j&0x0f;    
       DataBufB[i]=k|j;
     }
   }
   for(i=0;i<3;i++)
   {
      k=DataBufB[i] & 0xf0;
      k=k>>4;
      LcdShowBuf[i+i]=Digit[k];
      k=DataBufB[i] & 0x0f;
      LcdShowBuf[i+i+1]=Digit[k];
   }

}
void LcdDisplayData(unsigned char DataOne,unsigned char DataTwo,unsigned char DataThree,unsigned char DataFour,unsigned char DataFive,unsigned char DataSix,unsigned char DataSeven)
{
       unsigned char data i;

    LcdShowBuf[6]=DataFive;
    LcdShowBuf[7]=DataSix;

    switch(DataSeven)
    {
       case 0x00 : //沒有小數點的顯示/                  
                   LcdFull(DataOne,DataTwo,DataThree,DataFour);                  

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区毛片| 欧美性猛片xxxx免费看久爱| av激情综合网| 欧美日本在线看| 国产精品美女久久久久aⅴ| 亚洲国产日日夜夜| 国产麻豆一精品一av一免费| 91激情在线视频| 国产欧美一区二区三区在线老狼| 五月天视频一区| 91女人视频在线观看| 精品国产一区二区在线观看| 亚洲大片精品永久免费| 成人动漫视频在线| 精品盗摄一区二区三区| 婷婷成人激情在线网| 99精品在线免费| 国产清纯在线一区二区www| 奇米精品一区二区三区四区| 在线观看区一区二| 亚洲精品日韩一| 成人理论电影网| 国产清纯白嫩初高生在线观看91 | 日韩女优制服丝袜电影| 亚洲精品国久久99热| 国产91在线观看丝袜| 精品国产乱码久久久久久夜甘婷婷| 亚洲自拍与偷拍| 日本乱码高清不卡字幕| 亚洲天堂中文字幕| 99这里只有精品| 自拍偷自拍亚洲精品播放| www.欧美日韩| 亚洲裸体xxx| 色婷婷av一区二区三区之一色屋| 亚洲欧洲精品天堂一级 | 国内不卡的二区三区中文字幕| 欧洲精品一区二区| 亚洲制服丝袜一区| 欧美日韩不卡视频| 日韩在线一二三区| 91精品国产综合久久久蜜臀粉嫩| 香蕉成人伊视频在线观看| 欧美精品1区2区3区| 麻豆精品一区二区av白丝在线| 日韩欧美国产一区在线观看| 久久综合综合久久综合| 久久久久久久久久久久久女国产乱| 国产一区二区视频在线播放| 国产欧美一区二区三区沐欲| 成人av电影在线播放| 亚洲精品视频自拍| 3d成人动漫网站| 国产精品一区二区不卡| 亚洲三级视频在线观看| 欧美日韩一区二区在线观看视频| 亚洲成人av一区二区三区| 欧美一级理论片| 成人一级黄色片| 亚洲第一主播视频| 久久综合色一综合色88| 成人av午夜影院| 亚洲成人综合网站| 久久综合九色综合欧美98 | 欧美年轻男男videosbes| 日本一道高清亚洲日美韩| 26uuu亚洲| 色婷婷精品久久二区二区蜜臀av| 五月天一区二区三区| 国产偷国产偷精品高清尤物| 91片黄在线观看| 久久国产三级精品| 亚洲三级电影全部在线观看高清| 欧美日韩高清不卡| 成人免费黄色大片| 日韩激情av在线| 国产精品对白交换视频 | 欧美—级在线免费片| 欧美性videosxxxxx| 国产精品羞羞答答xxdd| 亚洲成人三级小说| 日韩毛片精品高清免费| 欧美成人一区二区三区片免费 | 一区二区三区中文在线| 精品国产区一区| 精品视频1区2区| 成人理论电影网| 国模少妇一区二区三区| 亚洲精品一区二区在线观看| 欧美视频一区二区在线观看| 懂色一区二区三区免费观看| 日韩av中文字幕一区二区三区| 最新不卡av在线| 欧美激情一区二区在线| 日韩免费电影一区| 在线看一区二区| 成人动漫一区二区| 国产99精品国产| 国产日韩欧美精品在线| 亚洲一区二区视频| 99精品国产视频| 精品久久一二三区| 欧美日韩视频在线一区二区| 丰满岳乱妇一区二区三区| 毛片不卡一区二区| 五月婷婷综合网| 亚洲国产精品久久久久秋霞影院 | 久久久精品国产99久久精品芒果| 91福利视频网站| 色综合天天狠狠| 99久久免费国产| 色综合色狠狠综合色| 一本高清dvd不卡在线观看| 国产成人啪午夜精品网站男同| 蜜臀av一级做a爰片久久| 日本中文一区二区三区| 午夜精品福利视频网站| 亚洲午夜免费电影| 亚洲成a天堂v人片| 天堂va蜜桃一区二区三区漫画版| 一区二区三区久久| 视频在线观看91| 免费美女久久99| 国产一区二区三区观看| 国产精品一区二区黑丝| 丁香婷婷综合网| av网站一区二区三区| 91国偷自产一区二区三区观看| 91传媒视频在线播放| 欧美视频精品在线观看| 在线成人高清不卡| 日韩精品一区国产麻豆| 久久综合九色综合97婷婷| 久久久久久久久久久99999| 日本一区二区三区高清不卡| 国产精品久久久久aaaa| 一区二区三区丝袜| 日韩综合小视频| 国产一区 二区 三区一级| 成人免费高清视频| 欧美色国产精品| 26uuu国产在线精品一区二区| 国产欧美一区二区精品性| 一区二区三区中文字幕在线观看| 亚洲成人午夜电影| 国产精品一区免费视频| 日本黄色一区二区| 欧美电视剧免费全集观看| 国产精品久久久一区麻豆最新章节| 亚洲伦理在线精品| 蜜臂av日日欢夜夜爽一区| 成人理论电影网| 在线观看91av| 中文字幕欧美区| 日本美女一区二区三区| 国产成人8x视频一区二区| 91国产丝袜在线播放| 久久只精品国产| 亚洲一区视频在线观看视频| 激情综合色丁香一区二区| 一本一道久久a久久精品| 精品国产自在久精品国产| 亚洲综合色区另类av| 国产一区欧美二区| 欧美日韩亚洲不卡| 国产精品久久久久三级| 日本中文字幕一区二区视频| 91视频观看免费| 久久久国产一区二区三区四区小说 | 亚洲欧洲成人av每日更新| 日一区二区三区| 91丨porny丨首页| 日韩美女一区二区三区四区| 一区二区在线看| 国产成人免费高清| 欧美成人一区二区三区片免费| 一区二区三区精密机械公司| 成人网页在线观看| 欧美电影免费观看高清完整版在线| 亚洲日本一区二区| 国产成人av一区二区三区在线| 欧美一卡2卡3卡4卡| 亚洲国产精品一区二区尤物区| jiyouzz国产精品久久| 久久影院午夜片一区| 久久精品72免费观看| 欧美日本乱大交xxxxx| 一区二区三区.www| 色诱视频网站一区| 最新热久久免费视频| 成人禁用看黄a在线| 国产亚洲精品aa午夜观看| 国产麻豆精品一区二区| 欧美v日韩v国产v| 免费成人在线视频观看| 欧美一区二区国产| 日韩专区中文字幕一区二区| 欧美久久久久久蜜桃| 视频一区国产视频| 欧美一区中文字幕|