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

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

?? wiegand.lst

?? 門禁控制器源代碼
?? LST
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
C51 COMPILER V7.07   WIEGAND                                                               09/15/2005 12:05:42 PAGE 1   


C51 COMPILER V7.07, COMPILATION OF MODULE WIEGAND
OBJECT MODULE PLACED IN Wiegand.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Wiegand.c LARGE OPTIMIZE(9,SPEED) BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          ///////////////////////////////////////////////////////////////////////////////
   2          //
   3          // 韋根通信基本原理:
   4          //   1位奇校驗(yàn)位+韋根數(shù)據(jù)(24位/32位)+1位偶校驗(yàn)位
   5          //   數(shù)據(jù)位發(fā)送/接收維持時(shí)間100us
   6          //   數(shù)據(jù)位發(fā)送/接收周期為120ms
   7          //////////////////////////////////////////////////////////////////////////////
   8          
   9          #include "Global.h"
  10          
  11          // 全局變量定義
  12          extern data  char  User_id[6];          // 用戶編號(hào)
  13          extern idata char  wieformat;           // 韋根通信格式
  14          extern data  uchar door_state;          // 門控狀態(tài)
  15          extern idata uchar decaddr;                     // 設(shè)備地址     
  16          extern idata uchar areaaddr;            // 分組地址
  17          
  18          extern data  ulong Wiegand_dat;                 // 韋根通信數(shù)據(jù)
  19          extern data  uchar Wiecnt_max;                  // 韋根通信長(zhǎng)度
  20          extern data  uchar Wgnd_count;                  // 韋根數(shù)據(jù)位計(jì)數(shù)
  21          
  22          extern bdata bit recv_end;                              // 韋根接收結(jié)束
  23          extern bdata bit W_rec_end;                             // 韋根寫記錄結(jié)束
  24          extern bdata bit Odd;                                   // 韋根校驗(yàn)
  25          extern bdata bit Even;
  26          
  27          extern xdata char  tele_code[12];               // 報(bào)警電話號(hào)碼
  28          
  29          extern data uint  trans_ctr;                    // 發(fā)送數(shù)據(jù)指針
  30          extern data uint  trans_size;                   // 發(fā)送數(shù)據(jù)大小
  31          extern xdata uchar trans_buf[TRANSBUFSIZE];     // 發(fā)送數(shù)據(jù)緩沖區(qū)
  32          
  33          ///////////////////////////////////////////////////////////////////////////////
  34          // 100us延遲
  35          ///////////////////////////////////////////////////////////////////////////////
  36          void Delay100us()
  37          {
  38   1              idata uchar i;
  39   1      
  40   1              for(i=0;i<38;i++);
  41   1      }
  42          
  43          ///////////////////////////////////////////////////////////////////////////////
  44          // 韋根數(shù)據(jù)左移通信
  45          ///////////////////////////////////////////////////////////////////////////////
  46          void Wiegand_rol()
  47          {
  48   1              Wiegand_dat=Wiegand_dat<<1;
  49   1      }
  50          
  51          ///////////////////////////////////////////////////////////////////////////////
  52          // 中斷2服務(wù)例程
  53          ///////////////////////////////////////////////////////////////////////////////
  54          void int0() interrupt 0 using 1
  55          {
C51 COMPILER V7.07   WIEGAND                                                               09/15/2005 12:05:42 PAGE 2   

  56   1              switch(Wgnd_count)
  57   1              {
  58   2              case 0:
  59   2                      TR1=0;
  60   2                      TF1=0;
  61   2                      TH1=0xf5;
  62   2                      TL1=0x33;                       // 1.5ms
  63   2                      TR1=1;
  64   2                      Even=0;
  65   2                      Wgnd_count++;
  66   2                      break;
  67   2              case 1:
  68   2              case 2:
  69   2              case 3:
  70   2              case 4:
  71   2              case 5:
  72   2              case 6:
  73   2              case 7:
  74   2              case 8:
  75   2              case 9:
  76   2              case 10:
  77   2              case 11:
  78   2              case 12:
  79   2              case 13:
  80   2              case 14:
  81   2              case 15:
  82   2              case 16:
  83   2              case 17:
  84   2              case 18:
  85   2              case 19:
  86   2              case 20:
  87   2              case 21:
  88   2              case 22:
  89   2              case 23:
  90   2              case 24:
  91   2              case 25:
  92   2              case 26:
  93   2              case 27:
  94   2              case 28:
  95   2              case 29:
  96   2              case 30:
  97   2              case 31:
  98   2              case 32:
  99   2                      TR1=0;
 100   2                      TF1=0;
 101   2                      TH1=0xf5;
 102   2                      TL1=0x33;                       // 1.5ms
 103   2                      TR1=1;
 104   2                      Wiegand_rol();
 105   2                      Wgnd_count++;
 106   2                      break;
 107   2              case 33:
 108   2                      TR1=0;
 109   2                      TF1=0;                  // 接收完成
 110   2                      Odd=0;
 111   2                      recv_end=TRUE;
 112   2                      Wgnd_count++;
 113   2                      break;
 114   2              default:
 115   2                      break;
 116   2              }
 117   1      }
C51 COMPILER V7.07   WIEGAND                                                               09/15/2005 12:05:42 PAGE 3   

 118          
 119          ///////////////////////////////////////////////////////////////////////////////
 120          // 中斷2服務(wù)例程
 121          ///////////////////////////////////////////////////////////////////////////////
 122          void int1() interrupt 2 using 1
 123          {
 124   1              switch(Wgnd_count)
 125   1              {
 126   2              case 0:
 127   2                      TR1=0;
 128   2                      TF1=0;
 129   2                      TH1=0xf5;
 130   2                      TL1=0x33;                       // 1.5ms
 131   2                      TR1=1;
 132   2                      Even=1;
 133   2                      Wgnd_count++;
 134   2                      break;
 135   2              case 1:
 136   2              case 2:
 137   2              case 3:
 138   2              case 4:
 139   2              case 5:
 140   2              case 6:
 141   2              case 7:
 142   2              case 8:
 143   2              case 9:
 144   2              case 10:
 145   2              case 11:
 146   2              case 12:
 147   2              case 13:
 148   2              case 14:
 149   2              case 15:
 150   2              case 16:
 151   2              case 17:
 152   2              case 18:
 153   2              case 19:
 154   2              case 20:
 155   2              case 21:
 156   2              case 22:
 157   2              case 23:
 158   2              case 24:
 159   2              case 25:
 160   2              case 26:
 161   2              case 27:
 162   2              case 28:
 163   2              case 29:
 164   2              case 30:
 165   2              case 31:
 166   2              case 32:
 167   2                      TR1=0;
 168   2                      TF1=0;
 169   2                      TH1=0xf5;
 170   2                      TL1=0x33;                       // 1.5ms
 171   2                      TR1=1;
 172   2                      Wiegand_rol();          // 數(shù)據(jù)位0
 173   2                      Wiegand_dat|=0x01;      // 接收數(shù)據(jù)位1
 174   2                      Wgnd_count++;
 175   2                      break;
 176   2              case 33:
 177   2                      TR1=0;
 178   2                      TF1=0;                  // 接收完成
 179   2                      Odd=1;
C51 COMPILER V7.07   WIEGAND                                                               09/15/2005 12:05:42 PAGE 4   

 180   2                      recv_end=TRUE;
 181   2                      Wgnd_count++;
 182   2                      break;
 183   2              default:
 184   2                      break;
 185   2              }
 186   1      }
 187          
 188          ///////////////////////////////////////////////////////////////////////////////
 189          // 韋根通信初始化
 190          ///////////////////////////////////////////////////////////////////////////////
 191          void W_init()
 192          {
 193   1              switch(wieformat)
 194   1              {
 195   2              case 1:
 196   2                      Wiecnt_max=32;          // 自定義格式,自定義34位=1+32+1
 197   2                      break;
 198   2              case 2:
 199   2                      Wiecnt_max=24;          // 標(biāo)準(zhǔn)26位=1+24+1
 200   2                      break;
 201   2              case 3:
 202   2                      Wiecnt_max=32;          // 標(biāo)準(zhǔn)34位=1+32+1
 203   2                      break;
 204   2              default:
 205   2                      break;  
 206   2              }
 207   1      
 208   1              Wiegand_dat=0;
 209   1              Wgnd_count=0;
 210   1              Odd=0;
 211   1              Even=0;
 212   1      
 213   1              TCON|=0x05;
 214   1      
 215   1              EX1=0;                                  // 設(shè)置int1中斷
 216   1              EX0=0;                                  // 設(shè)置int0中斷
 217   1      
 218   1              return;
 219   1      }
 220          
 221          ///////////////////////////////////////////////////////////////////////////////
 222          // 偶校驗(yàn)
 223          ///////////////////////////////////////////////////////////////////////////////
 224          bit W_oddchk()
 225          {
 226   1              idata uchar i;
 227   1              idata uchar temp_odd=0;
 228   1              idata uint  tempw=0;
 229   1      
 230   1              switch(wieformat)
 231   1              {
 232   2              case 1: 
 233   2              case 3: 
 234   2                      tempw=Wiegand_dat&0x0ffff;              // 韋根數(shù)據(jù)
 235   2                      for(i=0;i<16;i++)
 236   2                      {
 237   3                              if(IBIT(tempw,i))temp_odd++;    // 偶計(jì)數(shù)
 238   3                      }
 239   2                      if(temp_odd&0x01)return FALSE;
 240   2                      else return TRUE;
 241   2                      break;
C51 COMPILER V7.07   WIEGAND                                                               09/15/2005 12:05:42 PAGE 5   

 242   2              case 2:
 243   2                      tempw=Wiegand_dat&0x0fff;
 244   2                      for(i=0;i<12;i++)
 245   2                      {
 246   3                              if(IBIT(tempw,i))temp_odd++;
 247   3                      }
 248   2                      if(temp_odd&0x01)return FALSE;
 249   2                      else return TRUE;
 250   2                      break;
 251   2              default:
 252   2                      break;  
 253   2              }
 254   1      }
 255          
 256          ///////////////////////////////////////////////////////////////////////////////
 257          // 奇校驗(yàn)
 258          ///////////////////////////////////////////////////////////////////////////////
 259          bit W_evenchk()
 260          {
 261   1              idata uchar i;
 262   1              idata uchar temp_even=0;
 263   1              idata uint  tempw=0;
 264   1      
 265   1              switch(wieformat)
 266   1              {
 267   2              case 1: 
 268   2              case 3: 
 269   2                      tempw=(Wiegand_dat>>16)&0x0ffff;        // 韋根數(shù)據(jù)
 270   2                      for(i=0;i<16;i++)
 271   2                      {
 272   3                              if(IBIT(tempw,i))temp_even++;   // 奇校驗(yàn)
 273   3                      }
 274   2                      if(temp_even&0x01)return TRUE;
 275   2                      else return FALSE;
 276   2                      break;
 277   2              case 2: 
 278   2                      tempw=(Wiegand_dat>>12)&0x0fff;
 279   2                      for(i=0;i<12;i++)
 280   2                      {
 281   3                              if(IBIT(tempw,i))temp_even++;
 282   3                      }
 283   2                      if(temp_even&0x01)return TRUE;
 284   2                      else return FALSE;
 285   2                      break;
 286   2              default:
 287   2                      break;  
 288   2              }
 289   1      }
 290          
 291          ///////////////////////////////////////////////////////////////////////////////
 292          // 韋根數(shù)據(jù)接收
 293          ///////////////////////////////////////////////////////////////////////////////
 294          void Wiegand_recv()
 295          {
 296   1              idata uchar tempaddr;
 297   1      
 298   1              if(TF1)
 299   1              {
 300   2                      TR1=0;
 301   2                      TF1=0;                  // 接收位超時(shí)
 302   2                      recv_end=FALSE;
 303   2                      Wgnd_count=0;
C51 COMPILER V7.07   WIEGAND                                                               09/15/2005 12:05:42 PAGE 6   

 304   2                      Wiegand_dat=0;
 305   2                      Odd=0;
 306   2                      Even=0;
 307   2              }
 308   1      
 309   1              if(recv_end)
 310   1              {
 311   2                      tempaddr=(Wiegand_dat>>16)&0xff;
 312   2                      if(tempaddr==areaaddr)
 313   2                      {
 314   3                              tempaddr=(Wiegand_dat>>8)&0xff;
 315   3                              if(tempaddr==decaddr)
 316   3                              {

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人午夜免费av| 欧美精品久久一区| 天堂久久一区二区三区| 久久久精品免费网站| 欧美视频一区二区三区在线观看| 韩国午夜理伦三级不卡影院| 亚洲免费电影在线| 国产亚洲制服色| 91精品国产色综合久久ai换脸| 色综合中文字幕| 高清在线不卡av| 激情丁香综合五月| 日本va欧美va精品| 亚洲一区二区三区四区在线观看| 中文字幕在线一区免费| 精品久久五月天| 欧美一区二区三区四区在线观看| av日韩在线网站| 国产丶欧美丶日本不卡视频| 日本aⅴ免费视频一区二区三区| 夜夜嗨av一区二区三区中文字幕| 欧美国产成人精品| 久久五月婷婷丁香社区| 91精品国产91久久综合桃花| 欧美色老头old∨ideo| 色综合中文字幕国产 | 奇米色一区二区| 国产精品乱人伦一区二区| 国产另类ts人妖一区二区| 欧美日韩国产经典色站一区二区三区| 性久久久久久久久久久久| 亚洲国产精品麻豆| 国产精品电影一区二区| 2023国产一二三区日本精品2022| 3d动漫精品啪啪1区2区免费| 欧美在线影院一区二区| 色婷婷综合久久| 一本一道综合狠狠老| 国产精品2024| 成人永久免费视频| 国产成人在线视频播放| 国产成人丝袜美腿| 成人av电影在线网| 波多野结衣的一区二区三区| 成人av资源在线| av电影在线观看一区| a在线欧美一区| 在线一区二区三区四区五区| 色偷偷成人一区二区三区91| 91麻豆成人久久精品二区三区| www.亚洲国产| 欧美天堂亚洲电影院在线播放| 欧美偷拍一区二区| 日韩欧美一区二区在线视频| 欧美成人a∨高清免费观看| 久久众筹精品私拍模特| 中文字幕日韩av资源站| 亚洲日本免费电影| 亚洲不卡一区二区三区| 欧美a级一区二区| 国产美女精品在线| av爱爱亚洲一区| 欧美日韩国产综合视频在线观看 | 国产欧美一区二区精品秋霞影院| 国产农村妇女精品| 亚洲精品欧美激情| 免费在线观看一区| 国产成人在线视频免费播放| 91久久国产综合久久| 日韩欧美国产小视频| 国产午夜精品福利| 亚洲一区二区三区四区的| 美女视频一区二区| 大尺度一区二区| 欧美亚洲一区三区| 精品国产欧美一区二区| 成人免费一区二区三区视频| 免费一区二区视频| 成人精品国产免费网站| 一本到三区不卡视频| 日韩欧美国产系列| 亚洲欧洲日产国码二区| 日韩国产精品久久久| 国产麻豆欧美日韩一区| 在线观看视频91| 久久精品夜色噜噜亚洲aⅴ| 一区二区三区美女| 国模一区二区三区白浆| 在线观看日韩国产| 精品99一区二区三区| 一区二区三区资源| 国产麻豆成人传媒免费观看| 欧美亚洲尤物久久| 国产精品乱码一区二区三区软件| 亚洲妇女屁股眼交7| 成人av资源在线观看| 欧美电影免费观看高清完整版在线 | 日韩黄色免费电影| 99综合影院在线| 精品国产乱码久久久久久久久| 亚洲黄色av一区| 国产精品一区二区免费不卡| 欧美男男青年gay1069videost| 久久蜜桃av一区精品变态类天堂 | 91精彩视频在线| 国产日韩av一区二区| 日本午夜精品视频在线观看| 色综合色综合色综合| 国产日韩欧美一区二区三区乱码 | 亚洲一区二区三区四区在线 | 色猫猫国产区一区二在线视频| 欧美精品一区在线观看| 五月综合激情网| 色婷婷综合激情| 国产精品久久毛片av大全日韩| 麻豆专区一区二区三区四区五区| 日本韩国欧美一区| 国产精品毛片无遮挡高清| 久久精品国产成人一区二区三区| 欧美日韩在线播放一区| 亚洲欧美国产77777| 不卡一二三区首页| 国产欧美一区二区精品性色| 久久精品99国产精品日本| 欧美疯狂性受xxxxx喷水图片| 一区二区高清免费观看影视大全| 成人aaaa免费全部观看| 亚洲国产成人自拍| 国产白丝精品91爽爽久久| 精品电影一区二区| 精品一区二区在线视频| 日韩三区在线观看| 美国十次综合导航| 日韩一级二级三级| 男女性色大片免费观看一区二区 | 亚洲丝袜另类动漫二区| 成人av免费观看| 18欧美乱大交hd1984| 99re成人在线| 亚洲免费观看高清完整| 欧美性色综合网| 日韩在线a电影| 欧美一区二区在线免费观看| 免费人成精品欧美精品| 日韩一卡二卡三卡国产欧美| 日韩 欧美一区二区三区| 欧美一级夜夜爽| 国产一区二区免费在线| 国产三级久久久| 一本到高清视频免费精品| 亚洲综合精品自拍| 欧美人伦禁忌dvd放荡欲情| 日韩激情一二三区| 久久综合色8888| 粉嫩av一区二区三区| 亚洲精品久久久蜜桃| 91精品在线一区二区| 国产一区二区免费在线| 亚洲人成网站影音先锋播放| 欧美三级日韩在线| 麻豆高清免费国产一区| 国产精品乱人伦中文| 欧美色欧美亚洲另类二区| 久久91精品久久久久久秒播| 国产精品久久网站| 欧美色图片你懂的| 国产主播一区二区三区| 亚洲色图清纯唯美| 欧美一级夜夜爽| 成人一区在线观看| 亚洲成av人综合在线观看| 精品国产第一区二区三区观看体验| 国产夫妻精品视频| 亚洲成av人片在线观看| 久久这里只精品最新地址| 色综合中文字幕国产 | 久久久久久亚洲综合影院红桃| 91视频你懂的| 精品在线视频一区| 亚洲人亚洲人成电影网站色| 日韩一二三区不卡| av欧美精品.com| 久久成人久久爱| 亚洲精品第1页| 久久理论电影网| 欧美唯美清纯偷拍| 波多野结衣在线一区| 青青草国产成人av片免费| 自拍偷拍国产亚洲| 精品国产伦一区二区三区观看体验 | 亚洲最色的网站| 久久久久国产一区二区三区四区 | 国产精品一区在线观看乱码| 曰韩精品一区二区| 国产偷国产偷亚洲高清人白洁| 欧美年轻男男videosbes| 99久久婷婷国产综合精品| 激情图片小说一区| 舔着乳尖日韩一区| 亚洲免费电影在线|