Firefly开源社区

打印 上一主题 下一主题

谁来说说NVDS?

46

积分

0

威望

0

贡献

游客

积分
46
发表于 2015-6-4 17:00:05      楼主
NVDS就是Flash的0x00000~0x01000这4KB的位置,有NVDS的API读取NVDS里的每一项内容,在nvds.h可以看到相关函数
回复

使用道具 举报

46

积分

0

威望

0

贡献

游客

积分
46
发表于 2015-6-5 09:26:37      沙发
nvds_put();就是可以增加TAG到NVDS的啊,你可以具体看下这个函数,在NVDS_LEN枚举和NVDS_TA枚举增加相应的值就OK哈
回复

使用道具 举报

46

积分

0

威望

0

贡献

游客

积分
46
发表于 2015-6-5 16:29:52      板凳
thong 发表于 2015-6-5 16:14
你知道nvds的方法怎样读写flash吗,下面这样好像写不进去呢?
uint8_t test1 = 0xf1,test2;
       

你这样不对啊,你要先在枚举那里增加你要加的TAG名和TAG的长度,再用nvds_put函数加进去,NVDS_END_MARKER_TAG这个枚举值是TAG最后标记的标记,你不能拿来用的
回复

使用道具 举报

46

积分

0

威望

0

贡献

游客

积分
46
发表于 2015-6-7 22:50:42      地板
thong 发表于 2015-6-5 16:53
NVDS_TAG_FLASH_WR                   = 0x14,
NVDS_LEN_FLASH_WR                     = 1,
uint8_t ...

你这样写应该是没有问题,你Put的时候是不是返回0啊?
回复

使用道具 举报

46

积分

0

威望

0

贡献

游客

积分
46
发表于 2015-6-8 09:26:56      5#
thong 发表于 2015-6-8 09:21
返回的是0x07呢,不知道啥问题

应该是返回了这个NVDS_NO_TEMP_BUF_AVAILABLE,没有清除缓冲区。
回复

使用道具 举报

46

积分

0

威望

0

贡献

游客

积分
46
发表于 2015-6-8 10:17:39      6#
thong 发表于 2015-6-8 10:01
那我应该怎样处理呢,没看到清缓冲区的API呀?

你看FireBLE_blue的回答,他那样是可行的;
回复

使用道具 举报

46

积分

0

威望

0

贡献

游客

积分
46
发表于 2015-6-8 11:35:54      7#
thong 发表于 2015-6-8 11:25
我换了个板子串口打印出来是没问题的,之前测试的那个板子NVDS好像为空

NVDS空的,难怪会报没有清除缓冲区错误。解决了就好:lol
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表