⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 zlg500.lst

📁 RC500 MF1 非接触读卡器 开发板 资料
💻 LST
📖 第 1 页 / 共 2 页
字号:
 240   1              spi_buffer[ADR]=_Adr;
 241   1              spi_buffer[VALUE]=*(temp+3);
C51 COMPILER V7.50   ZLG500                                                                11/20/2007 11:25:43 PAGE 5   

 242   1              spi_buffer[VALUE+1]=*(temp+2);
 243   1              spi_buffer[VALUE+2]=*(temp+1);
 244   1              spi_buffer[VALUE+3]=*temp;
 245   1                              
 246   1              if(zlg500cmd(8)!=SPI_OK)
 247   1                      return SPI_ERR;
 248   1              
 249   1              return spi_buffer[STATUS];
 250   1      }
 251          
 252          uchar mifs_decrement(uchar _Adr,long idata *_Value)
 253          {
 254   1              uchar *temp=(uchar *)_Value;
 255   1              spi_buffer[SEQNR]=0;
 256   1              spi_buffer[COMMAND]=0x49;
 257   1              spi_buffer[LENGTH]=5;
 258   1              spi_buffer[ADR]=_Adr;
 259   1              spi_buffer[VALUE]=*(temp+3);
 260   1              spi_buffer[VALUE+1]=*(temp+2);
 261   1              spi_buffer[VALUE+2]=*(temp+1);
 262   1              spi_buffer[VALUE+3]=*temp;
 263   1                              
 264   1              if(zlg500cmd(8)!=SPI_OK)
 265   1                      return SPI_ERR;
 266   1              
 267   1              return spi_buffer[STATUS];
 268   1      }
 269          
 270          uchar mifs_restore(uchar _Adr)
 271          {
 272   1              spi_buffer[SEQNR]=0;
 273   1              spi_buffer[COMMAND]=0x4A;
 274   1              spi_buffer[LENGTH]=1;
 275   1              spi_buffer[ADR]=_Adr;
 276   1              
 277   1              if(zlg500cmd(4)!=SPI_OK)
 278   1                      return SPI_ERR;
 279   1              
 280   1              return spi_buffer[STATUS];      
 281   1      }
 282          
 283          uchar mifs_transfer(uchar _Adr)
 284          {
 285   1              spi_buffer[SEQNR]=0;
 286   1              spi_buffer[COMMAND]=0x4B;
 287   1              spi_buffer[LENGTH]=1;
 288   1              spi_buffer[ADR]=_Adr;
 289   1              
 290   1              if(zlg500cmd(4)!=SPI_OK)
 291   1                      return SPI_ERR;
 292   1              
 293   1              return spi_buffer[STATUS];
 294   1      }
 295          
 296          uchar mifs_load_key(uchar _Mode,uchar _SecNr,uchar *_Nkey)
 297          {
 298   1              spi_buffer[SEQNR]=0;
 299   1              spi_buffer[COMMAND]=0x4C;
 300   1              spi_buffer[LENGTH]=0x08;
 301   1              spi_buffer[MODE]=_Mode;
 302   1              spi_buffer[SECNR]=_SecNr;
 303   1              memcpy(&spi_buffer[NKEY],_Nkey,6);
C51 COMPILER V7.50   ZLG500                                                                11/20/2007 11:25:43 PAGE 6   

 304   1              
 305   1              if(zlg500cmd(11)!=SPI_OK)
 306   1                      return SPI_ERR;
 307   1              
 308   1              return spi_buffer[STATUS];
 309   1      }
 310          
 311          uchar mifs_reset(uchar _Msec)
 312          {
 313   1              spi_buffer[SEQNR]=0;
 314   1              spi_buffer[COMMAND]=0x4E;
 315   1              spi_buffer[LENGTH]=1;
 316   1              spi_buffer[TIME]=_Msec;
 317   1              
 318   1              if(zlg500cmd(4)!=SPI_OK)
 319   1                      return SPI_ERR;
 320   1              
 321   1              return spi_buffer[STATUS];
 322   1      }
 323          
 324          uchar mifs_get_info(uchar idata *_Info)
 325          {
 326   1              spi_buffer[SEQNR]=0;
 327   1              spi_buffer[COMMAND]=0x4F;
 328   1              spi_buffer[LENGTH]=0;
 329   1              
 330   1              if(zlg500cmd(3)!=SPI_OK)
 331   1                      return SPI_ERR;
 332   1                      
 333   1              if(spi_buffer[STATUS]==MI_OK)
 334   1              {
 335   2                      memcpy(_Info,&spi_buffer[INFO],spi_buffer[LENGTH]);
 336   2              }
 337   1              return spi_buffer[STATUS];      
 338   1      }
 339          
 340          uchar mifs_close(void)
 341          {
 342   1              spi_buffer[SEQNR]=0;
 343   1              spi_buffer[COMMAND]=0x3F;
 344   1              spi_buffer[LENGTH]=0;
 345   1              
 346   1              if(zlg500cmd(3)!=SPI_OK)
 347   1                      return SPI_ERR;
 348   1              
 349   1              return spi_buffer[STATUS];
 350   1      }
 351          
 352          uchar mifs_config(void)
 353          {
 354   1              spi_buffer[SEQNR]=0;
 355   1              spi_buffer[COMMAND]=0x52;
 356   1              spi_buffer[LENGTH]=0;
 357   1              
 358   1              if(zlg500cmd(3)!=SPI_OK)
 359   1                      return SPI_ERR;
 360   1              
 361   1              return spi_buffer[STATUS];
 362   1      }
 363          
 364          uchar mifs_check_write(uchar idata *_SNR,uchar _Authmode,uchar _Adr,uchar idata *_Data)
 365          {
C51 COMPILER V7.50   ZLG500                                                                11/20/2007 11:25:43 PAGE 7   

 366   1              spi_buffer[0]=0;
 367   1              spi_buffer[COMMAND]=0x53;
 368   1              spi_buffer[LENGTH]=22;
 369   1              memcpy(&spi_buffer[SERNR],_SNR,4);
 370   1              spi_buffer[AUTHMODE]=_Authmode;
 371   1              spi_buffer[ADRCHKWR]=_Adr;
 372   1              memcpy(&spi_buffer[DATACHKWR],_Data,16);
 373   1              
 374   1              if(zlg500cmd(25)!=SPI_OK)
 375   1                      return SPI_ERR;
 376   1              
 377   1              return spi_buffer[STATUS];
 378   1      }
 379          
 380          uchar mifs_set_control_bit()
 381          {
 382   1              spi_buffer[0]=0;
 383   1              spi_buffer[COMMAND]=0x50;
 384   1              spi_buffer[LENGTH]=0;
 385   1                              
 386   1              if(zlg500cmd(3)!=SPI_OK)
 387   1                      return SPI_ERR;
 388   1              
 389   1              return spi_buffer[STATUS];
 390   1      }
 391          
 392          uchar mifs_clr_control_bit()
 393          {
 394   1              spi_buffer[0]=0;
 395   1              spi_buffer[COMMAND]=0x51;
 396   1              spi_buffer[LENGTH]=0;
 397   1                              
 398   1              if(zlg500cmd(3)!=SPI_OK)
 399   1                      return SPI_ERR;
 400   1              
 401   1              return spi_buffer[STATUS];
 402   1      }
 403          
 404          uchar mifs_buzzer(uchar _Frquence,uchar _10ms)
 405          {
 406   1              spi_buffer[0]=0;
 407   1              spi_buffer[COMMAND]=0x60;
 408   1              spi_buffer[LENGTH]=2;
 409   1              spi_buffer[3]=_Frquence;
 410   1              spi_buffer[4]=_10ms;
 411   1                      
 412   1              if(zlg500cmd(5)!=SPI_OK)
 413   1                      return SPI_ERR;
 414   1              
 415   1              return spi_buffer[STATUS];
 416   1      }
 417          
 418          uchar mifs_read_E2(uchar _Adr,uchar _Length,uchar idata *_Data)
 419          {
 420   1              spi_buffer[0]=0;
 421   1              spi_buffer[COMMAND]=0x61;
 422   1              spi_buffer[LENGTH]=2;
 423   1              spi_buffer[ADR]=_Adr;
 424   1              spi_buffer[4]=_Length;
 425   1                      
 426   1              if(zlg500cmd(5)!=SPI_OK)
 427   1                      return SPI_ERR;
C51 COMPILER V7.50   ZLG500                                                                11/20/2007 11:25:43 PAGE 8   

 428   1                      
 429   1              if(spi_buffer[STATUS]==MI_OK)
 430   1              {
 431   2                      memcpy(_Data,&spi_buffer[INFO],_Length);
 432   2              }
 433   1              return spi_buffer[STATUS];
 434   1      }
 435          
 436          uchar mifs_write_E2(uchar _Adr,uchar _Length,uchar idata *_Data)
 437          {
 438   1              spi_buffer[0]=0;
 439   1              spi_buffer[COMMAND]=0x62;
 440   1              spi_buffer[LENGTH]=_Length+2;
 441   1              spi_buffer[ADR]=_Adr;
 442   1              spi_buffer[4]=_Length;
 443   1              memcpy(&spi_buffer[5],_Data,_Length);
 444   1                      
 445   1              if(zlg500cmd(_Length+5)!=SPI_OK)
 446   1                      return SPI_ERR;
 447   1                      
 448   1              return spi_buffer[STATUS];
 449   1      }
 450          
 451          uchar mifs_value(uchar _Mode,uchar _Adr,long idata *_Value,uchar _Trans_Adr)
 452          {
 453   1              uchar *temp=(uchar *)_Value;
 454   1      
 455   1              spi_buffer[SEQNR]=0;
 456   1              spi_buffer[COMMAND]=0x70;
 457   1              spi_buffer[LENGTH]=7;
 458   1              spi_buffer[DATA]=_Mode;
 459   1              spi_buffer[DATA+1]=_Adr;
 460   1              spi_buffer[DATA+2]=*(temp+3);
 461   1              spi_buffer[DATA+3]=*(temp+2);
 462   1              spi_buffer[DATA+4]=*(temp+1);
 463   1              spi_buffer[DATA+5]=*temp;
 464   1              spi_buffer[DATA+6]=_Trans_Adr;
 465   1                      
 466   1              if(zlg500cmd(10)!=SPI_OK)
 467   1                      return SPI_ERR;
 468   1              
 469   1              return spi_buffer[STATUS];
 470   1      }  


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1251    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      18
   IDATA SIZE       =     26    ----
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -