This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

how to use fds_write() fds_read() SDK13

I try to implement this library to my code.

uint32_t settings_set_erase_flag(int32_t flag)
{
	uint32_t err_code = fds_write(flag, ERASE_BOND_FLAG);
	return err_code;
}

int32_t settings_get_erase_flag(void)
{
int32_t flag;
		uint32_t err_code = fds_read(&flag, ERASE_BOND_FLAG);
		if(err_code != FDS_SUCCESS)
			return 0x33;
		else
			return flag;
}

But when I want to read this value, I always get 0x33

How can I correct usage this library?

Parents Reply
  • I use same code base on the your code:

    static ret_code_t fds_read(int32_t * sens, uint16_t key)
    {
    
    
    fds_flash_record_t  flash_record;
    	fds_record_desc_t   record_desc;		
    	uint32_t 						err_code;
    	
    	
    
    while(fds_is_existed_record(&record_desc, key))
    		{
    			if((err_code = fds_record_open(&record_desc, &flash_record)) != FDS_SUCCESS)				
    				return err_code;						
    
    			* sens = * (int32_t *)flash_record.p_data;
    
    			return fds_record_close(&record_desc);			
    	
    
    }
    	return FDS_ERR_NOT_FOUND;		
    

    }

Children
No Data
Related