2 posts / 0 new
Last post
hughesk
Offline
Last seen:2 years 4 months ago
加入:2014-04-26 02:56
SWD Reset Behavior

Hello,
I know that the RESET pin is not absolutely required for SWD programming, and further that the polarity of the Segger JLink's reset capability is active-low, while the DA14580 is active-high. However, I am looking for some clarification on behavior I am observing during programming:

In my application, I have a host MCU, and wish to minimize startup power. Therefore, I have a pull-up resistor on the DA14580 RESET line, making it normally-off. At present, this is how I have to program the DA14580:
1. Attach two debuggers
2. Debug and run the MCU to a breakpoint right after it pulls the DA14580 reset line low
3. Start debugging the DA14580 in Keil
4. Continue running the MCU application

After step 2, the reset line is low.
However, after step 3 (with the MCU still sitting at a breakpoint), the reset line is high, with the Keil IDE showing execution halted at main(). How is this possible? Something is driving the reset line high - Is there something in the way Keil debugging works, or something in the DA14580 startup code that drives that pin high?

Side note: I know that I can simplify the above sequence of steps by adding an inverter to the JLink attachment on the board. I haven't done that yet.

Device:
MT_dialog
Offline
Last seen:1 month 1 week ago
Staff
加入:2015-06-08 11:34
Hi hughesk,

Hi hughesk,

既然你基于“增大化现实”技术e driving the reset with your CPU, what can pull the reset high is either your CPU or the pull up, if you stop driving the reset pin low by your CPU then the pull up is going to drive the reset pin to high. I dont think that there is anything that can pull the reset pin high other than this.

Thanks MT_dialog