你好。
我有cc2538的genericApp示例。 我想知道我在非易失性存储器中的何处记录内容以及如何操作? 谢谢!
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.
您好,Samuel:
OSAL API.pdf中有相关文档(第10节),SDK随附了该文档。 在代码中,您可以参考OSAL_Nv.h
基本上,您必须使用要存储的数据和数据的长度(osal_NV_item_init)初始化NV ID, 您必须知道该NV ID,因为您在读取/写入数据时必须参考该ID。 初始化后,您可以使用API的其余部分(osal_NV_read,osal_NV_write)进行读/写操作
希望这能有所帮助!
我将示例代码放在 GenericApp_Init中并成功构建。 您可以参考以下红色代码。
void GenericApp_Init( uint8 task_id )
{
GenericApp_TaskID =任务ID;
GenericApp_NwkState = dev_init;
GenericApp_TransID = 0;
//设备硬件初始化可以在此处添加,也可以在main()(Zmain.c)中添加。
//如果硬件是特定于应用程序的-请在此处添加。
//如果硬件是设备的其他部分,请将其添加到main()中。
GenericApp_DstAddr.addrMode =(afAddrMode_t)AddrNotPresent;
GenericApp_DstAddr.EndPoint =0;
GenericApp_DstAddr.addr.shortAddr =0;
//填写端点描述。
GenericApp_epDESC.EndPoint = GENERICAPP_ENPOINT;
GenericApp_epDESC.TASK_id =一般App_TaskID;
GenericApp_epDesc.simpleDesc.
=(SimpleDescriptionFormat_t *)&GenericApp_SimpleDesc;
GenericApp_epDesc.latencyReq = noLatencyReqs;
//向AF注册端点描述
afRegister(&GenericApp_epDesc );
//注册所有关键事件-此应用程序将处理所有关键事件
RegisterForKeys( GenericApp_TaskID );
//更新显示
#if定义(lcd_supported)
HalLcdWriteString("GenericApp", HAL_LCD_LINE_1);
#endif
ZDO_RegisterForZDOMsg( GenericApp_TaskID, End_Device_Bind_rsp );
ZDO_RegisterForZDOMsg( GenericApp_TaskID, match_DESC_rsp );
#IF Defined( IAR_ARMCM3_LM )
//向RTOS任务启动器注册此任务
RTOS_RegisterApp( task_id,GENERICAPP_RTOS_MSG_EVT );
#endif
{
UINT8 NV_test=0;
UINT16 NV_test_id=0x0401;
OSAL_NV_item_init(NV_test_id,1, NULL);
OSAL_NV_WRITE (NV_TEST_id,0,1,&NV_TEST);
OSAL_NV_READ(NV_test_id,0,1,&NV_test);
}
}