Dear everyone:
Can you tell me Using built-in flash and use restrictions,
because it halt at ble_flash_page_write() function.
Dear everyone:
Can you tell me Using built-in flash and use restrictions,
because it halt at ble_flash_page_write() function.
Sorry for my late reply!. I write to flash at the Time event handler (notif_timeout_handler) . and the B.L.E is not at connect. every time ,i write 512 B data to flash(top address,(NRF_FICR->CODESIZE-1)) and then the device into system_off() .
follow is code :
err_code=sd_softdevice_disable ();
APP_ERROR_CHECK(err_code);
err_code=ble_flash_page_write(FLASH_PAGE_FLUSATION,data_array,0xFE);//error earse flash data
//err_code=ble_flash_page_write(FLASH_PAGE_FLUSATION,data_array_test,1);//error earse flash data
APP_ERROR_CHECK(err_code);
nrf_gpio_port_write(LED_OUTPORT_0,LED_OUTPORT_0_NONE);
nrf_gpio_port_write(LED_OUTPORT_1,LED_OUTPORT_1_NONE);
// Go to system-off mode (this function will not return; wakeup will cause a reset)
GPIO_WAKEUP_BUTTON_CONFIG(WAKEUP_BUTTON_PIN);
err_code=sd_softdevice_enable (NRF_CLOCK_LFCLKSRC_RC_250_PPM_8000MS_CALIBRATION,NULL);//ble_evt_dispatch
APP_ERROR_CHECK(err_code);
err_code = sd_power_system_off();
Best regards steven
Sorry for my late reply!. I write to flash at the Time event handler (notif_timeout_handler) . and the B.L.E is not at connect. every time ,i write 512 B data to flash(top address,(NRF_FICR->CODESIZE-1)) and then the device into system_off() .
follow is code :
err_code=sd_softdevice_disable ();
APP_ERROR_CHECK(err_code);
err_code=ble_flash_page_write(FLASH_PAGE_FLUSATION,data_array,0xFE);//error earse flash data
//err_code=ble_flash_page_write(FLASH_PAGE_FLUSATION,data_array_test,1);//error earse flash data
APP_ERROR_CHECK(err_code);
nrf_gpio_port_write(LED_OUTPORT_0,LED_OUTPORT_0_NONE);
nrf_gpio_port_write(LED_OUTPORT_1,LED_OUTPORT_1_NONE);
// Go to system-off mode (this function will not return; wakeup will cause a reset)
GPIO_WAKEUP_BUTTON_CONFIG(WAKEUP_BUTTON_PIN);
err_code=sd_softdevice_enable (NRF_CLOCK_LFCLKSRC_RC_250_PPM_8000MS_CALIBRATION,NULL);//ble_evt_dispatch
APP_ERROR_CHECK(err_code);
err_code = sd_power_system_off();
Best regards steven