M5Unit-RFID 0.0.1 git rev:d8076ed
Loading...
Searching...
No Matches
m5::unit::UnitWS1850S Class Reference

Radio frequency identification unit. More...

#include <unit_WS1850S.hpp>

Inheritance diagram for m5::unit::UnitWS1850S:
m5::unit::UnitMFRC522

Public Member Functions

 UnitWS1850S (const uint8_t addr=DEFAULT_ADDRESS)
 Constructor.
 
virtual ~UnitWS1850S ()
 Destructor.
 
virtual bool begin () override
 Begin the unit.
 
- Public Member Functions inherited from m5::unit::UnitMFRC522
 UnitMFRC522 (const uint8_t addr=DEFAULT_ADDRESS)
 Constructor.
 
virtual ~UnitMFRC522 ()
 Destructor.
 
virtual void update (const bool force=false) override
 Update internal state.
 
m5::nfc::NFC NFCMode () const
 Gets the current operating mode.
 
bool configureNFCMode (const m5::nfc::NFC mode)
 Configure NFC mode.
 
bool softReset (const bool blocking=true)
 Software reset.
 
bool selfTest ()
 Self test.
 
config_t config ()
 Gets the configuration.
 
void config (const config_t &cfg)
 Set the configuration.
 
bool readAntennaStatus (bool &status)
 Read the antenna status.
 
bool turnOnAntenna ()
 Turn on the antenna.
 
bool turnOffAntenna ()
 Turn off the antenna.
 
bool readReceiverGain (mfrc522::ReceiverGain &gain)
 Gets the receiver gain.
 
bool writeReceiverGain (const mfrc522::ReceiverGain gain)
 Write the receiver gain.
 
bool readTPrescaler (uint16_t &tprescale)
 Read the TPrescaler.
 
bool writeTPrescaler (const uint16_t tprescale)
 Write the TPrescaler.
 
bool calculateCRC (uint16_t &result, const uint8_t *buf, const uint8_t len)
 Calculate CRC by hardware.
 
bool calculateSoftwareCRC (uint16_t &result, const uint8_t *buf, const uint8_t len)
 Calculate CRC by software.
 
bool nfcaTransceive (uint8_t *rx, uint16_t &rx_len, const uint8_t *tx, const uint16_t tx_len, const uint32_t timeout_ms)
 Transceive.
 
bool request (uint16_t &atqa)
 Request for idle PICC.
 
bool wakeup (uint16_t &atqa)
 Wakeup for idle/halt PICC.
 
bool selectWithAnticollision (bool &completed, m5::nfc::a::PICC &picc, const uint8_t lv)
 Select PICC with anti-collision.
 
bool select (const m5::nfc::a::PICC &picc)
 Select specific PICC.
 
bool readBlock (uint8_t rx[16], const uint8_t block)
 Read the 1 block / 4 page (16 bytes)
 
bool writeBlock (const uint8_t block, const uint8_t tx[16])
 Write the 1 block.
 
bool hlt ()
 Hlt for PICC.
 
bool mifareClassicAuthenticateA (const m5::nfc::a::PICC &picc, const uint8_t block, const m5::nfc::a::mifare::classic::Key &key=m5::nfc::a::mifare::classic::DEFAULT_KEY)
 Authentication using keyA of the specified block.
 
bool mifareClassicAuthenticateB (const m5::nfc::a::PICC &picc, const uint8_t block, const m5::nfc::a::mifare::classic::Key &key=m5::nfc::a::mifare::classic::DEFAULT_KEY)
 Authentication using keyB of the specified block.
 
bool mifareClassicStopCrypto1 ()
 Exit from authenticated state for MIFARE classic.
 
bool mifareClassicValueBlock (const m5::nfc::a::Command cmd, const uint8_t block, const uint32_t arg=0)
 Operation for the value block.
 

Protected Member Functions

virtual bool self_test () override
 self test
 
- Protected Member Functions inherited from m5::unit::UnitMFRC522
bool modify_bit_register8 (const uint8_t reg, const uint8_t set_mask, const uint8_t clear_mask)
 
bool set_bit_register8 (const uint8_t reg, const uint8_t bits)
 
bool clear_bit_register8 (const uint8_t reg, const uint8_t bits)
 
bool change_bit_register8 (const uint8_t reg, const uint8_t bits, const uint8_t mask)
 
bool read_register_with_align (const uint8_t reg, uint8_t *buf, const uint8_t len, const uint8_t align)
 
bool write_pcd_command (const mfrc522::Command cmd)
 
bool reset_baud_rates ()
 
bool flush_fifo_buffer ()
 
bool wait_comm_irq (const uint8_t irq, const uint32_t duration)
 
bool wait_div_irq (const uint8_t irq, const uint32_t duration)
 
bool transmit_command (const mfrc522::Command cmd, const uint8_t *buf, const uint8_t len, const uint8_t txLast=0, const uint8_t rxAlign=0)
 
bool transceive (uint8_t *rbuf, uint16_t &rlen, const uint8_t *buf, const uint16_t len, const uint32_t timeout_ms, uint8_t &validBits, const uint8_t rxAlign=0, const bool crc=false, uint8_t *err=nullptr)
 
bool picc_haltA ()
 
bool read_block (uint8_t *rbuf, uint8_t &rlen, const uint8_t addr)
 
bool write_block (const uint8_t block, const uint8_t *buf, const uint8_t len)
 
bool write_page (const uint8_t page, const uint8_t *buf, const uint8_t len)
 
bool request_wakeup (uint16_t &atqa, const bool request)
 
bool anti_collision (const uint8_t cascadeLevel, uint8_t *buf)
 
bool mifare_classic_authenticate (const m5::nfc::a::Command cmd, const m5::nfc::a::PICC &picc, const uint8_t block, const m5::nfc::a::mifare::classic::Key &key)
 
bool mifare_classic_transceive (const m5::nfc::a::Command cmd, const uint8_t block, const uint32_t timeout_ms)
 
bool mifare_classic_transceive (const uint8_t *buf, const uint8_t len, const uint32_t timeout_ms, const bool usingtimeout=false)
 
bool calculate_crc (uint16_t &result, const uint8_t *buf, const uint8_t len)
 

Additional Inherited Members

- Protected Attributes inherited from m5::unit::UnitMFRC522
config_t _cfg {}
 
uint16_t _tprescaler {}
 

Detailed Description

Radio frequency identification unit.

Functionally compatible with MFRC522

Constructor & Destructor Documentation

◆ UnitWS1850S()

m5::unit::UnitWS1850S::UnitWS1850S ( const uint8_t addr = DEFAULT_ADDRESS)
inlineexplicit

Constructor.

Parameters
addrI2C address

Member Function Documentation

◆ begin()

bool m5::unit::UnitWS1850S::begin ( )
overridevirtual

Begin the unit.

Returns
True if successful

Reimplemented from m5::unit::UnitMFRC522.

◆ self_test()

bool m5::unit::UnitWS1850S::self_test ( )
overrideprotectedvirtual

self test

Returns
Always false
Warning
It seems to be compatible in function, but may not be compatible in behavior

Reimplemented from m5::unit::UnitMFRC522.