二进制的全局共享数据区操作

前面说过,通过:

int bs; //bs是二进制数据的句柄
bs=newbin(16);//创建一个256字节的bin数组

可以创建一个二进制数据(长度16字节),这个数据同字符串属性一样,归属在页面数据中,切换页面的时候会丢失,非全局共享数据,那么如何在全局共享数据中创建一个二进制数据呢?

创建全局共享二进制数据
int bs; //bs是二进制数据的句柄
bs=newbin(16);  //创建一个16字节的二进制数据,返回bs句柄
defbin(bs,0,"00 01 00 02 00 03 00 0A 00 0B 00 10 00 12 00 14");//赋值
bind_readbin("ntc校准",bs,16); //创建全局共享二进制数据
//如果需要,可以使用下面2条语句完成固化存储
memaddkey("ntc校准");
memsave();

这里面的重要的语句bind_readbin 意思是从页面的bs数据读取一个二进制数据到bind全局共享数据区,可以理解为在全局共享数据区创建一个二进制数据;

读取一个全局共享二进制数据
int bs;//bs是二进制数据的句柄
bs=bind_writebin("ntc校准");//从Bind全局区读取一个数据写入到二进制数据中

核心语句bind_writebin是从全局共享数据区读出二进制数据写入到页面的二进制数据中,从而返回二进制数据的句柄bs;