This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSP430F5659: Software reset instruction needed

Part Number: MSP430F5659


Hi,

I am facing problem in software reset for the MSP430F5659 controller.

Please can any one help me in soft reset so that all my hardware restarts with proper reset state. 

I tried jumping to reset vector   -> ((void (*)())0x0FFFE)();but  not working

tried WDTCTL = 0; not working

tried jumping to main routine but not working

Please any one guide me i doing soft reset?

Nitesh

  • hello nitesh
    try WDTCTL = 0xDEAD;
  • What kind of reset do you want, BOR, POR, or PUC? These can be triggered with PMMSWBOR, PMMSWPOR, and a watchdog password violation.

    To re-initialize the hardware as much as possible, do a BOR:

    PMMCTL0 = PMMCTL0_L | PMMPW | PMMSWBOR;
  • Hi,

    Thanks for quick reply.

    I am looking POR, so that i can all low level hardware re-initialized. I am using in build USB of  MSP430F5659 controller. So want to re Init the USB also.

    Please let me know why WDT start is not working?

    My code for reset

    USB_disconnect();

    USB_disable();

    SYSBSLC &= ~(SYSBSLPE);

    // Ensure no application interrupts fire during BSL

    __disable_interrupt();

    WDT_A_start(WDT_A_BASE);

     

    On execution i am seeing USB disconnected but system wont restart.

    i will try your suggestion and let u know

    Thanks again

    Nitesh

  • HI,

    I am able to reset the system without any problem, but i have a question
    I am using USB device if i am doing soft reset, i am seeing i have disconnect the cable if i want to communicate with device again
    on soft reset.
    But in my main routine i am initializing the USB also, still i need to reconnect ?
    Please help.
    Nitesh
  • There might be something wrong in your code. Which you have not shown.
  • Hi,

    I am calling USB disconnect before doing soft reset as mentioned in previous comment. What else is needed, 

    i am suspect PC side shall we need to close before connect.

    Since i am seeing my device is restarting without any problem, Only thing is i need to disconnect the cable and reconnect to PC to start.

    Please guide me its urgent.

    Thanks

    Nitesh 

  • Just guessing, but it might be possible that the time between the disconnect and the re-connect is too short for the host to notice it.
  • Ok, But one more thing i observed in our system when i tried the firmware upgrade i.e. pushing my PC to BSL address (0x1000).
    When i call jump to 0x1000(BSL) , i am getting the system reset , because i am using external watchdog in my system. To resolve that we have added the disable handling for external WDT for this reason. So now if i don't disable the External WDT, i am getting reset and able to connect to USB without any issue after reset.

    For system reset handling what we doing, i also suspect host is not able to identify the device connect and disconnect as you told .

    So can i do the same jump to 0x1000 without WDT disable ? is this good way to handle?

    Please share your thought, Waiting for your reply.

    Thanks in advance,

    Nitesh

**Attention** This is a public forum