Microchip® Advanced Software Framework

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nm_bsp_reset

Resets the WINC SoC by setting CHIP_EN and RESET_N signals low, then after an appropriate delay,
this function will put CHIP_EN high then RESET_N high, for more details on the timing between signals
please check the WINC data-sheet.

Functions

void nm_bsp_reset (void)
 Reset WINC1500 SoC by setting CHIP_EN and RESET_N signals low, CHIP_EN high then RESET_N high. More...
 

void nm_bsp_reset ( void  )

Reset WINC1500 SoC by setting CHIP_EN and RESET_N signals low, CHIP_EN high then RESET_N high.

Performs a hardware reset to the WINC board.

The nm_bsp_reset is used to perform a hard reset on the WINC board by setting CHIP_EN and RESET_N signals low, then after an appropriate delay this function puts CHIP_EN high then RESET_N high, for more details on the timing between signals please check the WINC data-sheet. After a successful call, the WINC board firmware will kick off to load and start the WINC firmware. This function should be called to reset the WINC firmware after the BSP is initialized and before the start of any communication with WINC board. Calling this function at any other time will result in losing the state and connections saved in the WINC board and starting again from the initial state. The host driver will need to be de-initialized before calling nm_bsp_reset and initialized again, which can be achieved by use of m2m_wifi_init and m2m_wifi_deinit.

Precondition
Initialize the BSP first by calling nm_bsp_init.
Note
Implementation of this function is host dependent and called by HIF layer.
Warning
Calling this function will drop any connection and lose the internal state saved on the WINC firmware.
See Also
nm_bsp_init, m2m_wifi_init, m2m_wifi_deinit
Returns
None

References CONF_WINC_PIN_CHIP_ENABLE, CONF_WINC_PIN_RESET, IOPORT_PIN_LEVEL_HIGH, IOPORT_PIN_LEVEL_LOW, ioport_set_pin_level(), and nm_bsp_sleep().

Referenced by nm_bsp_init(), and nm_bus_init().