EmbeddedRelated.com
Forums

Reset button not working

Started by Karl Martin Lund February 5, 2007
Dear all,

I'm developing an application based on a msp430f169. A reset button is a
part of the design, but nothing happens when the reset button is
operated, the program just keeps on running.

The reset button is connected to pin 58, RST/NMI. I don't use the
watchdog timer, so one of the first lines in the program is
WDTCTL = WDTPW + WDTHOLD;

As far as I read the documentation, bit 5 of the wdtctl register
controls the function of the pin, and setting this to zero should leave
the pin in reset mode.

Do the watchdog timer need to be running for the reset to work, or am I
missing something else?

I've also disabled all interrupts (DINT), as far as I understand the
documentation, this should not affect the function of the reset logic.
(Also, calling EINT after initialization doesn't help.)

Should I (the software guy who is hardly able to use a multimeter) ask
the hardware guy (who designed the board and happens to be my
customer...) to check whether the reset button actually works?

KML

Beginning Microcontrollers with the MSP430

Don't be afraid. Turn on the volt meter and measure the voltage on
pin 58. When the button is released, the voltage should be VCC
because the hardware guy should have included a pull-up resistor.
When you press the button, it should drop below 0.8 VDC. If it does,
the program processor will reset.
Now, how do you know it is not resetting?

John
--- In m..., Karl Martin Lund wrote:
>
> Dear all,
>
> I'm developing an application based on a msp430f169. A reset button
is a
> part of the design, but nothing happens when the reset button is
> operated, the program just keeps on running.
>
> The reset button is connected to pin 58, RST/NMI. I don't use the
> watchdog timer, so one of the first lines in the program is
> WDTCTL = WDTPW + WDTHOLD;
>
> As far as I read the documentation, bit 5 of the wdtctl register
> controls the function of the pin, and setting this to zero should leave
> the pin in reset mode.
>
> Do the watchdog timer need to be running for the reset to work, or am I
> missing something else?
>
> I've also disabled all interrupts (DINT), as far as I understand the
> documentation, this should not affect the function of the reset logic.
> (Also, calling EINT after initialization doesn't help.)
>
> Should I (the software guy who is hardly able to use a multimeter) ask
> the hardware guy (who designed the board and happens to be my
> customer...) to check whether the reset button actually works?
>
> KML
>