Мне удалось связаться с устройством PN532 через микроконтроллер (RS232). Я выхожу из режима низкого энергопотребления, я получаю версию прошивки и общий статус.
Теперь я хочу прочитать тег типа MiFare (ISO / IEC14443), и отправляемый кадр выглядит следующим образом:
передачаBuffer [0] = 0x00;
TransmissionBuffer [1] = 0x00;
translationBuffer [2] = 0xFF;
трансмиссионный буфер [3] = 0x04;
трансмиссионный буфер [4] = 0xFC;
трансмиссионный буфер [5] = 0xD4;
передачаBuffer [6] = 0x4A;
трансмиссионный буфер [7] = 0x01;
передачаBuffer [8] = 0x00;
буфер передачи [9] = 0xE1;
передачаBuffer [10] = 0x00;
И кадр, на который отвечает PN532:
receiveBuffer [0] = 0x00;
приемный буфер [1] = 0x00;
приемный буфер [2] = 0xFF;
приемный буфер [3] = 0x00;
приемный буфер [4] = 0xFF;
приемный буфер [5] = 0x00;
Я хочу указать, что я выполняю процедуру при приеме данных от MCU, которая состоит из таймера, который сбрасывается каждый раз, когда байт поступает из PN532, и когда больше не поступает байтов, таймер переполняется, и это предполагается что кадр завершен.
Таким образом, в одной упаковке я получаю ACK больше ответа.
Чтобы исключить, что ответ на команду "InListPassiveTarget" занимает больше времени, чем таймер, я пробовал до 20 секунд, и для этой команды поступает только ACK.
Для остальных, о которых я говорил в начале, проблем нет.
Заранее благодарен за любые предложения или комментарии.
Спасибо