The SPI function is working correcly and I send the data as the datasheet says. I first send the command word, in this case a 0xE8, SPI write command, and then I send the data byte I want to write. Then I send 3 bytes of dummy data so that I get the TAGs response. This it what the datasheet says to do, but then I load all the data of the EEPROM with the reader and nothing has benn written to memory of the EM4325. I get all 0s
Testing your success with NFC reader seems to be a smart method, but we cannot see wheter there could be other pitfalls. I would suggest testing the basic SPI communication not by writing to the EEPROM, but to read some other non-EEPROM
location, e.g. the temperature sensor. EEPROM might have additional constraints, e.g. write protection: From the manual:The SPI Write Enable Words contain bits for each EEPROM page that a user may define as having write permission for the SPI interface when operating as an SPI Slave device. If the corresponding bit is 0, then the SPI interface is not allowed to write to that EEPROM page. Note that the write enable bit is only one condition for writing to the EEPROM page and is used in conjunction with the memory lock bits (except for User memory) to control EEPROM write operations. If using the memory lock bits to prevent the SPI interface from writing to EEPROM, then both the pwd - write and permalock bits must be set
This is independant from the discussion whether you can use the PIC hardware SPI or not.