STM32f103 device ID 十六进制
void GetId()
{
u32 CpuID[1];
u8 i_d[9];
u8 i;
CpuID[0]=*(vu32*)(0x1ffff7e8);
for(i=0;i<4;i++)
{
if(((CpuID[0]>>(2*i*4))&0x0f)>0x09){
id[i*2]=((CpuID[0]>>(2*i*4))&0x0f)+0x37;
}else{
id[i*2]=((CpuID[0]>>(2*i*4))&0x0f)+0x30;
}
if(((CpuID[0]>>(2*i+1)*4)&0x0f)>0x09){
id[i*2+1]=((CpuID[0]>>((2*i+1)*4))&0x0f)+0x37;
}else{
id[i*2+1]=((CpuID[0]>>((2*i+1)*4))&0x0f)+0x30;
}
}
USART1_SendByte('S');
USART1_SendByte('N');
USART1_SendByte(':');
for(i=0;i<8;i++)
{
USART1_SendByte(id[i]);
}
}