Я сделал свою собственную плату с чипом STM32L031K6 и ST25DV64K NFC. Я использую приложение для Android "NFC Tools". Я могу прочитать UID чипа NFC с приложением, поэтому антенна настроена правильно. Я также могу прочитать UID с микроконтроллера через шину I2C. Когда я записываю в память EEPROM чип NFC с микроконтроллером, я не могу прочитать данные с помощью приложения NFC. Там написано, что тег пуст. Я думаю, что мне не хватает конфигурации, но я не могу найти какую.
Вот мой код, выполненный один раз:
uint8_t ToWrite = 15;
uint8_t Password[17] = {0}; //Default password is"00000000"
Password[8] = 0x09; //Validation Code
// ST25DV_Address_E21 0x57 << 1; // Device select code= 0b1010111 ; E2 = 1
Password_Address = 0x900
HAL_I2C_Mem_Write(&hi2c1, ST25DV_Address_E21, Password_Address, 2, Password, 17, 0xFFF);
HAL_Delay(200);
//Read the UID
HAL_I2C_Mem_Read(&hi2c1, ST25DV_Address_E21, 0x18, 2, UID_Read, 8, 0xFFF); // This line works, UID displayed in the app and in the debugger are the same
HAL_Delay(500);
//Write some data in the eepprom memory (first address: 0x00)
for(int i = 0; i< 250; i++)
{
ToWrite++;
HAL_I2C_Mem_Write(&hi2c1,ST25DV_Address_E21, i, 2, &ToWrite, 1, 0xFF);
}