cancel
Showing results for 
Search instead for 
Did you mean: 

How to change the duration of detect pulse from ST25R3920 when in LPCD mode

CCClay
Associate II

I am trying to use the low power detection mode now, I want to try to use the phase detection function to implement a low power detection card, the 3920B can configure the interval time between each detection pulse, but Apple has no control over the pulse width of the detection pulse (pulse duration time) requirement, I would like to know how to modify the duration of the detection pulse.

This question is urgent. Who can help answer it in time? Thank you!

 

This post has been translated from Chinese to comply with the ST Community guidelines.

This discussion has been locked for participation. If you have a question, please start a new topic in order to ask your question
1 ACCEPTED SOLUTION

Accepted Solutions

Hi CCClay,

yes, for software based wake-up software needs to manually enable tx field, emit a measure command and turn off the receiver. 

Code would look like this:

 

    /* Field On and extend duration with adjustment */
    st25r3911WriteRegister( ST25R3911_REG_OP_CONTROL, (ST25R3911_REG_OP_CONTROL_en | ST25R3911_REG_OP_CONTROL_tx_en) );

    st25RMeasureTxDelay();

    /* Perform measurement */
    st25r3911ExecuteCommand( ST25R3911_CMD_MEASURE_PHASE );

    /* Field Off */
    st25r3911WriteRegister( ST25R3911_REG_OP_CONTROL, ST25R3911_REG_OP_CONTROL_en );

 

Where st25RMeasureTxDelay() could be a small for loop to induce a small delay.  tx_en bit can be immediately cleared as field stays until measurement is done. In this case SW is responsible for reading ST25R3911_REG_AD_RESULT and processing it: Wake-up evaluation, Auto averaging, etc. 

If interested in such full source code you will need to contact your local ST Sales team.

BR, Ulysses

View solution in original post

4 REPLIES 4
Ulysses HERNIOSUS
ST Employee

Hi CCClay,

Please see AN5320. It details TAWU = 25 μs and TPWU = 35 μs. With combining both amplitude and phase you can also achieve ~59us. 

Other values could only be achieved by software generating the pulses (limited by SPI speed).

BR, Ulysses

 

Hi,Ulysses

 

Thanks for your reply,I have seen AN5320 and also noticed the details you mentioned.I think the values couldn't be changed by configurating the device STR253920B。And i want to confirm if the way u mentioned change the value by software generating the pulses is to Open or Close the TX Driver?or other specific software operation ? Can u help with the specific answer ,Thanks very much!

 

BR,CCClay

Hi CCClay,

yes, for software based wake-up software needs to manually enable tx field, emit a measure command and turn off the receiver. 

Code would look like this:

 

    /* Field On and extend duration with adjustment */
    st25r3911WriteRegister( ST25R3911_REG_OP_CONTROL, (ST25R3911_REG_OP_CONTROL_en | ST25R3911_REG_OP_CONTROL_tx_en) );

    st25RMeasureTxDelay();

    /* Perform measurement */
    st25r3911ExecuteCommand( ST25R3911_CMD_MEASURE_PHASE );

    /* Field Off */
    st25r3911WriteRegister( ST25R3911_REG_OP_CONTROL, ST25R3911_REG_OP_CONTROL_en );

 

Where st25RMeasureTxDelay() could be a small for loop to induce a small delay.  tx_en bit can be immediately cleared as field stays until measurement is done. In this case SW is responsible for reading ST25R3911_REG_AD_RESULT and processing it: Wake-up evaluation, Auto averaging, etc. 

If interested in such full source code you will need to contact your local ST Sales team.

BR, Ulysses

Hi,Ulysses

 

Thank you very much for your reply, I will continue to try to debug according to your suggestion, thanks!

 

BR! CCClay