Firefly开源社区

123
发表新贴
打印 上一主题 下一主题

谁来说说NVDS?

31

积分

0

威望

0

贡献

游客

积分
31

谁来说说NVDS?

发表于 2015-6-4 16:33:40      浏览:26368 | 回复:21        打印      只看该作者   [复制链接] 楼主
NVDS跟读写flash有什么不同?还有成功或失败反馈的?
回复

使用道具 举报

46

积分

0

威望

0

贡献

游客

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

使用道具 举报

31

积分

0

威望

0

贡献

游客

积分
31
发表于 2015-6-4 17:53:20        只看该作者  板凳
xiaolong_ba 发表于 2015-6-4 17:00
NVDS就是Flash的0x00000~0x01000这4KB的位置,有NVDS的API读取NVDS里的每一项内容,在nvds.h可以看到相关函 ...

那需要添加新的项怎么搞?
我有看到那边有个ID和长度的枚取,是直接该哪个枚取,添加新项?
回复

使用道具 举报

46

积分

0

威望

0

贡献

游客

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

使用道具 举报

31

积分

0

威望

0

贡献

游客

积分
31
发表于 2015-6-5 14:16:32        只看该作者  5#
xiaolong_ba 发表于 2015-6-5 09:26
nvds_put();就是可以增加TAG到NVDS的啊,你可以具体看下这个函数,在NVDS_LEN枚举和NVDS_TA枚举增加相应的 ...

这个我倒知道怎么改,SDK资料上有个软件也可以设置。
回复

使用道具 举报

53

积分

0

威望

0

贡献

游客

积分
53
发表于 2015-6-5 16:14:47        只看该作者  6#
wyq165 发表于 2015-6-5 14:16
这个我倒知道怎么改,SDK资料上有个软件也可以设置。

你知道nvds的方法怎样读写flash吗,下面这样好像写不进去呢?
uint8_t test1 = 0xf1,test2;
       
        nvds_tag_len_t len = 1;
         
        if(retu==nvds_put(NVDS_END_MARKER_TAG,1,&test1))
        {
       
          nvds_get(NVDS_END_MARKER_TAG,&len,&test2);
       
        }
回复

使用道具 举报

46

积分

0

威望

0

贡献

游客

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

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

使用道具 举报

53

积分

0

威望

0

贡献

游客

积分
53
发表于 2015-6-5 16:53:54        只看该作者  8#
xiaolong_ba 发表于 2015-6-5 16:29
你这样不对啊,你要先在枚举那里增加你要加的TAG名和TAG的长度,再用nvds_put函数加进去,NVDS_END_MARKE ...

  NVDS_TAG_FLASH_WR                   = 0x14,
NVDS_LEN_FLASH_WR                     = 1,
uint8_t test1 = 0xf1,test2;
       
        nvds_tag_len_t len = 1;
         
        if(retu==nvds_put(NVDS_TAG_FLASH_WR,1,&test1))
        {
       
          nvds_get(NVDS_TAG_FLASH_WR,&len,&test2);
       
        }
还是put不进去呀,为啥呢,还请赐教?
回复

使用道具 举报

46

积分

0

威望

0

贡献

游客

积分
46
发表于 2015-6-7 22:50:42        只看该作者  9#
thong 发表于 2015-6-5 16:53
NVDS_TAG_FLASH_WR                   = 0x14,
NVDS_LEN_FLASH_WR                     = 1,
uint8_t ...

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

使用道具 举报

53

积分

0

威望

0

贡献

游客

积分
53
发表于 2015-6-8 09:21:29        只看该作者  10#
xiaolong_ba 发表于 2015-6-7 22:50
你这样写应该是没有问题,你Put的时候是不是返回0啊?

返回的是0x07呢,不知道啥问题
回复

使用道具 举报

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

本版积分规则

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