Other Parts Discussed in Thread: DRV8308, , MSP-FET
We have an MSP430FR2355 connected to a DRV8308 (BLDC motor driver) which in turn drives a small 8 pole motor.
This design has been in production with a PSoC microcontroller but we've changed to an MSP430 because the PSoC is getting hard to source.
I had a system based on the MSP430FR2355 Launchpad connected to our motor (via the DRV8308) and everything was working fine.
I've now combined the MSP430FR2355 and DRV8308 onto one PCB (as we've done before with the PSoC). The system is powering up and the motor rotates, but after a few seconds (or longer, it seems random) the MSP430 resets.
I've printed out the state of the following registers during initialisation to try and find out the cause of the reset, results follow.
Condition | SYSRSTIV | SYSSNIV | PMMIFG |
Power Cycle | 0x02 | 0x00 | 0x00 |
Unexpected Reset | 0x04 | 0x00 | 0x20h |
Which suggests it's a BOR due to the RST/NMI pin becoming active. The pin is wired like this.
The MSP430 unexpectedly re-starts with the debugger connected (MSP-FET) or with the unit running from a 3.3V supply.
If I monitor the RST/NMI line with a 'scope I do see a short low pulse occuring at the time of the reset but I believe this is generated internally by the MSP430, as per the following line in the Family User Guide. Other than that pulse the line is high with very little noise present.
So my question is, what is causing the reset? Somewhere in the documentation it mentions that a clock fault may cause a BOR. I changed the clocking system from using an external 32.768kHz crystal to use the internal 32kHz oscillator and the problem still occurred, so I don't believe it's that.
Any pointers gratefully received,
Peter