阅读量:0
获取STM32 MCU的唯一ID
这里以STM32F103为例,简单运用了一下
#include "stm32f10x.h" /*开辟一个数组来装96bit的ID号*/ u32 id[3] = {0xFFFFFFFF}; /*获取STM32 MCU的唯一ID*/ void GetSTM32MCUID(uint32_t *id) { if(id!=NULL) { id[0]=*(uint32_t*)(0x1FFFF7E8); id[1]=*(uint32_t*)(0x1FFFF7E8+4); id[2]=*(uint32_t*)(0x1FFFF7E8+8); } } int main() { GetSTM32MCUID(id); while(1) { //其他函数 } return 0; }
STM32不同系列的ID起始地址不同,如下所示: 1. 0x1FFFF7AC, /STM32F0唯一ID起始地址/ 2. 0x1FFFF7E8, /STM32F1唯一ID起始地址/ 3. 0x1FFF7A10, /STM32F2唯一ID起始地址/ 4. 0x1FFFF7AC, /STM32F3唯一ID起始地址/ 5. 0x1FFF7A10, /STM32F4唯一ID起始地址/ 6. 0x1FF0F420, /STM32F7唯一ID起始地址/ 7. 0x1FF80050, /STM32L0唯一ID起始地址/ 8. 0x1FF80050, /STM32L1唯一ID起始地址/ 9. 0x1FFF7590, /STM32L4唯一ID起始地址/ 10. 0x1FF0F420; /STM32H7唯一ID起始地址/