STM32F7xx —— 96位唯一ID

// 配置单片机型号 对外只有这个宏CONFIG_SYSTEM_HARDWARE_TYPE
#define  CONFIG_SYSTEM_HARDWARE_TYPE  SOC_TYPE_STM32F7// SOC类型
typedef enum
{SOC_TYPE_STM32F0,SOC_TYPE_STM32F1,SOC_TYPE_STM32F2,SOC_TYPE_STM32F3,SOC_TYPE_STM32F4,SOC_TYPE_STM32F7,SOC_TYPE_STM32L0,SOC_TYPE_STM32L1,SOC_TYPE_STM32L4,SOC_TYPE_STM32H7,
} soc_type_t;#define SOC_STM32F0_ID_ADDR   0x1FFFF7AC
#define SOC_STM32F1_ID_ADDR   0x1FFFF7E8
#define SOC_STM32F2_ID_ADDR   0x1FFF7A10
#define SOC_STM32F3_ID_ADDR   0x1FFFF7AC
#define SOC_STM32F4_ID_ADDR   0x1FFF7A10
#define SOC_STM32F7_ID_ADDR   0x1FF0F420
#define SOC_STM32L0_ID_ADDR   0x1FF80050
#define SOC_STM32L1_ID_ADDR   0x1FF80050
#define SOC_STM32L4_ID_ADDR   0x1FFF7590
#define SOC_STM32H7_ID_ADDR   0x1FF0F420typedef struct
{uint8_t type;uint32_t addr;
} soc_id_t;static const soc_id_t soc_id_entries[] =
{{SOC_TYPE_STM32F0, SOC_STM32F0_ID_ADDR},{SOC_TYPE_STM32F1, SOC_STM32F1_ID_ADDR},{SOC_TYPE_STM32F2, SOC_STM32F2_ID_ADDR},{SOC_TYPE_STM32F3, SOC_STM32F3_ID_ADDR},{SOC_TYPE_STM32F4, SOC_STM32F4_ID_ADDR},{SOC_TYPE_STM32F7, SOC_STM32F7_ID_ADDR},{SOC_TYPE_STM32L0, SOC_STM32L0_ID_ADDR},{SOC_TYPE_STM32L1, SOC_STM32L1_ID_ADDR},{SOC_TYPE_STM32L4, SOC_STM32L4_ID_ADDR},{SOC_TYPE_STM32H7, SOC_STM32H7_ID_ADDR},
};void SocIDGet(uint32_t *id, soc_type_t type)
{uint8_t i;for(i = 0; i < sizeof(soc_id_entries) / sizeof(soc_id_entries[0]); ++i){if(type == soc_id_entries[i].type){id[0] = *(uint32_t *)(soc_id_entries[i].addr + 0);id[1] = *(uint32_t *)(soc_id_entries[i].addr + 4);id[2] = *(uint32_t *)(soc_id_entries[i].addr + 8);break;}}
}

STM32F7xx —— 96位唯一ID相关推荐

  1. 清明节 java_java生成12位唯一id 2013.3.12大三班清明节生成活动记录表.doc

    java生成12位唯一id 2013.3.12大三班清明节生成活动记录表 java生成12位唯一id 2013.3.12大三班清明节生成活动记录表 幼儿生成活动记录表 学期:二 0 一二学年度第二学期 ...

  2. Python 基于Python生成短8位唯一id解决方案

    利用62个可打印字符,通过随机生成32位UUID,由于UUID都为十六进制,所以将UUID分成8组,每4个为一组,然后通过模62(字符0-9,a-z,A-Z总数量62个字符)操作,结果作为索引取出字符 ...

  3. java生成6位唯一id

    可以借助数据库主键或redis的incr /*** 自定义进制(排除0,1,o,l)*/ private static final char[] CUSTOM = new char[]{'Q', 'W ...

  4. 获取W806的芯片唯一ID

    W806没有内部唯一ID, 但是它内置1MBflash是有一个64位唯一ID的. 但是很多人不知道怎么读, 下面的方法也是我问官方才问出来的 #define RSA_BASE_ADDRESS RSA_ ...

  5. java生成8位的uuid_分布式系统全局唯一ID简介、特点、生成

    一.什么是分布式系统唯一ID 在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识. 如在金融.电商.支付.等产品的系统中,数据日渐增长,对数据分库分表后需要有一个唯一ID来标识一条数据或消息, ...

  6. stm32获取芯片的96位ID

    stm32获取芯片ID stm32芯片ID的地址 stm32的芯片地址为:0x1FFFF7E8~0x1FFFF7F3 因为我们芯片的ID都是96位 所以我们就可以建立一个数组才存储这个ID 一般数据的 ...

  7. SnowFlake唯一ID生成器

    写在前面 架构是权衡的结果,架构也是一层层的组件拼接起来的,如果没有好用的组件,架构势必会做阉割,架构的理想态是建立在一堆友好.易用.标准化的组件之上的.在我过去的经验中,有两类组件经常会出现在我的架 ...

  8. 如何获取STM32 MCU的唯一ID

    前段时间由于应用需要对产品授权进行限制,所以研究了一下有关STM32 MCU的唯一ID的资料,并最终利用它实现了我们的目标. 1.基本描述 在STM32的全系列MCU中均有一个96位的唯一设备标识符. ...

  9. Android Q 获取设备唯一ID(UDID\GUID\UUID\SSAID\GAID)

    Android Q获取设备唯一ID(UDID\GUID\UUID\SSAID\GAID) 一.简介 1.1 问题背景 1.2 关键技术 二.解决方案 2.1 谷歌官方推荐方案 (4种) 2.2 实现方 ...

最新文章

  1. 原来小清新色调是这样调出来的~
  2. SAP-SD计划行类别解析
  3. python如何判断一段代码运行是否超出一定时间,如果超出则抛出异常?(检测函数运行是否超时,规定时间内执行,限制时间)eventlet模块 (eventlet.timeout.Timeout)
  4. Hibernate基于JDBC的批量删除
  5. Visual Studio 2005 快捷键
  6. Kappa信息化谋局电子商务与传统渠道的全面管理
  7. String类 写出类的成员函数实现
  8. 这些假脸实在太逼真了!英伟达造出新一代GAN,生成壁纸级高清大图毫无破绽...
  9. 拓端tecdat|R语言ARIMA集成模型预测时间序列分析
  10. 2021数模美赛A题翻译及思路
  11. matlab 逆矩阵计算器,高等数学计算器
  12. gorm中使用where in 条件
  13. 如何合并多个excel表
  14. Mac电脑使用:您的安全性偏好设置仅允许安装来自App Store和被认可的开发者的应用(解决方法)
  15. OpenLayers添加地图标记
  16. html:checkbox无法uncheck
  17. 电脑视频转换成mp4格式,视频格式转换器转换
  18. matlab合并数据,matlab使用小技巧——数据的拆分与合并
  19. matlab趋势分析法,趋势分析法案例.pdf
  20. HashSet集合保证元素唯一性原理分析

热门文章

  1. FireEye:2012年下半年高级威胁分析报告
  2. java中原始数据文件的输入
  3. Python中文编码问题详解
  4. Django博客--5.让博客支持 Markdown 语法和代码高亮
  5. python数组的乘法_在Python中乘法非常大的2D数组
  6. svg 动画_根据AI导出的SVG path制作SVG线条动画
  7. git第一次提交代码至远程仓库步骤
  8. 玩大数据期间碰到的一些问题总结
  9. 微信正则表达式 iOS
  10. unity2d随机生成物体_2020 年最好用的一键生成设计神器,全在这里了!