Dear all,
my company realized a board integrated the trf7970a. I wanna communicate with this device through wipy microcontroller.After the software inizialization I can read all register of devices like shown the datasheet in page 53. After the I send the inventory command, that is only 8 bytes.
buf[0]=0x8F #Send Inventory(8B)[0x8F 0x91 0x3D 0x00 0x30 0x26 0x01 0x00]
buf[1]=0x91
buf[2]=0x3D
buf[3]=0x00
buf[4]=0x30
buf[5]=0x26 #,0x26 single subcarrier, high data rate, inventory flag,no protocol extensions,no AFI,1 slot,option flag, RFU=0
buf[6]=0x01 #0x01
buf[7]=0x00
After the the sending of the command the IRQ occurs 1.6 ms after the SS line goes high . The IRQ status register read yields 0x80, which indicates that TX in complete like shown in datasheet in page 41. Then , if tag is in the field and no error is detected by the reader a second interrupt is excpected and occurs 4 ms after first IRQ. I should read for the second interrupt 0x40 and 0x3E when a tag is detected but I don't detect anything.
I put this tag bought on amazon:
https://www.amazon.it/ISO15693-scheda-bianca-Icode-confezione/dp/B07DBKX4CG
PS: this is the initial settings:
def NFC_init():
testcommand=[0]
testcommand_=[0,0]
DirectCommand(SOFT_INIT)
testcommand[0] = IDLE
DirectCommand(IDLE)
time.sleep_ms(2)
DirectCommand(RESET)
time.sleep_ms(2)
testcommand_[0] = NFC_TARGET_LEVEL
testcommand_[1] = 0x07
WriteSingle(2,testcommand_)
ReadSingle(1,testcommand_)
testcommand_=[0,0]
testcommand_[0] = MODULATOR_CONTROL
testcommand_[1] = 0x08 #ASK 100%, no SYS_CLK output,0x01
#6.78 MHz, OOK 100%,0x81
WriteSingle(len(testcommand_),testcommand_)
testcommand[0] = MODULATOR_CONTROL
ReadSingle(1,testcommand_)
testcommand_[0] = REGULATOR_CONTROL
testcommand_[1] = 0x06
WriteSingle(2,testcommand_)
ReadSingle(1,testcommand_)
turnRFOn=[0,0]
tturnRFOn[0] = CHIP_STATUS_CONTROL
turnRFOn [1]=0x20
WriteSingle(len(turnRFOn),turnRFOn)
ReadSingle(1,turnRFOn)
WriteSingle(len(testcommand_), testcommand_)
testcommand_[0] = ISO_CONTROL
testcommand_[1] = 0x02 # iso15693
WriteSingle(len(testcommand_), testcommand_)
ReadSingle(1,testcommand_)
Are the initial setting corrrected?(modulator control, iso control , regualtor control, chip status control are correct?)
Thanks in advance
I 'll very appreciate your answrer . Thanks.
Francesco Pugliese