AT88SC0104C读写程序
来源:互联网 发布:Linux用wine玩英雄联盟 编辑:程序博客网 时间:2024/04/26 09:01
AT88SC0104开发包(AT88SC0104C读写程序)C语言
本程序适用于读写AT88SC0104C系列器件。直接调用相应的读写函数即可完成对器件的操作。
注意:
●本程序仅向已签定NDA的用户提供。
●在将AT88SC0104C焊装到电路板之前,必须先对其进行配置并在本程序的GC_TABLE/PASSWORD_TABLE填好Gc Password。
●配置器件可使用本公司提供的参考配置文件和AT88SC0104C系列读写编程器。
一般说明
1.1 程序执行时间
适用晶振频率范围(对51系列单片机):10 MHz~40MHz。不同晶振频率下,完成“认证校密码选区并读出和解密16字节”所用的时间如下表所示。
晶振频率(MHz)
12
24
36
40
执行时间(ms)
268
142
100
92
1.2 使用工作单元
片内RAM:3AH字节
工作寄存器:A、B、R0~R7(8字节)、DPTR
堆栈深度:09H字节
1. 访问AT88SC0104C的基本流程
在下面的流程中,每个步骤对应一个子程序。
只读:认证=>校验读密码=>选择用户区=>读出用户区密文数据=>解密出用户区明文数据
只写:认证=>校验写密码=>选择用户区=>写数据到用户区
读写交替:认证=>校验写密码=>选择用户区=>读出用户区密文数据=>解密出用户区明文数据=>写数据到用户区
注意:
● 解密出明文可分成多次完成或一次完成,一次完成的执行时间最少,多次完成有利于进一步提高数据的安全性。
● 分步解密或分步写时,应保持p值和本程序所用的2AH个单元的内容不变。
3.子程序调用
p:工作单元的起始地址(STU)
3.1认证
程序名:AUTHENTICATION();
入口条件:
工作单元
内容
备注
STU+1
套数序号
于程序中“GC_TABLE”标号处顺序安排(0~3套)密钥和密码;bit5-bit4设置Gc套数序号,bit3-bit0设置Password套数序号
认证后,释放p+2A到p+39单元
3.2校验密码
程序名:verify_write_password();verify_read_password();
入口条件:
工作单元
内容
备注
STU+1
套数序号
于程序中“GC_TABLE”标号处顺序安排(0~3套)密钥和密码;bit5-bit4设置Gc套数序号,bit3-bit0设置Password套数序号
3.3选择用户区
程序名:set_user_zone();
入口条件:
工作单元
内容
备注
STU
用户分区号
选择用户区
3.4读用户区数据
程序名:read_user_zone();
入口条件:
工作单元
内容
备注
STU+2
读用户区的起始地址
STU+3
读用户区的结束地址
STU+4
读出的密文存放地址
3.5解密出明文
程序名:decrypto_data(解密密文字节数)
入口条件:
工作单元
内容
备注
STU+5
解出的明文存放地址
3.6写数据到用户区
程序名:write_user_zone();
入口条件:
工作单元
内容
备注
STU+7
写用户区的起始地址
STU+8
写用户区的结束地址
STU+9
写明文入口地址
如分步解密或数据分步写时中间嵌入其它程序,应保持p值与本程序所用的2AH个单元不变;
如读出的密文未解完,不得改变密文值,也不得进行写操作
密文和明文不能存放在 地址值为p到p+29H之间;
- AT88SC0104C读写程序
- AT88SC0104C加密原理
- AT88SC0104C加密原理
- AT88SC0104C工作原理
- AT88SC0104C加密芯片的工作原理
- VB-读写注册表 程序
- CS5550读写程序
- java图片读写程序
- 文件读写小程序
- IC 卡读写程序
- uart1 读写程序
- EXE 程序读写配置文件
- NorFlash的读写程序
- c++ 读写文件程序
- java 串口读写程序
- 串口读写程序
- io流读写程序
- C++ 文本读写程序
- return alert from function
- 操作系统双语阅读 - Schedulers调度器
- Windows Azure 社区新闻综述(#74 版)
- ANTLR语法层的选项及动作 - ANTLR
- 加速Web开发的9款知名HTML5框架
- AT88SC0104C读写程序
- DriverStudio 和 WDF驱动 通过GUID获取设备句柄的差别
- 比较两个类型为String的字符串
- 加密芯片的功能和基本原理
- Oracle数据库备份与恢复的常用方法
- 【Android UI】使用RelativeLayout与TableLayout实现登录界面
- 汉诺塔--char4
- NGUI 动态改变Label字体
- Galaxy Tab3 10.1如何开启被隐藏的开发者选项?