微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 2640,SNV读写的时候都返回0x02,怎么回事?

2640,SNV读写的时候都返回0x02,怎么回事?

时间:10-02 整理:3721RD 点击:

#define SNV_Buf_Len 7
#define SNV_ID_APP 0x83
uint8 SNV_MAC_Buff[SNV_Buf_Len];

osal_snv_read(SNV_ID_APP, SNV_Buf_Len, (uint8 *)SNV_MAC_Buff);

osal_snv_write(SNV_ID_APP, SNV_Buf_Len, (uint8 *)SNV_MAC_Buff);

调用读写函数返回值为0x02,是怎么回事?在初始化中还需要添加osal_snv_init();这个函数吗?

相关PDF文档说明有吗?

您指的是0x02 ->INVALIDPARAMETER?

建议您先参考之前E2E上的帖子 https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/t/510881 以及BLE WIKI页面:

http://processors.wiki.ti.com/index.php/Adding_BLE_Enabled_RTOS_Task

 我现在也是用这个Multi工程,是不是不能用?

您也使用的Multi工程?那是有这个可能,您往SNV存数据了?

是的,我也使用这个工程,读写都返回的是0x02。

multi蓝牙栈使用flash较多 定义了SNV=0将SNV去节省空间

你好,

是的!

你打开协议栈的工程,点击option,查看per define,你会发现:

OSAL_SNV=0
USE_ICALL
FLASH_ROM_BUILD
POWER_SAVING
xGATT_NO_CLIENT
INCLUDE_AES_DECRYPT
xPM_DISABLE_PWRDOWN
xTESTMODES
xTEST_BLEBOARD
OSAL_CBTIMER_NUM_TASKS=1
xDEBUG
HALNODEBUG
xDEBUG_GPIO
xDEBUG_ENC
xDEBUG_SW_TRACE
NEAR_FUNC=
DATA=
CC26XXWARE
CC26XX

是的,没有错,OSAL_SNV=0,该project不支持SNV操作。

因为multi的project工程app和stack都很大,只能去掉SNV和bonding来换取更多的flash空间。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top