M5Unit-NFC 0.0.3 git rev:59f5362
Loading...
Searching...
No Matches
m5::nfc::NFCLayerInterface Class Referenceabstract

Common interface for NFC layer. More...

#include <nfc_layer.hpp>

Inheritance diagram for m5::nfc::NFCLayerInterface:
m5::nfc::NFCLayerA m5::nfc::NFCLayerB m5::nfc::NFCLayerF m5::nfc::NFCLayerV

Public Member Functions

virtual m5::nfc::NFCForumTag supportsNFCTag () const
 activePICC's NDEF type
 
virtual file_system_feature_t supportsFilesystem () const
 activePICC's File system
 
virtual m5::nfc::isodep::IsoDEPisoDEP ()
 ISO-DEP interface (nullptr if not supported)
 
virtual uint16_t maximum_fifo_depth () const =0
 Maximum FIFO depth.
 
virtual bool transceive (uint8_t *rx, uint16_t &rx_len, const uint8_t *tx, const uint16_t tx_len, const uint32_t timeout_ms)
 Transceive (RF command)
 
virtual bool transmit (const uint8_t *tx, const uint16_t tx_len, const uint32_t timeout_ms)
 Transmit only.
 
virtual bool receive (uint8_t *rx, uint16_t &rx_len, const uint32_t timeout_ms)
 Receive only.
 
virtual bool read (uint8_t *rx, uint16_t &rx_len, const uint16_t saddr)=0
 Read NDEF (block)
 
virtual bool write (const uint16_t saddr, const uint8_t *tx, const uint16_t tx_len)=0
 Write NDEF (block)
 
virtual uint16_t first_user_block () const =0
 First user block.
 
virtual uint16_t last_user_block () const =0
 Last user block.
 
virtual uint16_t user_area_size () const =0
 User area size (bytes)
 
virtual uint16_t unit_size_read () const =0
 Unit size for read.
 
virtual uint16_t unit_size_write () const =0
 Unit size for write.
 
virtual uint8_t maximum_read_blocks () const
 Maximum read blocks for NFC-F.
 
virtual uint8_t maximum_write_blocks () const
 Maximum write blocks for NFC-F.
 

Detailed Description

Common interface for NFC layer.

Member Function Documentation

◆ first_user_block()

virtual uint16_t m5::nfc::NFCLayerInterface::first_user_block ( ) const
pure virtual

◆ isoDEP()

virtual m5::nfc::isodep::IsoDEP * m5::nfc::NFCLayerInterface::isoDEP ( )
inlinevirtual

ISO-DEP interface (nullptr if not supported)

Reimplemented in m5::nfc::NFCLayerA, and m5::nfc::NFCLayerB.

◆ last_user_block()

virtual uint16_t m5::nfc::NFCLayerInterface::last_user_block ( ) const
pure virtual

◆ maximum_fifo_depth()

virtual uint16_t m5::nfc::NFCLayerInterface::maximum_fifo_depth ( ) const
pure virtual

Maximum FIFO depth.

Implemented in m5::nfc::NFCLayerA, m5::nfc::NFCLayerB, m5::nfc::NFCLayerF, and m5::nfc::NFCLayerV.

◆ maximum_read_blocks()

virtual uint8_t m5::nfc::NFCLayerInterface::maximum_read_blocks ( ) const
inlinevirtual

Maximum read blocks for NFC-F.

Reimplemented in m5::nfc::NFCLayerF.

◆ maximum_write_blocks()

virtual uint8_t m5::nfc::NFCLayerInterface::maximum_write_blocks ( ) const
inlinevirtual

Maximum write blocks for NFC-F.

Reimplemented in m5::nfc::NFCLayerF.

◆ read()

virtual bool m5::nfc::NFCLayerInterface::read ( uint8_t * rx,
uint16_t & rx_len,
const uint16_t saddr )
pure virtual

◆ receive()

virtual bool m5::nfc::NFCLayerInterface::receive ( uint8_t * rx,
uint16_t & rx_len,
const uint32_t timeout_ms )
inlinevirtual

Receive only.

Reimplemented in m5::nfc::NFCLayerB.

◆ supportsFilesystem()

virtual file_system_feature_t m5::nfc::NFCLayerInterface::supportsFilesystem ( ) const
inlinevirtual

activePICC's File system

Reimplemented in m5::nfc::NFCLayerA.

◆ supportsNFCTag()

virtual m5::nfc::NFCForumTag m5::nfc::NFCLayerInterface::supportsNFCTag ( ) const
inlinevirtual

activePICC's NDEF type

Reimplemented in m5::nfc::NFCLayerA.

◆ transceive()

virtual bool m5::nfc::NFCLayerInterface::transceive ( uint8_t * rx,
uint16_t & rx_len,
const uint8_t * tx,
const uint16_t tx_len,
const uint32_t timeout_ms )
inlinevirtual

Transceive (RF command)

Reimplemented in m5::nfc::NFCLayerA, and m5::nfc::NFCLayerB.

◆ transmit()

virtual bool m5::nfc::NFCLayerInterface::transmit ( const uint8_t * tx,
const uint16_t tx_len,
const uint32_t timeout_ms )
inlinevirtual

Transmit only.

Reimplemented in m5::nfc::NFCLayerB.

◆ unit_size_read()

virtual uint16_t m5::nfc::NFCLayerInterface::unit_size_read ( ) const
pure virtual

Unit size for read.

Implemented in m5::nfc::NFCLayerA, m5::nfc::NFCLayerB, m5::nfc::NFCLayerF, and m5::nfc::NFCLayerV.

◆ unit_size_write()

virtual uint16_t m5::nfc::NFCLayerInterface::unit_size_write ( ) const
pure virtual

Unit size for write.

Implemented in m5::nfc::NFCLayerA, m5::nfc::NFCLayerB, m5::nfc::NFCLayerF, and m5::nfc::NFCLayerV.

◆ user_area_size()

virtual uint16_t m5::nfc::NFCLayerInterface::user_area_size ( ) const
pure virtual

User area size (bytes)

Implemented in m5::nfc::NFCLayerA, m5::nfc::NFCLayerB, m5::nfc::NFCLayerF, and m5::nfc::NFCLayerV.

◆ write()

virtual bool m5::nfc::NFCLayerInterface::write ( const uint16_t saddr,
const uint8_t * tx,
const uint16_t tx_len )
pure virtual