#ifndef _CHIPID_H //宏定义,定义文件名称
#define _CHIPID_H
#include "stm8s.h"//引用STM8头文件
void Get_ChipId(void);
void Check_ChipId(void);
#endif
ID码加密试验过程截图 STM8每一片芯片的ID码都是唯一的,在做这个加密实验时,要先读取自己开发板上CPU的ID码,按照真实的芯片ID码修改程序中对应的部分。这点要注意。如“图44.1 芯片ID码获取”所示,芯片ID我们正确读出,但是和程序代码中ID码的判断的部分不匹配,程序就会转向“芯片ID检测失败”,打印输出。这时就需要我们按照自己开发板读出的ID码,修改程序中判断部分的ID码,使之完全一样。 芯片ID码匹配字段程序部分: if(ChipId[0]==0x39 && ChipId[1]==0x38 && ChipId[2]==0x31 && ChipId[3]==0x35 && ChipId[4]==0x47 && ChipId[5]==0x30 && ChipId[6]==0x34 && ChipId[7]==0x36 && ChipId[8]==0x38 && ChipId[9]==0x39 && ChipId[10]==0x34 && ChipId[11]==0x29) 比较后可以看出,不一样,所以程序打印输出“芯片ID检测失败”。 图44.1 芯片ID码获取 修改程序中判断部分的ID码,和读出的一样后,下载程序,实验界面如“图44.2 芯片ID码匹配一致后输出结果”所示。 图44.2 芯片ID码匹配一致后输出结果
|