⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 store.c

📁 蓝牙SPP软件源代码
💻 C
字号:
/* 
   Persistent store logic shared between spp_master and spp_slave
*/

#include "store.h"
#include "config.h"

#include <panic.h>
#include <ps.h>

BD_ADDR_T far_addr;

/* Manipulate far_addr, keeping it in step with the copy in Persistent Store */

void write_far_addr(void)
{ (void) PanicZero(PsStore(PSKEY_FAR_ADDR, &far_addr, sizeof(far_addr))); }

void clear_far_addr(void)
{
    memset(&far_addr, 0, sizeof(far_addr));
    (void) PsStore(PSKEY_FAR_ADDR, 0, 0);
}

void read_far_addr(void)
{
    if(PsRetrieve(PSKEY_FAR_ADDR, &far_addr, sizeof(far_addr)) != sizeof(far_addr))
        clear_far_addr();
}

uint16 know_far_addr(void)
{ return far_addr.lap || far_addr.nap || far_addr.uap; }

uint16 read_link_key(uint8 key[SIZE_LINK_KEY])
{ return PsRetrieve(PSKEY_LINK_KEY, key, SIZE_LINK_KEY) == SIZE_LINK_KEY; }

void write_link_key(const uint8 key[SIZE_LINK_KEY])
{ (void) PanicZero(PsStore(PSKEY_LINK_KEY, key, SIZE_LINK_KEY)); }

void clear_link_key(void)
{ (void) PsStore(PSKEY_LINK_KEY, 0, 0); }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -