KurtE
Senior Member+
Sorry, I know that it is probably better not to jump in here. But I keep wondering, are you are you trying the different things for some specific hardware/software thing you are trying to build, or is this more a research project and the goal is to write a report?...
If you look at the imxrt.h file for that address or one near it you find:
So a good place to look is chapter 20 in the Reference Manual. You will then see offset 0x100 from there is:
If none of these solutions is sufficient. I would probably hook up some hardware, test setup. For example, a real simple processor, which has its own power supply. With one IO pin of it hooked up to maybe 3.3v pin of the teensy. So if it knows when or when not the teensy is powered up....
Then hook up some protocol between the two processors. Could be simple one IO pin, where maybe the Teensy pulls it high at startup, and the other one responds with a blink pattern. One blink: cold, two blinks warm... Could be UART. Teensy sends a message saying I am alive. The other processor could respond with this is a Cold start, or a count of how many warm starts or ...
But if it were me, I would start off with the KISS solution of setting multiple bytes high up in DMAMEM...
Good luck
Hint: he pointed you to some specific address: 0x400D4100Can you point me to where it is documented in the SDK and what SDK do you mean?
If you look at the imxrt.h file for that address or one near it you find:
Code:
#define IMXRT_SNVS_ADDRESS 0x400D4000
20.6.1.17 SNVS_LP General Purpose Registers 0 .. 7 (LPGPR0 -
LPGPR7)
Have you tried it? If it were me, I would probably set multiple words, potentially not contiguous and see what happens. run a simple test like 1000 times and see if you ever do not detect if it is warm or cold.I find the assumption that all values are equally likely dubious. Values read shortly after a reset might indeed be a lot closer to the initial value being stored or not. Given variation between chips and so on it might end up happening that those particular RAM cells are a lot more stable.
If none of these solutions is sufficient. I would probably hook up some hardware, test setup. For example, a real simple processor, which has its own power supply. With one IO pin of it hooked up to maybe 3.3v pin of the teensy. So if it knows when or when not the teensy is powered up....
Then hook up some protocol between the two processors. Could be simple one IO pin, where maybe the Teensy pulls it high at startup, and the other one responds with a blink pattern. One blink: cold, two blinks warm... Could be UART. Teensy sends a message saying I am alive. The other processor could respond with this is a Cold start, or a count of how many warm starts or ...
But if it were me, I would start off with the KISS solution of setting multiple bytes high up in DMAMEM...
Good luck