智能卡网吧收费机设计2课件_第1页
智能卡网吧收费机设计2课件_第2页
智能卡网吧收费机设计2课件_第3页
智能卡网吧收费机设计2课件_第4页
智能卡网吧收费机设计2课件_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 智能卡网吧收费机设计(二) 逻辑加密卡接口电路与复位应答教学目标 SLE4442卡硬件接口电路设计与实现 SLE4442卡复位应答功能分析与实现 产品开发智能卡网吧收费机开发任务:设计智能卡网吧收费机卡型:SLE4442智能卡网吧收费机功能分析 1、判断卡的合法性 2、上网计时收费产品开发之第二步:接口电路与复位功能的实现智能卡网吧收费机功能模块:MCU(AT89S51)IC卡读写接口电路(SLE4442逻辑加密卡)显示串行通信接口电路PC机稳压电源RSTI/OCLK接口电路设计SLE4442引脚分配C1:Vcc(Supply Voltage)C2: RST(Reset)C3:CLK(Ser

2、ial Clock)C4: (NC)C5:GNDC6:I/O(Bidirectional serial data ,open drain) C7: (NC)C8: (NC)SLE4442卡接口电路SLE4442卡复位功能的实现如何为网吧卡提供稳定可靠的复位信号,启动网吧卡工作?按国际标准ISO/IEC7816的同步传送协议为SLE4442卡提供同步复位信号复位和复位响应时序(Reset and Answer-to-Reset)复位和复位响应(Reset and Answer-to-Reset):SLE4442上电后,读写器首先应给出复位(Reset)命令并等待接收来自卡的复位响应ATR(Ans

3、wer-To-Reset复位:当RST为高时,送第一个时钟脉冲(脉冲0)使地址计数器清0。复位响应:当RST线从高状态(H状态)置到低状态(L状态)时,第一个数据位(主存储器字节0的LSB)的内容被送到I/O上。若连续输入32个时钟脉冲(脉冲132),主存储器中的前4个字节(4 * 8位= 32位)地址单元中的内容被读出等待命令:在第 33个时钟脉冲(脉冲32)的下降沿,IO线被置成高阻状态(状态Z)而关闭等待接收命令/* sle4442 Reset */ void sle4442_reset(void) uchar i=0;CLK=0; / init resetRST=0;IO=0;dela

4、y_12us(); / tPOR RST=1; /reset pulsedelay_12us();CLK=1; /clock pulse0delay_12us();CLK=0;delay_12us();RST=0;delay_12us();如何读出ATR?for(i=0;i=1; / 右移,低位在前,D7=0SLECLK=1;if (IO) rbyte|=0 x80; / 若IO=1, D7=1否则D7=0 delay_us(4);SLECLK=0;delay_us(4);return(rbyte); / 返回从4442卡读入的1B数据请根据ATR时序将Reset程序改为ATR程序/* MCU

5、从4442卡读入一个字节*/char sle4442_si(void) / read a byteuchar rdata=0,j=0;IO=1; / 拉高数据总线准备读入for(j=0;j1;/右移,低位在前,D7=0CLK=1;delay_us(2);if(IO=1)rdata=rdata+128;/若IO=1,D7=1否则D7=0delay_us(2);CLK=0;delay_us(6);return(rdata); / 返回从4442卡读入的1B数据请根据ATR时序将Reset程序改为ATR程序/* sle4442 ATR */uchar atr4; /全局变量 void sle4442

6、_reset(void) uchar i;CLK=0; / init resetRST=0;IO=0;delay_us(12); / tPOR RST=1; /reset pulsedelay_us(12);CLK=1;delay_us(12);CLK=0;delay_us(12);RST=0;delay_us(12);for(i=0;i4;i+)atri=sle4442_si();/读入4B ATRCLK=1;/additional pulsedelay_us(4);CLK=0;delay_us(4);IO=1;/升高数据总线,进入准备状态实训 接触式逻辑加密卡复位应答第一阶段:编程与调试1

7、、编写SLE4442卡复位应答子程序ATR,将SLE4442卡复位应答读入到数组atr中。2、根据实训设备接触式IC卡接口电路图设置51单片机引脚分配,编写并编译SLE4442卡控制主程序(复位应答功能)。3、在调用ATR后设置断点,打开DATA窗口,运行程序,查看数组atr数据并记录在报告上。实训 接触式逻辑加密卡复位应答第二阶段:现象与判断1、ATR正确: atr=0 xA2,0 x13,0 x80,0 x91(SLE4442卡复位应答码,即主存储器前4个字节)2、 ATR错误:现象一:atr数据不变现象二:atr数据为全0现象三: atr数据与ATR码部分相符现象四:程序死循环,不能运行

8、到断点处实训 接触式逻辑加密卡复位应答第三阶段:纠错排障(1)现象一: atr数据不变判断:RST不成功、ATR信号未能送至IO脚、ATR数据未能传送到单片机片内RAM可能的故障原因:1)单片机引脚分配与实际硬件电路不符2)RST程序段错误,未能产生正确的RST信号3)RST或CLK端电平不满足TTL电平要求。4)读入ATR后传送ATR到atr的程序段出错根据电路图检查引脚分配对照RST时序检查RST程序段用万用表测试RST、CLK电平,检查是否屏蔽外加时钟检查指针i初值实训 接触式逻辑加密卡复位应答第三阶段:纠错排障(2)现象二: atr数据为全0判断:RST成功但读入ATR数据时未能拉高I

9、O可能的故障原因:1)IO线未外接上拉电阻2)读ATR数据前未将IO线置高运行调试语句置位IO,用万用表检测IO线是否被拉高检查读入ATR循环前是否置位IO实训 接触式逻辑加密卡复位应答第三阶段:纠错排障(3)现象三: atr数据与ATR码部分相符判断:RST成功但读入数据函数char sle4442_si(void)错误可能的故障原因:1)char sle4442_so(void) 函数延时时间太短2)传送ATR时未修改数组指针跟踪进入char sle4442_si(void) 函数,单步运行,若能正常读入ATR则表明需加延时时间打开watch窗口,在读ATR循环前设置断点运行检查循环指针i实训 接触式逻辑加密卡复位应答第三阶段:纠错排障(4)现象四:程序死循环,不能运行到断点处判断:程序中的循

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论