XFusion API v1.3.0
载入中...
搜索中...
未找到
xf_main.c 文件参考
#include "xf_utils.h"
#include "xf_osal.h"
#include "xf_fal.h"
#include "flashdb.h"
xf_main.c 的引用(Include)关系图:

浏览源代码.

宏定义

#define TAG   "flashdb_example"
 
#define KVDB_NAME   CONFIG_PORT_FDB_XF_FAL_KVDB_PARTITION_NAME
 
#define TSDB_NAME   CONFIG_PORT_FDB_XF_FAL_TSDB_PARTITION_NAME
 

函数

static fdb_time_t get_time (void)
 
static void lock (fdb_db_t db)
 
static void unlock (fdb_db_t db)
 
void kvdb_basic_sample (fdb_kvdb_t kvdb)
 
void kvdb_type_string_sample (fdb_kvdb_t kvdb)
 
void kvdb_type_blob_sample (fdb_kvdb_t kvdb)
 
void tsdb_sample (fdb_tsdb_t tsdb)
 
static int flashdb_demo (void)
 
void xf_main (void)
 全局函数定义: [Global Functions].
 

变量

static const xf_fal_partition_t sc_default_flash_fdb_partition_table []
 使用默认分区的空间注册一个提供给 FlashDB 使用的分区表。
 
static uint32_t boot_count = 0
 
static time_t boot_time [10] = {0, 1, 2, 3}
 
static struct fdb_default_kv_node default_kv_table []
 
static struct fdb_kvdb kvdb = {0}
 
struct fdb_tsdb tsdb = {0}
 
static int counts = 0
 
static xf_osal_mutex_t s_mutex = NULL
 

详细描述

作者
your name (you@d.nosp@m.omai.nosp@m.n.com)
版本
0.1
日期
2023-10-23

Copyright (c) 2023, CorAL. All rights reserved.

在文件 xf_main.c 中定义.

宏定义说明

◆ TAG

#define TAG   "flashdb_example"

在文件 xf_main.c26 行定义.

◆ KVDB_NAME

#define KVDB_NAME   CONFIG_PORT_FDB_XF_FAL_KVDB_PARTITION_NAME

◆ TSDB_NAME

#define TSDB_NAME   CONFIG_PORT_FDB_XF_FAL_TSDB_PARTITION_NAME

函数说明

◆ get_time()

static fdb_time_t get_time ( void  )
static

◆ lock()

static void lock ( fdb_db_t  db)
static

◆ unlock()

static void unlock ( fdb_db_t  db)
static

◆ kvdb_basic_sample()

void kvdb_basic_sample ( fdb_kvdb_t  kvdb)
extern

◆ kvdb_type_string_sample()

void kvdb_type_string_sample ( fdb_kvdb_t  kvdb)
extern

◆ kvdb_type_blob_sample()

void kvdb_type_blob_sample ( fdb_kvdb_t  kvdb)
extern

◆ tsdb_sample()

void tsdb_sample ( fdb_tsdb_t  tsdb)
extern

◆ flashdb_demo()

static int flashdb_demo ( void  )
static

◆ xf_main()

void xf_main ( void  )

全局函数定义: [Global Functions].

  1. 全局函数原型在**头文件**中声明并编写注释,此处可以不加 brief。

主函数。 正常情况下此行空白:函数之间需要有一个空行作为分隔

< 用于接收 _xf_template_func 的传出

< 防止警告

分支语句哪怕只有一句也必须加花括号。

判断语句中,如果一行不足以放下判断语句, 分行时需要将逻辑符号放在新行的开头。 此时最好还是用变量表达判断语句。

常量在前可以避免不必要的逻辑错误。 如 if (XF_TEMPL_FAIL = ret) 时编译会报错。

对于返回值为 void 的函数, return;可有可无,文件风格统一即可。

在文件 xf_main.c90 行定义.

变量说明

◆ sc_default_flash_fdb_partition_table

const xf_fal_partition_t sc_default_flash_fdb_partition_table[]
static
初始值:
= {
{
CONFIG_PORT_FDB_XF_FAL_KVDB_PARTITION_NAME,
CONFIG_PORT_FDB_XF_FAL_FLASH_NAME,
CONFIG_PORT_FDB_XF_FAL_KVDB_PARTITION_OFFSET,
CONFIG_PORT_FDB_XF_FAL_KVDB_PARTITION_LENGTH,
},
{
CONFIG_PORT_FDB_XF_FAL_TSDB_PARTITION_NAME,
CONFIG_PORT_FDB_XF_FAL_FLASH_NAME,
CONFIG_PORT_FDB_XF_FAL_TSDB_PARTITION_OFFSET,
CONFIG_PORT_FDB_XF_FAL_TSDB_PARTITION_LENGTH,
},
}

使用默认分区的空间注册一个提供给 FlashDB 使用的分区表。

注解
注意不要与其他应用注册的分区表交叠。
示例
examples/storage/fal/fal_flashdb/main/xf_main.c.

在文件 xf_main.c53 行定义.

◆ boot_count

uint32_t boot_count = 0
static

◆ boot_time

time_t boot_time[10] = {0, 1, 2, 3}
static

◆ default_kv_table

struct fdb_default_kv_node default_kv_table[]
static
初始值:
= {
{"username", "armink", 0},
{"password", "123456", 0},
{"boot_count", &boot_count, sizeof(boot_count)},
{"boot_time", &boot_time, sizeof(boot_time)},
}
static uint32_t boot_count
Definition xf_main.c:68
static time_t boot_time[10]
Definition xf_main.c:69
示例
examples/storage/fal/fal_flashdb/main/xf_main.c.

在文件 xf_main.c71 行定义.

◆ kvdb

struct fdb_kvdb kvdb = {0}
static

◆ tsdb

struct fdb_tsdb tsdb = {0}

◆ counts

int counts = 0
static

◆ s_mutex

xf_osal_mutex_t s_mutex = NULL
static