产品中心

返回

SMEC98SP_SMEC98SP使用_SMEC98SP功能_中巨供

  • 价格:请联系咨询
  • 更新:2018-06-05
  • 型号:SMEC98SP
  • 品牌:SMEC98SP
  • 供应商:深圳市中巨伟业信息科技有限公司
  • 联系人:顾先生
  • 手机:13825220330
  • 传真:518000-86636121
  • Q Q:
  • 地址:太子路18号海景广场10E

详细信息

本文开始介绍加密芯片SMEC98SP的功能使用。

1、读取ID号
读取ID号在加密过程中不一定有用,当然可以当作 一个系列号加入到加密过程中。但是读取ID号可以测试主控芯片与加密芯片之间的IIC通讯联系是否正确。
首先,在加密芯片端加入如下程序。在SMEC98SP_Demo V21文件夹中打开工程目录,SMEC98SP_I2C_Test.uvproj用keil UV4打开,SMEC98SP_I2C_Test.Uv2用keil UV2打开。
在C_ROOT.C文件的void i2c_CommandProc(void)函数添加如下:
//-----------------------------
//取芯片序列号 CMD = 83 00 00 P3
//-----------------------------
case 0x83:
if(I2C_P3 != 0x0C || I2C_P1 || I2C_P2)
{
I2C_Buf[0] = 0x6A;
I2C_Buf[1] = 0x86;
return;
}
Tmp_I2C_send_bytes=I2C_P3;
GetChipID(&I2C_Buf[2]);
I2C_Buf[0] = 0x90;
I2C_Buf[1] = 0x00;
I2C_send_bytes=Tmp_I2C_send_bytes+2;
break;
编译成功后,通过烧录器烧录到加密芯片中。用软件测试一下



测试成功了,说明加密芯片这边的程序做好了。
下面是主控芯片端的程序,以8051单片机为例
//读12字节UID,返回:90 00 UID1 UID2 UID3.....UID12
unsigned char Read_UID(unsigned char * UID)
{
uchar ret;
uchar iic_addr;
uchar len;
iic_addr = 0x00;
iic_buff[0] = 0x83;
iic_buff[1] = 0x00;
iic_buff[2] = 0x00;
iic_buff[3] = 0x0c; //一共是0x0c个字节
len = iic_buff[3];
ret = IIC_WriteWithAddr(iic_addr & 0xFE, iic_buff, 4);
if(ret)//出错
{
return 1;
}
// delay_nms(1);
ret = IIC_ReadWithAddr(iic_addr | 0x1, UID, (len+2));
if(ret)
{
return 1;
}
return 0; //读取成功
}
读取成功后,UID缓存中有一串数据:90003275170CB1890FDF16557926
9000是状态字,表示操作成功,3275170CB1890FDF16557926是ID号了。

IIC驱动看具体是什么型号单片机,如有不明,加QQ: 47583353



深圳市中巨伟业信息科技有限公司

地址:深圳市南山区蛇口太子路18号海景广场10E单元

邮编:518067

电话:0755-86636183

传真:0755-86636121

相关产品

免责声明:该信息由相关企业发布,商机B2B对此不对信息真伪提供担保。
风险防范建议:合作之前请先详细阅读本站防骗须知。商机B2B保留删除上述展示信息的权利;我们欢迎您举报不实信息,共同建立诚信网上环境。