M5Unit-NFC 0.0.3 git rev:59f5362
Loading...
Searching...
No Matches
isoDEP.hpp File Reference

ISO Data Exchange Protocol. More...

#include <cstdint>
#include <vector>

Go to the source code of this file.

Classes

struct  m5::nfc::isodep::config_t
 ISO-DEP configuration. More...
 
struct  m5::nfc::isodep::RxInfo
 RX information. More...
 
class  m5::nfc::isodep::IsoDEP
 ISO Data Exchange Protocol. More...
 

Namespaces

namespace  m5
 Top level namespace of M5stack.
 
namespace  isodep
 For ISO-DEP.
 

Functions

uint32_t m5::nfc::isodep::fwi_to_ms (const uint8_t fwi, const float fc)
 Calculate waiting time(ms) by fwi and fc.
 
bool m5::nfc::isodep::detail::is_i_block (uint8_t pcb)
 
bool m5::nfc::isodep::detail::is_r_block (uint8_t pcb)
 
bool m5::nfc::isodep::detail::is_s_block (uint8_t pcb)
 
bool m5::nfc::isodep::detail::i_has_more (uint8_t pcb)
 
uint8_t m5::nfc::isodep::detail::i_bn (uint8_t pcb)
 
bool m5::nfc::isodep::detail::is_s_wtx (uint8_t pcb)
 
bool m5::nfc::isodep::detail::is_valid_rblock (uint8_t pcb)
 
bool m5::nfc::isodep::detail::r_is_nak (uint8_t pcb)
 
bool m5::nfc::isodep::detail::r_is_ack (uint8_t pcb)
 
uint8_t m5::nfc::isodep::detail::get_wtxm (uint8_t inf)
 
bool m5::nfc::isodep::detail::is_valid_wtxm (uint8_t wtxm)
 
uint32_t m5::nfc::isodep::detail::mul_clamp_u32 (uint32_t a, uint32_t b, uint32_t maxv)
 
uint8_t m5::nfc::isodep::detail::make_i_pcb (uint8_t bn, bool more, bool has_cid, bool has_nad)
 
uint8_t m5::nfc::isodep::detail::make_r_ack (uint8_t bn, bool has_cid)
 
uint8_t m5::nfc::isodep::detail::make_s_wtx_ack (bool has_cid)
 
uint16_t m5::nfc::isodep::fsci_to_fsc (const uint8_t fsci)
 Convert FSCI to FSC (ISO/IEC 14443-4)
 

Variables

constexpr uint16_t m5::nfc::isodep::MAX_FRAME_SIZE {256}
 

Detailed Description

ISO Data Exchange Protocol.