HWRESET and SYSRESETREQ/VECTRESET core reset issues

Hi,

I am using uVision 5.28 and ULink2 to debug a Cortex-M0+ device. I ran into an issue that when I use VECTRESET the peripheral settings would not be reset properly and hence my code would never enter main() function. In this case, I used SYSRESETREQ instead and everything started to work fine.

However, when I tried to use HWRESET, the device would not be acquired and hence I could not even enter the debug mode. What could possibly be this issue that when using SYSRESETREQ works but HWRESET doesn't?

In short, the question is about what exactly is the difference between the procedures that HWRESET and SYSRESETREQ/VECTRESET performs, and what HWRESET does in addition to the other two?

Thank you!

Best,

Joseph

More questions in this forum