Mif.ValueSL3
This command performs an operation on a value block.
It can be used for MIFARE Plus cards in security level 3.
Parameters (request frame)
|
Name
|
Type/Size
|
Description
|
|
-
|
Bit mask (8 bits)
|
-
|
|
RFU
|
Integer (bit mask area 0xFE)
|
Zero padding
|
|
NoMacOnResp
|
Boolean (bit 0x01)
|
-
|
|
Cmd
|
Enumeration (8 bits)
|
Selects a value operation.
Values (6):
-
Increment (0x00)
Increments a value block by the given value and
stores the result in the Transfer Buffer.
-
Decrement (0x01)
Decrements a value block by the given value and
stores the result in the Transfer Buffer.
-
Transfer (0x02)
Transfers the content of the Transfer Buffer to the
specified address. Can only be executed after an Increment,
Decrement, IncrementTransfer, DecrementTransfer, or Restore command.
-
IncrementTransfer (0x03)
Combined Increment and Transfer.
-
DecrementTransfer (0x04)
Combined Decrement and Transfer.
-
Restore (0x05)
Copies the value block content to the TransferBuffer.
|
|
Block
|
Integer (16 bits)
|
Value block number.
|
Optional field, condition:
(Cmd == Cmd.IncrementTransfer) or (Cmd == Cmd.DecrementTransfer)
|
DestBlock
|
Integer (16 bits)
|
Destination block number for combined IncrementTransfer
or IncrementTransfer command.
|
|
Optional field, condition:
(Cmd == Cmd.Increment) or (Cmd == Cmd.Decrement) or (Cmd == Cmd.IncrementTransfer) or (Cmd == Cmd.DecrementTransfer)
|
Value
|
Integer (32 bits)
|
Value for Increment, Decrement, IncrementTransfer,
IncrementTransfer.
|
|
Returned values (response frame)
|
Name
|
Type/Size
|
Description
|
|
Length of TMCounterTMValue
|
Integer (8 bits)
|
Length of TMCounterTMValue in bytes
|
|
TMCounterTMValue
|
Raw data
|
Present if targeting a TMProtectedBlock which is configured to return
TMC (4 bytes) and TMV (8 bytes)
|