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.

CC2538: OSAL NV READ

Part Number: CC2538

Hi,

I am trying to read the data from the NV Memory that I only write. But I was not getting full data please look at my code,

// WRITING //

  int32_t nv_length = osal_nv_item_len(KIKO_NV_LAST_STATUSID);
  
  Res = osal_nv_delete(KIKO_NV_LAST_STATUSID, nv_length);
   
  Res = osal_nv_item_init(KIKO_NV_LAST_STATUSID, sizeof(NWK_Bufffer), (uint32_t*) NWK_Bufffer);
  
  NWK_Bufffer = osal_mem_alloc(128);

  sprintf(NWK_Bufffer, "1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9");

    HalUARTWrite ( MT_UART_DEFAULT_PORT, "Storing Status \r\n", strlen("Storing Status \r\n") );
    HalUARTWrite ( MT_UART_DEFAULT_PORT, NWK_Bufffer, strlen(NWK_Bufffer) );
    HalUARTWrite ( MT_UART_DEFAULT_PORT, "\r\n", strlen("\r\n") );
  
    Res = osal_nv_write(KIKO_NV_LAST_STATUSID, 0, sizeof(NWK_Bufffer), (uint32_t*) NWK_Bufffer);
    ASSERT(Res==0);
    
  Osal_mem_free(NWK_Bufffer);


// READING //

  int32_t nv_length = osal_nv_item_len(KIKO_NV_LAST_STATUSID);
    
  Res = osal_nv_item_init(KIKO_NV_LAST_STATUSID, sizeof(NWK_Bufffer), (uint32_t*) NWK_Bufffer);
    
  NWK_Bufffer = osal_mem_alloc(128);
  
    Res = osal_nv_read(KIKO_NV_LAST_STATUSID, 0, sizeof(NWK_Bufffer), (uint32_t*) NWK_Bufffer);
    
    HalUARTWrite ( MT_UART_DEFAULT_PORT, "Reading Status \r\n", strlen("Reading Status \r\n") );
    HalUARTWrite ( MT_UART_DEFAULT_PORT, NWK_Bufffer, strlen(NWK_Bufffer) );
    HalUARTWrite ( MT_UART_DEFAULT_PORT, "\r\n", strlen("\r\n") );

RESULTS ARE:

Storing Status
1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9
Reading Status
1,2,E

Hi Can any one tell why I am not getting all the stored data.

Thank you.