Я работаю над проектом, чтобы обмениваться большими данными с ПК на Android-устройство через NFC. Я использую ACR122.NFC: ограничение длины APDU и SNEP
Ниже приводится общее Exemple данных, отправленное:
// ADPU
FF FF 00 00 00 nn // CLA, INS, P1, P2, Le, Lc
D4 40 // TFI, PD0
01 // (Mi), Target
// LLCP
13 20 // DSAP, PTYPE, SSAP
00 // Sequence
D4 40 // TFI, PD0
// SNEP
10 02 // Protocol Version, Action
nn nn nn nn // Total SNEP Length
// NDEF Header
A2 // First byte (MB = 1, ME = 0, Cf = 1, SR = 0, Il, TNF)
22 // Type length
mm mm mm mm // Payload length
// NDEF Content
61.....65 // Type (34 bytes in that case)
01.....01 // Payload (mm mm mm mm bytes)
Здесь я посылаю записи (не короткую запись) .so заголовка ЦНКА позволяет ввести 4 байта длину полезной нагрузки.
Окончательно, мой вопрос в том, как мы можем отправить такую большую полезную нагрузку в отношении 1-байтового APDU Lc?
Если это ограничение связано только с чипом pn532 или PS/SC, какое альтернативное оборудование вы бы предложили?
Спасибо за любые разъяснения
EDIT:
Я нашел то, что искал здесь:
Sending Extended APDU to Javacard
Это аппаратная проблема, PN532 не поддерживает расширенную APDU.
Вы не можете разделить данные на куски? просто из любопытства, насколько он велик? –
Разделение в куске подразумевает указание номера последовательности (LLCP). Номер последовательности не может выйти 16 (4 бита). 16 последовательностей ~ 250 байт очень далеки от возможного значения FF FF FF FF длины полезной нагрузки SNEP. Я просто экспериментирую с NFC, но я пытаюсь отправить около 100 кб. – Inset07
Я могу просто смутить вас. но 100 k (байт) звучат как огромное количество, за которое обычно могут обрабатывать эти теги. поэтому, если я правильно понимаю, у вас недостаточно памяти для ваших требований на карте? в этом случае ваша проблема - это карта, а не вспомогательное оборудование. –