目录
在协议栈中使用的NV操作函数只有如下三个:
1)
2)
3)
uint8 value_read;
uint8 value=0x08;
osal_nv_item_init(TEST_NV,1,BULL);
osal_nv_write(TEST_NV,0,1,&value);
osal_nv_read(TEST_NV,0,1,&value_read);
static void rxCB(uint8 port,uint8 event)
{
uint8 value_read;
uint8 value=18;
uint8 uartbuf[2];
uint8 cmd[6];
HalUARTRead(0,cmd,6);
if(osal_memcmp(cmd,"nvread",6))
{
osal_nv_item_init(TEST_NV,1,NULL);
osal_nv_write(TEST_NV,0,1,&value);
osal_nv_read(TEST_NV,0,1,&value_read);
uartbuf[0]=value_read / 10 + '0';
uartbuf[1]=value_read % 10 + '0';
HalUARTWrite(0,uartbuf,2);
}
}
定义一个变量用于存储从NV存储器读取的数据,写入NV条目的数据;定义缓冲区和命令缓冲区,分别用于存放读取的数据和用于存取从串口读取到的命令;从串口读取命令后存放在cmd数组中;使用osal_memcmp()函数判断命令是否为“nvread”。