Shortly after the start of "main()", the SYSRSTIV register is read to determine the cause of the reset. This is to make sure that only a legitimate power-up has caused the reset and not some other cause such as Internal Watchdog, Illegal access to a protected register, etc. The board has an external voltage monitor with an output connected to the Reset Pin of the processor. So the only legal vector expected is "SYSRSTIV_RSTNMI". During debugging with the FET, when the IAR software resets the code, the value seems to be "SYSRSTIV_NONE" (value of zero). If this is correct, it can be accounted for during debugging. However, occasionally the register returns a value of "SYSRSTIV_BOR" which makes no sense for two reasons -- the external voltage monitor should trigger at a higher voltage than the internal BOR, and it is believed the internal BOR has been turned off (by writes to SVSMLCTL, SVSMHCTL and PWMRIE registers). Specific questions at this time are:
1) Is it true that the FET causing a processor Reset does not set a value in SYSRSTIV register (i.e. the value is zero)?
2) If the FET doesn;t set any Reset bits, what does it do to cause a Reset? (This may be important to understanding how registers are reset during debug)
3) The SYSRSTIV register is only read once per reset, which gives one reset vector. Is it possible for there to be more than one source of a reset? How?
4) Any thoughts as to why a spurious BOR value from the SYSRSTIV register is occurring?