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

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

?? main.lst

?? mifare rc500 讀卡器源碼
?? LST
?? 第 1 頁 / 共 5 頁
字號:
C51 COMPILER V7.10   MAIN                                                                  11/18/2004 15:28:04 PAGE 16  

 461      =1  //              |    |    |    |    |    |    |    |
 462      =1  //                        |              |
 463      =1  //                RFU     |      RFU     |      RFU
 464      =1  //
 465      =1  //                        1              0 .. UID complete, ATS available
 466      =1  //                        0              0 .. UID complete, ATS not available
 467      =1  //                        X              1 .. UID not complete
 468      =1  //
 469      =1  char M500PiccCascSelect(unsigned char select_code, 
 470      =1                              unsigned char *snr, 
 471      =1                              unsigned char *sak); 
 472      =1  
 473      =1  // _____________________________________________________________________________
 474      =1  //
 475      =1  //  FUNCTION: MfPiccAuth
 476      =1  //        IN: auth_mode PICC_AUTHENT1A or PICC_AUTHENT1B 
 477      =1  //                            selects master key A or master key B 
 478      =1  //                      KS0, KS1, KS2 selects one of the three master key sets.
 479      =1  //            *snr       4 byte serial number of the card, which should be 
 480      =1  //                       authenticated
 481      =1  //            key_sector spec. the key RAM address from which the data should be
 482      =1  //                      taken (0..15)
 483      =1  //            block     addresses the block address on the card, which shall be
 484      =1  //                      authenticated. For MIFARE standard cards, addr can take 
 485      =1  //                      a value from 0 to 63, for other card types please refer
 486      =1  //                      to the according product description.
 487      =1  //       OUT: -
 488      =1  //    RETURN: 
 489      =1  //   COMMENT: This function authenticates one card's sector (according to the 
 490      =1  //            block address addr) using the specified mode and master key, 
 491      =1  //            addressed with key_addr. After sending the command to the card the 
 492      =1  //            function waits for the card's answer.
 493      =1  //            This function is calling compatible (exept the serial number) with
 494      =1  //            older authentication functions. The keys are stored by the 
 495      =1  //            microcontroller, which is capable for the key management.
 496      =1  //
 497      =1  char M500PiccAuth(unsigned char auth_mode, 
 498      =1                        unsigned char *snr,
 499      =1                        unsigned char key_sector, 
 500      =1                        unsigned char block);   
 501      =1                 
 502      =1  // _____________________________________________________________________________
 503      =1  //
 504      =1  //  FUNCTION: M500PiccAuthE2
 505      =1  //        IN: auth_mode PICC_AUTHENT1A or PICC_AUTHENT1B 
 506      =1  //                            selects master key A or master key B 
 507      =1  //            *snr       4 byte serial number of the card, which should be 
 508      =1  //                       authenticated
 509      =1  //            key_sector spec. the key E2PROM key number from which the data 
 510      =1  //                       should be taken (0..15)
 511      =1  //            sector    addresses the sector number on the card, which shall be
 512      =1  //                      authenticated. For MIFARE standard cards, addr can take 
 513      =1  //                      a value from 0 to 15, for other card types please refer
 514      =1  //                      to the according product description.
 515      =1  //       OUT: -
 516      =1  //    RETURN: 
 517      =1  //   COMMENT: This function authenticates one card's sector using the specified 
 518      =1  //            mode. After sending the command to the card the 
 519      =1  //            function waits for the card's answer.
 520      =1  //            The keys for authentication have to be stored in E2PROM in 
 521      =1  //            advance.
 522      =1  char M500PiccAuthE2( unsigned char auth_mode, 
C51 COMPILER V7.10   MAIN                                                                  11/18/2004 15:28:04 PAGE 17  

 523      =1                           unsigned char *snr,      
 524      =1                           unsigned char key_sector,
 525      =1                           unsigned char sector); 
 526      =1                       
 527      =1  // _____________________________________________________________________________
 528      =1  //
 529      =1  //  FUNCTION: M500HostCodeKey
 530      =1  //        IN: uncoded   6 bytes master key for card authentication
 531      =1  //       OUT: coded     12 bytes master key for card authentication
 532      =1  //    RETURN: 
 533      =1  //   COMMENT: In order to authenticate a memory sector of a card, a 6 
 534      =1  //            bytes master key is necessary. This master key has to be passed
 535      =1  //            to the reader modul coded. The conversion between uncoded and 
 536      =1  //                coded keys is made by this function.
 537      =1  //                     
 538      =1  char M500HostCodeKey(unsigned char *uncoded, 
 539      =1                           unsigned char *coded); 
 540      =1  
 541      =1  // _____________________________________________________________________________
 542      =1  //
 543      =1  //  FUNCTION: M500PiccAuthKey
 544      =1  //        IN: auth_mode PICC_AUTHENT1A or PICC_AUTHENT1B 
 545      =1  //                            selects master key A or master key B 
 546      =1  //            *snr       4 byte serial number of the card, which should be 
 547      =1  //                       authenticated
 548      =1  //            *keys      12 bytes master key coded
 549      =1  //            sector    addresses the sector number on the card, which shall be
 550      =1  //                      authenticated. For MIFARE standard cards, addr can take 
 551      =1  //                      a value from 0 to 15, for other card types please refer
 552      =1  //                      to the according product description.
 553      =1  //       OUT: -
 554      =1  //    RETURN: 
 555      =1  //   COMMENT: The keys are first loaded to the reader module and used for
 556      =1  //            authentication of the secified sector. In order to get the 
 557      =1  //            required keys coded, the function M500HostCodeKey can be used.
 558      =1  //                     
 559      =1  char M500PiccAuthKey(unsigned char auth_mode,
 560      =1                           unsigned char *snr,   
 561      =1                           unsigned char *keys,  
 562      =1                           unsigned char sector);   
 563      =1                       
 564      =1                          
 565      =1  // _____________________________________________________________________________
 566      =1  //
 567      =1  //  FUNCTION: M500PiccRead
 568      =1  //        IN: addr    addresses -  the block on the card from which data shall 
 569      =1  //                    be read. For MIFARE standard cards, addr can take a value
 570      =1  //                    from 0 to 63 (255 for Mifare Pro), for other card types 
 571      =1  //                    please refer to the according product description.
 572      =1  //       OUT: data    is a pointer to the 16 byte data block read from the card.
 573      =1  //       OUT: 
 574      =1  //    RETURN: 
 575      =1  //   COMMENT: This function reads a 16 byte block from the specified card's block 
 576      =1  //            address addr. After sending the command to the card the function 
 577      =1  //            waits for the card's answer.
 578      =1  //                        
 579      =1  char M500PiccRead(unsigned char addr,  
 580      =1                    unsigned char *_data);
 581      =1                   
 582      =1  // _____________________________________________________________________________
 583      =1  //
 584      =1  //  FUNCTION: M500PiccWrite
C51 COMPILER V7.10   MAIN                                                                  11/18/2004 15:28:04 PAGE 18  

 585      =1  //        IN: addr     address -  the block on the card from which data shall 
 586      =1  //                     be read. For MIFARE standard cards, addr can take a 
 587      =1  //                     value from 0 to 63 (255 for Mifare Pro), for other card 
 588      =1  //                     types please refer to the according product description.
 589      =1  //            data     is a pointer to the 16 byte data block that shall be 
 590      =1  //                     written to the card.
 591      =1  //       OUT: -
 592      =1  //    RETURN: 
 593      =1  //   COMMENT: This function writes a 16 byte block to the specified card's block 
 594      =1  //            address addr. After sending the command to the card the function
 595      =1  //            waits for the card's answer.
 596      =1  //                  
 597      =1  char M500PiccWrite(unsigned char addr,
 598      =1                         unsigned char *_data);
 599      =1                    
 600      =1  
 601      =1  // _____________________________________________________________________________
 602      =1  //
 603      =1  // FUNCTION: M500PiccValue
 604      =1  //       IN: dd_mode    INCREMENT, DECREMENT or RESTORE
 605      =1  //           addr       Block address for the command to be perform 0-63
 606      =1  //           *value     4 bytes value, LSB first
 607      =1  //           trans_addr Destination block address to be tranfer 
 608      =1  //      OUT: -
 609      =1  //  COMMENT:
 610      =1  // This function performs the INCREMENT, DECREMENT and RESTORE command. Precondition 
 611      =1  // for success is, that the data block is formatted as value block. 
 612      =1  //
 613      =1  // For INCREMENT and DECREMENT, the command doesn't write back the value to the memory 
 614      =1  // location directly, but loads the transfer buffer with the increased value,
 615      =1  // which could be transferred to any authenticated block by the TRANFER command.
 616      =1  //
 617      =1  // The RESTORE command loads the transfer buffer with the value stored at datablock 
 618      =1  // address, while the 
 619      =1  // given value is only a dummy value, which only have to be in valid range. 
 620      =1  // With a subsquent TRANSFER command a backup management for Value Blocks is 
 621      =1  // established.
 622      =1  //
 623      =1  // After sending the command to the card the function waits for the 
 624      =1  // card's answer. In case of an error <em>Mf500PiccValue()</em>
 625      =1  // generates a return code according to the MF RC's error flags, otherwise 
 626      =1  // the value is sent to the card and then it waits for a NACK. As an exception 
 627      =1  // in this protocol step 
 628      =1  // only a NACK is sent by the card in case of an error. Thus, the function 
 629      =1  // is successful, if a time out occurs. 
 630      =1  //
 631      =1  // After the calculation is done,  a TRANSFER is automatically
 632      =1  // performed to the block address trans_addr. After sending the command to
 633      =1  // the card the function waits for the card's answer 
 634      =1  // and generates a return code according to the MF RC's error flags. 
 635      =1  // A TRAN command is only possible directly after a RESTORE, INCREMENT or 
 636      =1  // DECREMENT command.
 637      =1  //
 638      =1  // The value inside a Value Block is four bytes wide and stored two times
 639      =1  // in normal and one time in bit-inverted manner for data security issues. 
 640      =1  // Additionally the initial address of the Value Block is stored two times 
 641      =1  // normal and two times bit-inverted. In case of a backup of a Value Block, 
 642      =1  // this addres contains the original address of the Value Block.
 643      =1  // Note: Only positive numbers are alowed for the parameter <em>value</em>.
 644      =1  //
 645      =1  char M500PiccValue(unsigned char dd_mode, 
 646      =1                     unsigned char addr, 
C51 COMPILER V7.10   MAIN                                                                  11/18/2004 15:28:04 PAGE 19  

 647      =1                     unsigned char *value,
 648      =1                     unsigned char trans_addr);
 649      =1  
 650      =1  // _____________________________________________________________________________
 651      =1  //
 652      =1  // FUNCTION: M500PiccValueDebit
 653      =1  //       IN: dd_mode    INCREMENT, DECREMENT or RESTORE
 654      =1  //           addr       Block address for the command to be perform 0-63
 655      =1  //           *value     4 bytes value, LSB first
 656      =1  //      OUT: -
 657      =1  //  COMMENT:
 658      =1  // This function executes calculations on value debit blocks with cards, that 
 659      =1  // support automatic transfer (MIFARE light, MIFARE PLUS, MIFARE PRO,
 660      =1  // MIFARE PROX, ...). 
 661      =1  //
 662      =1  // After sending the command 
 663      =1  // to the card the function waits for the card's answer. In case of an error 
 664      =1  // it generates a return code according 
 665      =1  // to the MF RC's error flags. 
 666      =1  //
 667      =1  char M500PiccValueDebit(unsigned char dd_mode, 
 668      =1                          unsigned char addr, 
 669      =1                          unsigned char *value);
 670      =1  
 671      =1  // _____________________________________________________________________________
 672      =1  //
 673      =1  // FUNCTION: M500PiccExchangeBlock
 674      =1  //       IN: *send_data 
 675      =1  //           send_bytelen       Lenght include 2bytes CRC
 676      =1  //           append_crc         1->append, 0->not append
 677      =1  //           timeout            Set duration of timeout timer
 678      =1  //                              1-> 1s
 679      =1  //                              2-> 1.5s
 680      =1  //                              3-> 6s
 681      =1  //                              4-> 9.6s
 682      =1  //      OUT: *rec_data
 683      =1  //           *rec_bytelen
 684      =1  //  COMMENT:
 685      =1  // This function exchanges data blocks between the <b>PCD</b> and <b>PICC</b>. 
 686      =1  //
 687      =1  // ATTENTION: if <em>append_crc</em> is enabled, two CRC bytes are included in 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99精品国产.久久久久久| 日韩电影在线一区二区三区| 极品尤物av久久免费看| 色噜噜夜夜夜综合网| 久久免费精品国产久精品久久久久| 亚洲福利视频一区二区| 99久精品国产| 欧美激情综合在线| 久久国产尿小便嘘嘘| 在线不卡一区二区| 亚洲色图在线视频| 成人国产视频在线观看| 日韩欧美你懂的| 丝袜国产日韩另类美女| 欧美在线影院一区二区| 综合激情成人伊人| 国产福利91精品一区二区三区| 91精品国产品国语在线不卡| 亚洲国产精品精华液网站| 91偷拍与自偷拍精品| 国产精品视频一二三| 国产成人av自拍| 久久男人中文字幕资源站| 久久99精品国产.久久久久| 在线播放日韩导航| 午夜精品爽啪视频| 91久久精品国产91性色tv| 最新国产成人在线观看| 成人精品亚洲人成在线| 国产日韩欧美电影| 国产凹凸在线观看一区二区| 久久久精品天堂| 国产精品一区二区果冻传媒| 久久婷婷久久一区二区三区| 国模冰冰炮一区二区| 久久久久国产精品免费免费搜索 | 日韩一级片在线观看| 婷婷综合五月天| 欧美日韩aaa| 日韩二区三区在线观看| 日韩欧美一级精品久久| 麻豆免费看一区二区三区| 欧美成人女星排名| 精品一区中文字幕| 国产午夜精品理论片a级大结局| 国产精品影音先锋| 欧美国产欧美综合| 91在线精品一区二区| 亚洲免费看黄网站| 欧美唯美清纯偷拍| 五月天精品一区二区三区| 日韩一区二区三区av| 久久er精品视频| 国产人妖乱国产精品人妖| 不卡电影免费在线播放一区| 亚洲精品写真福利| 欧美日韩国产大片| 精品一二三四区| 欧美国产一区二区| 色综合天天综合网天天看片| 亚洲成av人影院| 欧美一区二区三区四区久久| 精品一区二区精品| 中文一区二区在线观看| 色婷婷亚洲精品| 蜜臀av性久久久久蜜臀aⅴ流畅 | 欧美丝袜丝交足nylons| 日韩精品电影在线观看| 久久综合九色综合欧美亚洲| 成人性生交大片免费看视频在线 | 亚洲男女一区二区三区| 欧美色图12p| 精品在线免费视频| 国产精品人成在线观看免费| 欧美伊人精品成人久久综合97| 老司机免费视频一区二区三区| 欧美激情在线看| 欧美日韩国产三级| 国产在线视频一区二区三区| 亚洲三级在线播放| 91精品国产综合久久久久| 国产高清一区日本| 亚洲亚洲精品在线观看| 久久香蕉国产线看观看99| 91在线观看地址| 久久国产精品99久久人人澡| 日韩一区日韩二区| 日韩欧美在线123| a级高清视频欧美日韩| 免费在线欧美视频| 亚洲欧洲性图库| 欧美一区二区三区四区在线观看| 成人的网站免费观看| 日产精品久久久久久久性色| 中文字幕一区二区在线观看| 欧美一区二区三区公司| 91在线国产福利| 国内精品伊人久久久久av一坑| 亚洲视频免费在线观看| 久久影视一区二区| 欧美日本韩国一区| 99国产精品久久久久久久久久| 久久超碰97人人做人人爱| 亚洲黄色小视频| 欧美国产禁国产网站cc| 日韩亚洲欧美综合| 欧美午夜寂寞影院| 成年人网站91| 精品一区二区三区在线播放| 亚洲成av人**亚洲成av**| 中文字幕一区二区三区视频| 精品国产免费视频| 欧美日韩国产片| 91色porny在线视频| 国产精品一区一区三区| 五月天精品一区二区三区| 亚洲色大成网站www久久九九| 久久综合久久99| 日韩一区二区三区电影在线观看| 日本电影亚洲天堂一区| eeuss国产一区二区三区| 国产在线精品不卡| 免费人成在线不卡| 午夜精品福利一区二区三区蜜桃| 国产精品不卡视频| 欧美经典一区二区三区| 日韩欧美国产一区在线观看| 欧美老肥妇做.爰bbww视频| 一本色道**综合亚洲精品蜜桃冫| 国产精品12区| 国产一区二区调教| 免费看欧美女人艹b| 91蜜桃婷婷狠狠久久综合9色| 丰满放荡岳乱妇91ww| 国模一区二区三区白浆| 久久99国内精品| 麻豆成人综合网| 五月婷婷综合激情| 亚洲综合小说图片| 亚洲免费观看高清在线观看| 国产精品国产精品国产专区不蜜 | 欧美一级免费大片| 欧美色网一区二区| 在线精品视频小说1| 在线观看日韩av先锋影音电影院| 97se亚洲国产综合自在线观| 99视频一区二区三区| 菠萝蜜视频在线观看一区| 不卡欧美aaaaa| 99精品视频在线观看| 91在线观看污| 色诱亚洲精品久久久久久| 色综合天天综合给合国产| 99久久精品免费看| 一本大道久久精品懂色aⅴ| 91在线一区二区| 91麻豆福利精品推荐| 欧美自拍偷拍午夜视频| 欧洲精品一区二区| 欧美人与性动xxxx| 日韩视频免费观看高清完整版| 日韩一区二区不卡| 欧美精品一区男女天堂| 国产香蕉久久精品综合网| 国产精品区一区二区三区| 最新国产の精品合集bt伙计| 亚洲美女免费在线| 亚洲电影欧美电影有声小说| 天堂精品中文字幕在线| 麻豆91精品91久久久的内涵| 国产老女人精品毛片久久| 国产乱一区二区| 北条麻妃国产九九精品视频| 91啦中文在线观看| 欧美色涩在线第一页| 欧美成人一区二区| 日本一区二区三区在线不卡| 亚洲三级在线免费观看| 亚州成人在线电影| 麻豆成人久久精品二区三区小说| 国产精品中文字幕日韩精品| 91影院在线免费观看| 欧美日韩一卡二卡| 精品成a人在线观看| 亚洲欧美自拍偷拍| 亚洲成人在线网站| 国产中文一区二区三区| 99久久综合国产精品| 欧美日韩第一区日日骚| 久久亚洲综合色一区二区三区 | 日韩午夜激情电影| 国产日韩av一区二区| 亚洲一区精品在线| 韩国精品久久久| 色婷婷激情久久| 精品久久一区二区三区| 亚洲日本韩国一区| 免费成人结看片| 99re视频这里只有精品| 欧美一级国产精品|