#tags #nfc #communicating #mem #devices #high-level #srix4k-cached

bin+lib srix4k

用于与SRIX4K NFC标签通信的高级crate

1 个不稳定版本

使用旧的Rust 2015

0.1.0 2023年5月13日

#964硬件支持

GPL-3.0-only

19KB
214

srix4k

这个crate是读取/写入SRIX4K标签的高级方法。

这个crate最有趣的功能是 Srix4kCached 结构体。这个结构体缓存了对连接的SRIX4K标签的内存访问,加快了读写操作。要向标签写入数据,请在 Srix4kCached 结构体上调用 .sync() 方法。

示例

use nfc1::{Result};
use srix4k::{Srix4kCached, mem};

fn main() -> Result<()> {
    let mut context = nfc1::Context::new()?;
    let mut device = context.open()?;
    device.set_property_bool(nfc1::Property::InfiniteSelect, true)?;
    
    let mut tag = Srix4kCached::connect_from(device)?;
    println!("uid: 0x{:X}", tag.uid_get()?);
    
    let block00 = tag.eeprom_get_mut(mem::EEPROM.start)?;
    println!("block 00: {:#010X}", block00);
    *block00 = 0xDEADBEEF;
    
    tag.sync()?;

    Ok(())
}

依赖项

~1–3MB
~62K SLoC