公告

大中华汽车电子生态圈社区并入开发者社区- 更多资讯点击此

Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob

如何在wiced例程中添加并使用defined DCT 区域

lock attach
Attachments are accessible only for community members.

如何在wiced例程中添加并使用defined DCT 区域

Zhengbao_Zhang
Moderator
Moderator
Moderator
250 sign-ins First comment on KBA 10 questions asked

   目标:

    主要去了解wiced中关于DEFINED_APP_DCT的用法, 在我们的释放的文档中,有一节描述,名字叫做APPLICNATION DCT data 有一句话这样描述:

    The DCT system allows for Applications to add Data to the end of the DCT area which will be maintained when the DCT is updated。

    我们释放的wiced sdk中的文档有不错的描述, 文档名字是:WICED-DCT.pdf

 

步骤:

     这是其中的描述, 3.1 3.4.1 都是描述如何使用application dct area

pastedImage_1.png

pastedImage_4.png

 

pastedImage_5.png

 

如上我们可以看到几个关键字和用法:

  a. Wiced_dct_read_lock, wiced_dct_read_unlock 必须成对使用, 不然会有memory leak.

  b. DCT_APP_SECTION, 是专用的名字,用来访问这部分区域。

  如下图中所显示,

     DCT_APP_SECTION 部分的offset是整个platform_dct_data_t, 表示这部分区域紧跟着后面,但是不会超过整个dct 分配的大小,

  比如16k-sizeof(platform_dct_data_t) 的大小。

 

pastedImage_12.png

 

测试开始:

  1. 我将会在apsta这个应用中按照文档来做一个测试来判定是否有效:

   搜索下, 发现我们的很多应用中都已经采用了这种方式:

pastedImage_13.png

 

2. 将dct_read_write_dct.c  dct_read_write_dct.h 直接拷贝到apsta的文件夹中,并且重命名为apsta_dct.c, apsta_dct.

    3.  Makefile 中添加编译:

pastedImage_15.png

4. 略作修改

pastedImage_20.png

pastedImage_21.png

5.添加调用的时候不要忘记头文件。

#include "apsta_dct.h"

6. log中查看是否有效:

pastedImage_26.png

7. 我们在结构体中添加了基本的类型,现在添加一个复杂结构体看是否有效。

将这段定义拷贝到新的dct.h中。

最后将几个结构体整合到一起就成了这样的情况, 所以只要按照我们的步骤就可以实现你想要的保存的信息:

 

pastedImage_29.png

测试成功了, 最后上传测试代码。

附件
0 点赞
677 次查看