Component: RFID (MFRC522) (Wireless)
From Flowcode Help
Jump to navigationJump to searchAuthor | Ben Rowland and STibor |
Version | 3.0 |
Category | Wireless |
Contents
RFID (MFRC522) component
Functions designed to work with the MFRC522 contactless reader IC. The MFRC522 supports all variants of the MIFARE Mini, MIFARE 1K, MIFARE 4K, MIFARE Ultralight, MIFARE DESFire EV1 and MIFARE Plus RF identification protocols.
Detailed description
No detailed description exists yet for this component
Examples
Here is a basic example program that reads the UID from a Mifare RFID tag and displays on an LCD. If the UID matches the UID stored in memory then a solenoid will fire allowing a door to be unlocked etc.
Here is a basic example program to read and modify data stored on a Mifare RFID tag.
Downloadable macro reference
![]() |
CompareUID |
Compares the UID from the ReadCardSerial macro with 4 byte UID. Returns 0 if the addresses match. | |
![]() |
Add0 |
![]() |
Add1 |
![]() |
Add2 |
![]() |
Add3 |
![]() |
Return |
![]() |
IsNewCardPresent |
Is there a card present for us to communicate with. Returns 0 for no card and 1 for valid card present. | |
![]() |
Return |
![]() |
GetType |
Translates the SAK (Select Acknowledge) to a PICC type | |
![]() |
sak |
The SAK byte returned from PICC_Select | |
![]() |
Return |
![]() |
AntennaOff |
Switches off the RFID antenna to save power. The antenna must be switched on again before communicating with an RFID tag. | |
![]() |
Return |
![]() |
MifareWrite |
Writes to a block of data on a MIFARE type tag | |
![]() |
BlockAddress |
![]() |
Buffer |
![]() |
BufferSize |
![]() |
Return |
![]() |
Select |
![]() |
ValidBits |
![]() |
Return |
![]() |
StopCrypto |
Used to exit the PCD from its authenticated state. Remember to call this function after communicating with an authenticated PICC - otherwise no new communications can start. | |
![]() |
Return |
![]() |
MifareRead |
Reads from a block of data on a MIFARE type tag | |
![]() |
BlockAddress |
![]() |
Buffer |
![]() |
BufferSize |
![]() |
Return |
![]() |
HaltA |
Instructs a PICC in state ACTIVE(*) to go to state HALT | |
![]() |
Return |
![]() |
ReadUIDByte |
![]() |
Index |
0-9 = UID Data Bytes, 10 = UID Length, 11 = UID SAK | |
![]() |
Return |
![]() |
AntennaOn |
Switches on the RFID antenna. Called as part of the Initialise macro. | |
![]() |
Return |
![]() |
Initialise |
Initialises the RFID module ready for interaction with RFID tags. | |
![]() |
Return |
![]() |
CardBitmap |
Displays a monochrome bitmap read from the card on the LCD | |
![]() |
X |
Range 0-127 | |
![]() |
Y |
Range 0-31 | |
![]() |
Filename |
![]() |
Return |
![]() |
CardOpen |
Attempts to open an existing file on the SD card 255=Error, 1=File not found, 0=Open OK | |
![]() |
Filename |
![]() |
Return |
![]() |
Forwards |
Drives the robot forwards - waits for the distance to be traversed before returning | |
![]() |
Distance |
Distance in mm | |
![]() |
Return |
![]() |
ReadBearing |
Reads the compass bearing based on the degrees clockwise from magnetic north. | |
[[File:]] - | Return |
![]() |
GetConsoleHandle |
Gets the handle to the console allowing data displaying on the panel etc. | |
[[File:]] - | Return |
![]() |
LCDDrawLine |
Allows a single pixel width line to be drawn on the LCD | |
![]() |
X1 |
X Pixel 0-127 | |
![]() |
Y1 |
Y Pixel 0-31 | |
![]() |
X2 |
X Pixel 0-127 | |
![]() |
Y2 |
Y Pixel 0-31 | |
![]() |
Return |
![]() |
ServoAutoMoveToPosition |
Allows one of the servo positions to move gradually to a new position | |
![]() |
Channel |
Range 0-3 | |
![]() |
Position |
Range 0-255 | |
![]() |
Return |
![]() |
ReadAllValue |
Reads a single value stored from the read all command Index dictates which sensor value to read | |
![]() |
Index |
0=SW, 1-8=IR, 9-10=Line, 11=Light, 12=Mic, 13-15=Accel | |
![]() |
Return |
![]() |
LCDBacklight |
Allows the LCD backlight brighntess to be adjusted | |
![]() |
Intensity |
Range 0-100, 0=Off, 1=Min Brightness, 100=Max Brightness | |
![]() |
Return |
![]() |
LCDDrawRect |
Allows a rectangle to be drawn on the LCD | |
![]() |
X1 |
X Pixel 0-127 | |
![]() |
Y1 |
Y Pixel 0-31 | |
![]() |
X2 |
X Pixel 0-127 | |
![]() |
Y2 |
Y Pixel 0-31 | |
![]() |
Return |
![]() |
ReadLine |
Reads one of the IR line sensors 0-1 0=Left, 1=Right | |
![]() |
index |
0=Left, 1=Right | |
![]() |
Return |
![]() |
ServoDisable |
Allows one of the servo outputs 0-3 to be disabled | |
![]() |
Channel |
Range 0-3 | |
![]() |
Return |
![]() |
ServoEnable |
Allows one of the servo outputs 0-3 to be enabled | |
![]() |
Channel |
Range 0-3 | |
![]() |
Return |
![]() |
CardReadByte |
Reads a byte from the currently open file. Starts at the beginning of the file and auto increments to the end | |
![]() |
Return |
![]() |
CardErase |
Attempts to delete an existing file on the SD card 255=Error, 1=File not found, 0=Delete OK | |
![]() |
Filename |
![]() |
Return |
![]() |
CardWriteByte |
Appends a byte to the end of the currently open file | |
![]() |
Data |
![]() |
Return |
![]() |
EncoderRead |
Reads one of the motor encoder counters. Approx 0.328296mm of travel per encoder unit. | |
![]() |
index |
0=Left, 1=Right | |
![]() |
Return |
![]() |
SetMotors |
Sets the motor speeds without feedback Range -100 to 100 | |
[[File:]] - | Left |
Range -100 to 100 | |
[[File:]] - | Right |
Range -100 to 100 | |
![]() |
Return |
![]() |
Backwards |
Drives the robot backwards - waits for the distance to be traversed before returning | |
![]() |
Distance |
Distance in mm | |
![]() |
Return |
![]() |
EncoderReset |
Resets the motor encoder counters | |
![]() |
Return |
![]() |
LCDVerbose |
Allows the LCD to automatically report the API commands as they get processed. Default - verbose on | |
![]() |
State |
0=Off 1=On | |
![]() |
Return |
![]() |
SetProp |
Allows the COM port property to be set from a parent component. | |
![]() |
PropName |
![]() |
PropVal |
![]() |
Return |
![]() |
CardInit |
Attempts to startup the SD card 255=No Card, 254=Init Fail, 0=Init OK | |
![]() |
Return |
![]() |
GetProp |
Allows the property filter for the COM port list to be copied to a parent component. | |
![]() |
PropName |
![]() |
Return |
![]() |
LCDClear |
Clears the LCD | |
![]() |
Return |