- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Please, can someone describe what to call in __asm volatile(XXXXX); to reset the PSoC5LP CPU?
Many thanks
Viktor
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Viktor,
Why aren't you using void CySoftwareReset(void)?
"Engineering is an Art. The Art of Compromise."
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Viktor,
Why aren't you using void CySoftwareReset(void)?
"Engineering is an Art. The Art of Compromise."
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Answer is very simple. I did not know about that nice function in CyLib.
All works now as expected ... OK ... tested.
Many thanks for your valuable help.
Viktor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello.
Something to be aware of...,
A s/w reset is not the same as a h/w reset and can leave some h/w in an unknown state. There was quite a discussion on this a few years back.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
BiBi,
The function CySoftwareReset(void) just sets a bit in a RESET_CR2 Control register.
Here's the underlying code:
void CySoftwareReset(void)
{
CY_LIB_RESET_CR2_REG |= CY_LIB_RESET_CR2_RESET;
}
Here's the section in the PSoC5 TRM for this register:
"Engineering is an Art. The Art of Compromise."
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Len.
I agree with what you described for s/w reset.
I was attempting to point out that a s/w reset is not the same as a h/w reset. Some people thought it was.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Bib,
The TRM claims it is a "System Reset". We can only assume it is HW+SW.
"Engineering is an Art. The Art of Compromise."