Silicon Labs EFM8 利用UID唯一标识产品
来源:互联网 发布:餐饮进销存软件免费版 编辑:程序博客网 时间:2024/05/02 02:47
最近用Silicon Labs的EFM8系列的一款MCU做了个产品,其中产品需要唯一的标识,就查了一下,发现用UID标识很方便。
UID是存储在EFM8的RAM中的作为MCU唯一标识的一串数据,共有32个Bit,对于有Xdata的512Byte RAM的MCU,UID存储在Xdata的最后四个字节中,对于只有256Byte idata没有Xdata的MCU,UID存放在idata的最后四个字节。UID的存储方法如下:
UID存放在idata中的:
unsigned long int idata * uuid_p;
unsigned long int uuid;
uuid_p = 0xfc;
uuid = *uuid_p;
uuid_p = 0xfc;
uuid = *uuid_p;
或者是:
const uint32_t idata UUID _at_ 0xFC;
UID存放在Xdata中的:
unsigned long int xdata * uuid_p;
unsigned long int uuid;
uuid_p = 0xfc;
uuid = *uuid_p;
uuid_p = 0xfc;
uuid = *uuid_p;
或者是:
const uint32_t xdata UUID _at_ 0x00FC;
其中的0xFC和0x00FC是RAM最后四个字节的起始地址,可以再datasheet中找到:
另外需要注意的是,如果代码运行过程中使用RAM较多,连最后四个字节也使用了,那么UID就会被覆盖,你再读出来的就不是UID了,但是MCU重新上电复位,UID还会被重写,所以为了保险起见,如果用到UID的最好一上电就读出来,存放到安全区域,避免系统运行过程总被改写。
1 0
- Silicon Labs EFM8 利用UID唯一标识产品
- android获取设备唯一标识UID
- 芯片CP2200 (Silicon Labs)
- 芯片CP2112 (Silicon Labs)
- silicon labs 的网站
- Silicon Labs ZigBee知识库搬运
- Silicon Labs的蓝牙MESH解决方案能够为开发者缩短6个月的产品上市时间
- SILICON LABS收购领先RTOS厂商ucos
- 利用Java的UUID生成唯一标识
- iOS利用钥匙串保存获取设备的唯一标识
- [J2ME]手机唯一标识
- 获取Android 唯一标识
- UTI 唯一类型标识
- 全局唯一标识分区表
- 全球唯一标识GUID
- android程序唯一标识
- iOS WIFI唯一标识
- 设备的唯一标识
- 【Java基础】正确使用 Volatile 变量
- IOS瀑布流通过UICollectionView控件实现
- Linux软硬连接
- 安卓ViewPager--OnPageChangeListener
- 工厂方法模式的结构
- Silicon Labs EFM8 利用UID唯一标识产品
- MapReduce性能优化_3. 诊断 Reduce 端性能瓶颈
- android LruCache 原理 以及 源代码解析
- Android Touch事件传递机制通俗讲解
- 从零学Android(十三)、Android中的数据存储方式简介
- NGUI制作弹窗
- 最近开发的心得1
- Java学习笔记-适配器用法
- html name标签命名规范