Try this - from an example project I use...
void cpu_identify (void)
{
/* Determine the Kinetis family ID */
switch((SIM_SDID & 0x70)>>4)
{
case 0x0:
printf("\nK10-");
break;
case 0x1:
printf("\nK20-");
break;
case 0x2:
printf("\nK61-");
break;
case 0x4:
printf("\nK60-");
break;
case 0x5:
printf("\nK70-");
break;
default:
printf("\nUnrecognized Kinetis family device.\n");
break;
}
/* Determine the package size */
switch((SIM_SDID & SIM_SDID_BOID(0xF))>>SIM_SDID_BOID_SHIFT)
{
case 0x2:
printf("32pin ");
break;
case 0x4:
printf("48pin ");
break;
case 0x5:
printf("64pin ");
break;
case 0x6:
printf("80pin ");
break;
case 0x7:
printf("81pin ");
break;
case 0x8:
printf("100pin ");
break;
case 0x9:
printf("104pin ");
break;
case 0xA:
printf("144pin ");
break;
case 0xC:
printf("196pin ");
break;
case 0xE:
printf("256pin ");
break;
default:
printf("\nUnrecognized Kinetis package code. ");
break;
}
/* Determine the revision ID */
switch((SIM_SDID & SIM_SDID_REVID(0xF))>>SIM_SDID_REVID_SHIFT)
{
case 0x0:
printf("Silicon rev 1.0 \n ");
break;
default:
printf("\nThis version of software doesn't recognize the revision code.");
break;
}
/* Determine the flash revision */
flash_identify();
*/
*/