/*
* Copyright (c), Philips Semiconductors Gratkorn / Austria
*
* (C)PHILIPS Electronics N.V.2000
* All rights are reserved. Reproduction in whole or in part is
* prohibited without the written consent of the copyright owner.
* Philips reserves the right to make changes without notice at any time.
* Philips makes no warranty, expressed, implied or statutory, including but
* not limited to any implied warranty of merchantability or fitness for any
*particular purpose, or that the use will not infringe any third party patent,
* copyright or trademark. Philips must not be liable for any loss or damage
* arising from its use.
*/
#ifndef MFRC500_H
#define MFRC500_H
#ifdef __cplusplus
extern "C"
{
#endif
// General Include File for serveral defines concerning conditional library
// compilation and microcontroller usage
#include "OsDefs.h"
#define PICC_REQIDL 0x26 //!< request idle
#define PICC_REQALL 0x52 //!< request all
#define PICC_ANTICOLL1 0x93 //!< anticollision level 1 106 kBaud
#define PICC_ANTICOLL2 0x95 //!< anticollision level 2
#define PICC_ANTICOLL3 0x97 //!< anticollision level 3
#define PICC_AUTHENT1A 0x60 //!< authentication using key A
#define PICC_AUTHENT1B 0x61 //!< authentication using key B
#define PICC_READ 0x30 //!< read block
#define PICC_WRITE 0xA0 //!< write block
#define PICC_DECREMENT 0xC0 //!< decrement value
#define PICC_INCREMENT 0xC1 //!< increment value
#define PICC_RESTORE 0xC2 //!< restore command code
#define PICC_TRANSFER 0xB0 //!< transfer command code
#define PICC_HALT 0x50 //!< halt
/*
* This function has to be called before the first data is written to the
* MF RC500 in order to perform the internal configuration. A reset of the
* MF RC500 is done and several registers are set.
*/
FCT_PREF Mf500PcdConfig(void);
/*
* The MF RC500 reader IC configured in the slave configuration is able to
* communicate with another MF RC500 configured in the master configuration
* via the digital <em>MFin</em> and <em>MFOut</em> pins.
*
* The master MF RC500 reader IC sends commands and data using the
* <em>MFOut</em> pin. The slave reader IC receives the data via
* <em>MFin</em> pin. Sending data back from the slave IC is done connecting the
* <em>MFOut</em> for the slave IC and <em>MFin</em> for the master MF RC500.
*
* In this configuration the slave module can not be initialized by the
* microcontroller because only the <em>mifare in/out</em> interface is
* connected between both MF RC500's. The slave module has to be initialized
* before the connection is established. During this initialization the
* appropriate parameter settings are written to the E2PROM.
* After POR (power on reset) the IC reads these settings and initializes
* itself automatically as slave IC.
*
* Additionally, it is possible to connect the slave reader Ic to the �C
* to have the possibility to change the setting in the application later.
*/
FCT_PREF Mf500ActiveAntennaSlaveConfig(void);
/*
* This function initializes the master reader IC to use it in an active antenna
* configuration.
*
* This function is additional to the standard configuration
* <em>Mf500PcdConfig</em>.
*
* The MF RC500 reader IC configured in the master
* configuration is able to communicate with another MF RC500 configured in the
* slave configuration via the digital <em>MFin</em> and <em>MFout</em> pins.
* The corresponding slave configuration routine for the slave MF RC 500 can be
* initialized by the function <em>MF500ActiveAntennaSlaveConfig</em>.
*/
FCT_PREF Mf500ActiveAntennaMasterConfig(void);
/*
* Set MIFARE PCD (Proximity Coupling Device) with
* default values for the baudrate divider (106 kBaud).
*/
FCT_PREF Mf500PcdSetDefaultAttrib(void);
/*
* This function accesses the reader module and activates sending the REQ code
* to the MIFARE� card. After sending the command to the card the function
* waits for the card's answer.
*
* Please note, that this function has an identical functionality to the
* Mf500PiccCommonRequest function, which is desribed by ISO 14443A command set.
* Depending on the Request Code and the state of the cards in the field
* all cards reply with their Tag-Type synchronously. The time between end of the
* Request command and start of reply of the card is exactly 8 * 9.44 us long.
* The Tag-Type field is 16 bits long and only one bit out of 16 is set.
*
* When cards with different Tag-Types are in field, the MF RC500 is able to
* identify all types of cards in the RF-field. Further more, the Tag-Type
* is used to identify a card with cascaded serial number.
* Double and Triple serial numbers are possible.
*
* Relevant bit positions LSByte:
* <ul>
* <li> [8..7] UID size
* <ul>
* <li> 00 standard 32 bit long UID
* <li> 01 UID size double (56 bit long)
* <li> 10 UID size triple (80 bit long)
* </ul>
* <li> [5..1] if any bit is set, frame anticollision is supported;
* tag type recognition
* </ul>
*
*
* The complete MSByte is RFU.
*
* Note: Future cards will work also with other request codes.
*/
FCT_PREF Mf500PiccRequest(unsigned char req_code,
unsigned char *atq);
/*
* Please note, that this function has an identical functionallity
* to function Mf500PiccRequest.
*/
FCT_PREF Mf500PiccCommonRequest(unsigned char req_code,
unsigned char *atq);
/*
* This function calls MF500PiccCascAnticoll with select_code 0x93 to perform
* the anitcollision for MIFARE� Classic card ICs .
*/
FCT_PREF Mf500PiccAnticoll (unsigned char bcnt,
unsigned char *snr);
/*
* Corresponding to the specification in ISO 14443 A, this function handles
* extended serial numbers. Therefore more than one select_code is possible.
*
* The function transmits a select code and all ready tags are responding.
* The return value of this function will be the serial number of one PICC.
*/
FCT_PREF Mf500PiccCascAnticoll (unsigned char select_code,
unsigned char bcnt,
unsigned char *snr);
/*
* This function selects a card by the specified serial number. All other cards
* in the field fall back into the idle mode and they are not longer involved
* during the communication. The actual select procedure is done by the function
* <em>Mf500PiccCascSelect</em>, which is called with select_code 0x93.
*/
FCT_PREF Mf500PiccSelect(unsigned char *snr,
unsigned char *sak);
/*
* This functions selects a UID level, depending on select code and
* returns a Select Acknowledge byte.
*
* Corresponding to the specification in ISO 14443 A, this function
* is able to handle extended serial numbers. So that more than
* one select_codes are possible.
*
* Relevant bit positions in SAK are 6 and 1. All other bit positions
* are RFU.
*
* Valid combinations are:
* <ul>
* <li> XX1XX0XX UID complete, ATS available
* <li> XX0XX0XX UID complete, ATS not available
* <li> XXXXX1XX UID not complete
* </ul>
*/
FCT_PREF Mf500PiccCascSelect(unsigned char select_code,
unsigned char *snr,
unsigned char *sak);
/*
* This function performs a Request-Idle, Anticollision, Select sequence to
* activate the PICC and change its state from IDLE to ACTIVE state.
* Cascaded serialnumbers are handled correctly.
*/
FCT_PREF Mf500PiccActivateIdle(unsigned char br,
unsigned char *atq,
没有合适的资源?快使用搜索试试~ 我知道了~
基于AT89C52单片机 + RC500 Mifare 读卡器电路设计资料 包含原理图PCB及源代码
共71个文件
h:16个
c:10个
obj:6个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 5 下载量 3 浏览量
2021-08-28
15:39:27
上传
评论
收藏 690KB RAR 举报
温馨提示
基于AT89C52单片机 + RC500 Mifare 读卡器电路设计资料 包含原理图PCB及源代码
资源推荐
资源详情
资源评论
收起资源包目录
基于AT89C52单片机 + RC500 Mifare 读卡器电路设计资料 包含原理图PCB及源代码.rar (71个子文件)
基于AT89C52单片机 + RC500 Mifare 读卡器电路设计资料 包含原理图PCB及源代码
allcommands
RDIO.LST 52KB
MFRC500.lnp 76B
MFRC500.plg 8KB
RDIO.OBJ 14KB
MFRC500.hex 32KB
MFRC500 161KB
MFRC500.OMF.plg 6KB
MFRC500.Opt 2KB
RDIO.H 6KB
P89C51RX.H 6KB
MFRC500_Opt.Bak 2KB
MFRC500_Uv2.Bak 2KB
MFRC500.OMF 126KB
M500AuC.LST 486KB
main.LST 127KB
RC500TEST.PDS 2KB
main.h 8KB
M500AuC.c 70KB
M500AuC.OBJ 98KB
MFRC500..MAP 156KB
M500A.h 32KB
MFRC500..omf.plg 3KB
MFRC500..lnp 70B
main.OBJ 31KB
MFRC500.MAP 156KB
RDIO.C 4KB
MFRC500.Uv2 2KB
MFRC500.LIB 57KB
Mfreg500.h 9KB
MFRC500.M51 93KB
main.c 15KB
RC500.PCB 921KB
Antenna.Sch 6KB
mcu.sch 23KB
RC500连接AT89S52详细原代码
MFRC500原代码
code
RDIO.LST 6KB
MfErrNo.h 5KB
MFRC500.lnp 76B
RDIO.OBJ 14KB
MFRC500.hex 26KB
MfRc500.h..txt 15KB
MfRc500.h 15KB
MFRC500.OMF.plg 199B
MFRC500.Opt 3KB
RcCommunication.H 4KB
RDIO.H 6KB
MfRc500Reg.h 11KB
P89C51RX.H 6KB
PcdUtils.c 15KB
MFRC500_Opt.Bak 3KB
PcdShared.c 6KB
MFRC500_Uv2.Bak 2KB
MFRC500.OMF 126KB
PcdShared.h 3KB
M500AuC.LST 103KB
main.LST 23KB
RcCommunication.C 3KB
mfrc500uc.c 47KB
main.h 8KB
M500AuC.c 70KB
M500AuC.OBJ 98KB
M500A.h 32KB
main.OBJ 31KB
RDIO.C 4KB
MFRC500.Uv2 2KB
Mfreg500.h 9KB
PcdUtils.h 5KB
MFRC500.M51 93KB
main.c 15KB
请先阅读.txt 1KB
rc500.sch 15KB
ComponentList.xls 22KB
共 71 条
- 1
资源评论
- tyyyiuhh2022-06-16用户下载后在一定时间内未进行评价,系统默认好评。
- qq_459567652022-04-15用户下载后在一定时间内未进行评价,系统默认好评。
- qq20233197422023-09-13实在是宝藏资源、宝藏分享者!感谢大佬~
- kpass3212023-07-12资源很实用,内容详细,值得借鉴的内容很多,感谢分享。
- a26640451142021-12-11用户下载后在一定时间内未进行评价,系统默认好评。
木头1233
- 粉丝: 273
- 资源: 632
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功