when the MCU goes to sleep,MCU's INTI awakened by ACT interrupt, the program will be re-initialized. Assuming I have not specially designed it, the G SENSOR RESET and the set value will be rewritten in accordance with the process.
Is this behavior acceptable to G SENSOR? Or not recommend to perform RESET so often?Is there any risk if RESET is performed frequently?
Thanks for the question. Do you mean you soft reset the ADXL362 every time the Activity Interrupt is triggered? The part itself is not limited to how often the soft reset is performed on it. But just note that if you power cycle the part, you have to make sure you discharge the supply completely before you reapply the power.
Yes, but when reset so often, sometimes read DEVID_AD REG value is 0x00.
Should I check "Power-Up to Standby" timing(5ms) or SOFT_RESET timing(0.5ms) to confirm waiting timing is long enough?
The 5ms is the typical value that you want to wait after the power is supplied to the part, before you can access any register value. It may also vary from part to part due to the variance on the customer's PCB design, including the power ramp-up profile. As I mentioned in my last reply, when you switch off the power, you will have to make sure the Vs is discharged completely in order to have a correct Power on Reset and fuse loading the next time you power up the part.
It still have problems as below:
1. G sensor still wakes up process is not as expected and have chance into crash situation.
2. After reading STATUS, the ACT FALG is not cleared but INT1 has become LOW.
3. It takes about 3 seconds to enter awake = 0(refer to page 16), waiting time is too long.
4. INTMAP1 and INTMAP2 could be enable in the same time?
5. When write or read continuously, do you have suggest delay time ?
6. Do you have in connection with "Loop Mode" source code?
Thanks for the reply. I assume when you say crash it means you can not access the sensor through SPI. Can you share the power supply waveform during the initial startup as well as power cycling? This is to make sure the PoR and fuse loading triggers correctly. You should be able to clear the activity interrupt by reading the Status register. If the ACT flag is not cleared, that means the Activity could be triggered again. Regarding the timing between each transaction, you can refer to the SPI timing table(Table 10), such as CS disable time, CS hold time to determine the delay between each transaction. In addition, you can also enable both Interrupt 1 and Interrupt 2 at the same time. We've provided the pseudo-code of using Awake and loop mode on page 36 of the datasheet.
I hope this helps.